Khi nào bộ nhớ đệm của CPU được đẩy trở lại bộ nhớ chính?

Feb 23, 2025
Phần cứng

Nếu bạn mới bắt đầu tìm hiểu cách hoạt động của CPU đa lõi, bộ nhớ đệm, đồng tiền bộ nhớ đệm và bộ nhớ, thì thoạt đầu có vẻ hơi khó hiểu. Với suy nghĩ đó, bài đăng Hỏi và Đáp của SuperUser hôm nay có câu trả lời cho câu hỏi tò mò của độc giả.

Phiên Hỏi & Đáp hôm nay đến với chúng tôi với sự hỗ trợ của SuperUser — một phần của Stack Exchange, một nhóm các trang web Hỏi & Đáp do cộng đồng điều hành.

Câu hỏi

Trình đọc SuperUser CarmeloS muốn biết khi nào bộ nhớ đệm của CPU được xóa trở lại bộ nhớ chính:

Nếu tôi có một CPU có hai lõi và mỗi lõi có bộ đệm L1 riêng, thì có khả năng Core1 và Core2 đều lưu vào cùng một phần bộ nhớ cùng một lúc không? Nếu có thể, giá trị của bộ nhớ chính sẽ là bao nhiêu nếu cả Core1 và Core2 đều đã chỉnh sửa giá trị của chúng trong bộ nhớ cache?

Khi nào bộ nhớ đệm của CPU được xóa trở lại bộ nhớ chính?

Câu trả lời

Các cộng tác viên của SuperUser là David Schwartz, sleske và Kimberly W có câu trả lời cho chúng tôi. Đầu tiên, David Schwartz:

Nếu tôi có một CPU có hai lõi và mỗi lõi có bộ đệm L1 riêng, thì có khả năng Core1 và Core2 đều lưu vào cùng một phần bộ nhớ cùng một lúc không?

Vâng, hiệu suất sẽ rất khủng khiếp nếu không phải như vậy. Hãy xem xét hai luồng chạy cùng một mã. Bạn muốn mã đó trong cả hai bộ đệm L1.

Nếu có thể, giá trị của bộ nhớ chính sẽ là bao nhiêu nếu cả Core1 và Core2 đều đã chỉnh sửa giá trị của chúng trong bộ nhớ cache?

Giá trị cũ sẽ nằm trong bộ nhớ chính, điều này không thành vấn đề vì không lõi nào sẽ đọc nó. Trước khi loại bỏ một giá trị đã sửa đổi khỏi bộ đệm, nó phải được ghi vào bộ nhớ. Thông thường, một số biến thể của Giao thức MESI Được sử dụng. Trong cách triển khai truyền thống của MESI, nếu một giá trị được sửa đổi trong một bộ đệm, thì nó không thể có ở bất kỳ bộ đệm nào khác ở cùng mức đó.

Tiếp theo là câu trả lời từ sleske:

Đúng vậy, việc có hai bộ nhớ đệm cache cùng một vùng nhớ có thể xảy ra và thực sự là một vấn đề xảy ra rất nhiều trong thực tế. Có nhiều giải pháp khác nhau, ví dụ:

  • Hai bộ nhớ đệm có thể giao tiếp để đảm bảo chúng không bất đồng
  • Bạn có thể có một số loại giám sát viên giám sát tất cả các bộ nhớ đệm và cập nhật chúng cho phù hợp
  • Mỗi bộ xử lý sẽ giám sát các vùng bộ nhớ mà nó đã lưu trong bộ nhớ cache và khi phát hiện ghi, nó sẽ loại bỏ bộ nhớ đệm (hiện không hợp lệ) của nó

Vấn đề được gọi là đồng tiền bộ nhớ đệm và Bài viết trên Wikipedia về chủ đề có một cái nhìn tổng quan tốt đẹp về vấn đề và các giải pháp khả thi.

Và câu trả lời cuối cùng của chúng tôi từ Kimberly W:

Để trả lời câu hỏi trong tiêu đề bài đăng của bạn, điều đó phụ thuộc vào giao thức bộ nhớ đệm là gì. Nếu đó là ghi lại, bộ nhớ cache sẽ chỉ được chuyển trở lại bộ nhớ chính khi bộ điều khiển bộ nhớ cache không có lựa chọn nào khác ngoài việc đặt một khối bộ nhớ cache mới vào không gian đã bị chiếm dụng. Khối đã chiếm không gian trước đó sẽ bị xóa và giá trị của nó được ghi trở lại bộ nhớ chính.

