Tin tức và phân tích của tất cả các thiết bị di động

Bộ nhớ đệm CPU là gì?

CPU hiện đại cực kỳ nhanh; có thể vượt quá đáng kể RAM của sistema. Sự mất cân bằng tốc độ này giữa CPU và bộ nhớ sẽ khiến bộ xử lý thường xuyên ở chế độ chờ, đợi dữ liệu được gửi đến nó để nó có thể tiếp tục thực hiện một quá trình. Để ngăn điều này xảy ra bằng cách cho phép CPU tiếp tục chạy ngày càng nhanh hơn, bộ đệm CPU được sử dụng.

Làm cách nào để bộ nhớ đệm CPU tăng tốc CPU?

Bộ nhớ đệm CPU được thiết kế để có tốc độ nhanh nhất có thể và do đó bộ nhớ đệm dữ liệu được yêu cầu bởi CPU. Tốc độ bộ nhớ cache của CPU được tối ưu hóa theo ba cách: độ trễ, băng thông và khoảng cách. Bộ nhớ đệm CPU hoạt động với độ trễ rất thấp, giảm thiểu thời gian trả về kết quả. Ví dụ: Intel i9-9900k có độ trễ bộ nhớ cache là 0.8, 2.4 và 11.1 nano giây cho bộ nhớ cache L1, L2 và L3 tương ứng. Để so sánh, độ trễ của RAM tốc độ cao hiện đại là 14 nano giây.

Về băng thông, bộ nhớ cache của CPU mang lại hiệu suất tăng đáng kể so với RAM và bộ nhớ truyền thống. Tốc độ đọc bộ nhớ đệm L1 và L3 có thể đạt tối đa 2,3 TB / s và 370 GB / s, tương ứng, trong khi băng thông của RAM thường vào khoảng 40 GB / s. Băng thông cao hơn này có nghĩa là bộ nhớ cache của CPU có thể truyền dữ liệu đến CPU nhanh hơn nhiều so với RAM.

Để đạt được tốc độ nhanh nhất có thể, bộ nhớ đệm CPU được tích hợp hiệu quả vào silicon CPU. Điều này giảm thiểu khoảng cách mà bất kỳ tín hiệu điện nào phải truyền đi, do đó giữ độ trễ thấp nhất có thể. Ví dụ, khi bộ nhớ đệm L3 lần đầu tiên được chuyển từ bo mạch chủ sang chip CPU, bộ xử lý của thời điểm đó (Pentium 4 EE) đã có thể đạt được cải thiện hiệu suất 10-20%.

Kiến trúc bộ nhớ đệm CPU

Các CPU hiện đại thường sử dụng ba cấp bộ nhớ đệm CPU có nhãn L1-3và bộ nhớ đệm có số lượng thấp hơn gần với lõi CPU hơn, nhanh hơn và đắt hơn. Mỗi lõi CPU trong CPU đa lõi có bộ nhớ đệm L1 riêng. Nó thường được chia thành hai phần, L1I và L1D. L1I được sử dụng để lưu vào bộ đệm các lệnh cho CPU, trong khi L1D được dùng để lưu vào bộ đệm dữ liệu mà các lệnh đó sẽ được thực thi.

Thông thường, mỗi lõi CPU cũng có bộ nhớ đệm L2 riêng trong một CPU hiện đại. Bộ nhớ đệm L2 lớn hơn và chậm hơn bộ đệm L1 và chủ yếu được sử dụng để lưu trữ dữ liệu không phù hợp với bộ đệm L2. Bằng cách có bộ nhớ đệm L2 chuyên dụng cho mỗi lõi, việc tranh chấp bộ nhớ cache sẽ tránh được. Tranh chấp bộ nhớ cache là nơi các lõi khác nhau chiến đấu để giành không gian bộ nhớ cache cho khối lượng công việc của họ, điều này có thể dẫn đến việc xóa dữ liệu bộ nhớ cache quan trọng.

Bộ nhớ đệm L3 thường được chia sẻ giữa tất cả các lõi CPU của bộ xử lý. Một lần nữa, bộ nhớ cache L3 chậm hơn bộ nhớ cache L2 nhưng nó rẻ hơn và lớn hơn. Bằng cách cung cấp một bộ nhớ cache được chia sẻ, bạn có thể giảm lượng dữ liệu sẽ được sao chép ở các mức bộ nhớ cache thấp hơn trên mỗi lõi.

Bộ nhớ đệm CPU được sử dụng như thế nào?

Tất cả các cấp của bộ nhớ đệm CPU được sử dụng để tăng tốc hiệu suất bộ xử lý bằng cách lưu dữ liệu vào bộ nhớ đệm từ RAM. Khi CPU yêu cầu dữ liệu, đầu tiên nó thường tìm kiếm thông qua các mức bộ nhớ cache của nó để cố gắng lấy dữ liệu nhanh nhất có thể. Nếu dữ liệu được tìm thấy trong một lần truy cập bộ nhớ cache, CPU có thể tiếp tục xử lý nó. Nếu dữ liệu không có trong bộ nhớ cache, trong cái gọi là bộ nhớ cache bị thiếu, CPU phải kiểm tra RAM và sau đó là ổ cứng nếu dữ liệu không có ở đó. Các cấp độ nhanh nhất luôn được kiểm tra đầu tiên để đạt hiệu suất tối đa.

Để giúp CPU lấy dữ liệu cần thiết vào bộ nhớ đệm khi nó cần, bộ đệm cố gắng đoán trước dữ liệu mà CPU có thể cần sau này. Ví dụ: nếu CPU đã yêu cầu một số dữ liệu cho hình ảnh mà nó đang hiển thị, bộ nhớ đệm có thể cố gắng lưu vào bộ đệm nhiều dữ liệu hình ảnh hơn để có thể gửi đến CPU nhanh nhất có thể.