Minh họa trực quan các con số độ trễ mà lập trình viên nên biết
- Tham chiếu bộ nhớ đệm L1: 1 nano giây
- Dự đoán nhánh thất bại: 3 nano giây
- Tham chiếu bộ nhớ đệm L2: 4 nano giây
- Khóa/mở khóa mutex: 17 nano giây
- Truyền 1KB dữ liệu qua mạng 1 Gbps: 44 nano giây
- Tham chiếu bộ nhớ chính: 100 nano giây
- Nén 1KB dữ liệu bằng Zippy: 2 micro giây
- Đọc tuần tự 1MB từ bộ nhớ: 3 micro giây
- Đọc ngẫu nhiên 4K từ SSD: 16 micro giây
- Đọc tuần tự 1MB từ SSD: 49 micro giây
- Thời gian khứ hồi trong cùng một trung tâm dữ liệu: 500 micro giây
- Đọc tuần tự 1MB từ đĩa: 825 micro giây
- Tìm kiếm trên đĩa: 2 mili giây
- Gửi một gói tin từ California đến Hà Lan rồi quay lại: 150 mili giây
Ý kiến của GN⁺
- Dữ liệu này có thể là tài liệu tham khảo quan trọng khi lập trình viên thiết kế hệ thống hoặc tối ưu hiệu năng. Nếu biết mỗi phép toán hay tác vụ mất bao lâu, có thể xác định phần nào gây ra nút thắt cổ chai và cải thiện nó.
- Ví dụ, khi so sánh thời gian truy cập bộ nhớ và độ trễ mạng, có thể thấy việc giảm thiểu các lời gọi qua mạng và xử lý dữ liệu trong bộ nhớ sẽ nhanh hơn nhiều. Đây có thể là một yếu tố quan trọng khi thiết kế hệ thống phân tán.
- Những độ trễ này có thể thay đổi theo sự phát triển của phần cứng và công nghệ, vì vậy việc cập nhật thông tin mới nhất là rất quan trọng. Ví dụ, nhờ sự phát triển của SSD mà thời gian đọc đĩa đã được rút ngắn đáng kể.
- Khi đưa vào một công nghệ mới hoặc mã nguồn mở, cần cân nhắc các độ trễ này để dự đoán hiệu năng của hệ thống và quyết định công nghệ nào sẽ hiệu quả nhất trong môi trường thực tế. Ví dụ, dùng giải pháp caching trong bộ nhớ có thể giảm độ trễ mạng, nhưng sẽ cần cân nhắc thêm về tính nhất quán của cache và đồng bộ dữ liệu.
4 bình luận
https://colin-scott.github.io/personal_website/research/…
Chỗ này nhìn dễ hơn nhiều.
UI/UX thật sự không hợp gu của tôi chút nào...
Đúng là vậy thật ghê,,
Ý kiến trên Hacker News
Tóm tắt bình luận thứ nhất:
latency-containervà in ra độ trễ của từng phần tử.Tóm tắt bình luận thứ hai:
Tóm tắt bình luận thứ ba:
Tóm tắt bình luận thứ tư:
Tóm tắt bình luận thứ năm:
Tóm tắt bình luận thứ sáu:
Tóm tắt bình luận thứ bảy:
Tóm tắt bình luận thứ tám:
Tóm tắt bình luận thứ chín: