Recency Based Prefetching (RP) là một kỹ thuật nhằm cải thiện hiệu suất của Translation Lookaside Buffer (TLB) trong các bộ xử lý.
Nguyên tắc hoạt động:
RP dựa trên nguyên lý cục bộ: "các trang bộ nhớ được truy cập gần đây có khả năng sẽ được truy cập lại trong tương lai gần".
Cách thức triển khai:
RP sử dụng một ngăn xếp Least Recently Used (LRU) để theo dõi các mục bảng trang.
Khi một mục TLB bị loại bỏ do lỗi, nó được đẩy lên đầu ngăn xếp LRU.
Mỗi mục trong ngăn xếp duy trì hai con trỏ:
Con trỏ tiếp theo: trỏ đến mục bị loại bỏ trước đó trong ngăn xếp.
Con trỏ kế trước: trỏ đến mục đã loại bỏ mục này. (Các con trỏ này được lưu trữ trong bảng trang, làm tăng kích thước của nó.)
Khi xảy ra trật TLB, cơ chế nạp trước sẽ truy xuất các mục bảng trang tương ứng với con trỏ tiếp theo và con trỏ kế trước từ mục bị loại bỏ. Các mục này sau đó được tải vào bộ đệm prefetch, dự đoán việc sử dụng tiềm năng của chúng trong tương lai gần.
Lợi ích và đánh đổi:
RP tránh lưu trữ thông tin dự đoán bổ sung trên chip bằng cách dựa vào bảng trang.
Tuy nhiên, phương pháp này đi kèm với chi phí là kích thước bảng trang lớn hơn do các con trỏ bổ sung được lưu trữ cho mỗi mục.