Giao thức khác là ghi qua. Trong trường hợp đó, bất cứ lúc nào khối bộ nhớ cache được ghi ở mức n , khối tương ứng trên cấp độ n + 1 đã cập nhật. Nó tương tự như khái niệm điền vào một biểu mẫu với giấy than bên dưới; bất cứ điều gì bạn viết ở trên đều được sao chép vào trang tính bên dưới. Điều này chậm hơn vì rõ ràng là nó liên quan đến nhiều thao tác ghi hơn, nhưng các giá trị giữa các bộ đệm là nhất quán hơn. Trong lược đồ ghi lại, chỉ bộ đệm cấp cao nhất mới có giá trị cập nhật nhất cho một khối bộ nhớ cụ thể.


Có điều gì đó để thêm vào lời giải thích? Tắt âm thanh trong các ý kiến. Bạn muốn đọc thêm câu trả lời từ những người dùng Stack Exchange am hiểu công nghệ khác? Kiểm tra toàn bộ chuỗi thảo luận tại đây .

Tín dụng hình ảnh: Lemsipmatt (Flickr)

When Is A CPU’s Cache Flushed Back To Main Memory?

What Is The Difference Between Memory And SSD Cache In A PC Or NAS?

5 Cache و Virtual Memory

How To Clear Cache On Mac OS - Clear Memory Cache On Mac In 1-Click

Buffer Cache

Caching In: Understand, Measure, And Use Your CPU Cache More Effectively

How To Clear RAM Cache Memory | Fix RAM Cached Memory Too High Windows 10

NetApp WAFL, NVRAM And The System Memory Cache (new Version)


Phần cứng - Các bài báo phổ biến nhất

Cách chơi trò chơi cổ điển trên TV NVIDIA SHIELD của bạn với trình giả lập

Phần cứng Dec 8, 2024

Không phải là HTPC, TV NVIDIA SHIELD là chiếc hộp linh hoạt nhất mà bạn có thể đặt trong bảng điều khiển giải trí của mình. Nó hỗ trợ ph..


Cách kiểm tra mức pin của Apple Pencil

Phần cứng Jan 25, 2025

Apple Pencil của bạn không có bất kỳ loại ánh sáng nào cho biết mức pin của nó. Nếu muốn kiểm tra lượng pin còn lại, bạn cần sử dụng một ..


Cách nhận chất lượng hình ảnh tốt nhất từ ​​HDTV của bạn

Phần cứng Nov 9, 2024

Có vẻ như bạn không có được hình ảnh đẹp nhất từ ​​chiếc TV mới sáng bóng của mình? Bạn muốn đảm bảo rằng bạn đang xem phim đúng n..


Cách chụp những bức ảnh đẹp về thú cưng của bạn

Phần cứng Jan 3, 2025

NỘI DUNG KHÔNG ĐƯỢC CHỨNG MINH "Không bao giờ làm việc với trẻ em hoặc động vật" là một câu châm ngôn có lý do. Thật không may, hầu hết ch..


QLED Giải thích: Chính xác thì TV “Chấm lượng tử” là gì?

Phần cứng Jan 24, 2025

Các nhà sản xuất TV đang trong cuộc chạy đua liên tục để bổ sung các “tính năng” mới để họ có thể thuyết phục bạn mua TV mới. Tiếp the..


5 cách truyền trực tuyến trò chơi từ một máy tính khác (hoặc đám mây)

Phần cứng Jul 11, 2025

Các giải pháp phát trực tuyến trò chơi đã phát triển từ các dịch vụ "trò chơi trên đám mây" mà chúng tôi đã kiểm tra năm ngoái ...


Tại sao Modem quay số lại ồn ào?

Phần cứng Oct 16, 2025

NỘI DUNG KHÔNG ĐƯỢC CHỨNG MINH Trong suốt những năm 1990, phần lớn người dùng internet bắt đầu phiên làm việc của họ với sự bắt tay ồn ào c�..


Tìm hiểu Nguồn cung cấp điện Wall Wart [Electronics]

Phần cứng Aug 20, 2025

Mụn cóc Tường, Bạn có thể sử dụng chúng hàng ngày mà không cần đắn đo suy nghĩ. Chính xác thì điều gì đang xảy ra bên trong những bộ sạc tườ..


Thể loại