Tìm hiểu cách làm việc của bộ nhớ Cache (Phần cuối)
Số trang: 12
Loại file: pdf
Dung lượng: 459.15 KB
Lượt xem: 12
Lượt tải: 0
Xem trước 2 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Tìm hiểu cách làm việc của bộ nhớ Cache (Phần cuối)Tập Cache liên kết n dòngTrong cấu hình này, Cache nhớ được chia thành một vài khối (các tập), mỗi khối gồm có “n” dòng.Một tập 4 dòng Cache liên kết thì Cache nhớ sẽ có 2.048 khối, mỗi khối gồm có 4 dòng (8.192 dòng / 4), với tập 2 dòng Cache liên kết thì Cache nhớ sẽ có 4.096 khối, mỗi khối gồm 2 dòng. Chúng ta sẽ tiếp tục ví dụ với Cache nhớ L2 512 KB, Cache nhớ này sẽ chia thành 8.192 dòng, mỗi dòng...
Nội dung trích xuất từ tài liệu:
Tìm hiểu cách làm việc của bộ nhớ Cache (Phần cuối)Tìm hiểu cách làm việc của bộ nhớ Cache (Phần cuối)Tập Cache liên kết n dòngTrong cấu hình này, Cache nhớ được chia thành một vài khối (các tập), mỗikhối gồm có “n” dòng.Một tập 4 dòng Cache liên kết thì Cache nhớ sẽ có 2.048 khối, mỗi khốigồm có 4 dòng (8.192 dòng / 4), với tập 2 dòng Cache liên kết thì Cache nhớsẽ có 4.096 khối, mỗi khối gồm 2 dòng. Chúng ta sẽ tiếp tục ví dụ với Cachenhớ L2 512 KB, Cache nhớ này sẽ chia thành 8.192 dòng, mỗi dòng 64-byte.Phụ thuộc vào CPU mà số khối có thể khác nhau.Hình 7: Cache nhớ L2 512 KB khi được cấu hình thành một tập 4 dòng liênkếtKhi bộ nhớ RAM được chia thành các khối bằng nhau trong Cache nhớ. Vẫnví dụ tập 4 dòng 512 KB liên kết, RAM chính sẽ được chia thành 2.048 khốinằm trong Cache nhớ. Mỗi khối nhớ lại được liên kết đến một tập các dòngbên trong Cache, giống như trong Cache đã được bản đồ hóa trực tiếp. Với1GB, bộ nhớ sẽ được chia thành 2.048 khối, mỗi khối 512KB, bạn có thểxem trong hình 8.Hình 8: Cache nhớ L2 512 KB được cấu hình thành một tập 4 dòng liên kếtNhư những gì bạn có thể thấy được, việc bản đồ hóa là hoàn toàn giống vớinhững gì xảy ra với Cache được bản đồ hóa trực tiếp, sự khác biệt ở đây làmỗi một khối nhớ hiện có nhiều dòng trên cùng một Cache. Mỗi một dònglại giữ nhiều nội dung từ các địa chỉ bên trong các khối đã được bản đồ hóa.Trên tập 4 dòng liên kết, mỗi tập trên Cache nhớ có thể giữ đến 4 dòng từcùng một khối nhớ.Với phương pháp này, các vấn đề gặp phải đối với phương pháp bản đồ hóatrực tiếp không còn nữa (cả các vấn đề xung đột do vòng lặp mà chúng ta đãmô tả trên). Ở đây, tập Cache liên kết dễ dàng thực thi hơn so với Cache liênkết toàn bộ, vì logic điều khiển của nó đơn giản hơn. Vì điều đó mà phươngpháp này được sử dụng nhiều ngày nay, mặc dù nó cung cấp hiệu suất thấphơn so với cách liên kết toàn bộ.Rõ ràng chúng ta vẫn có một số lượng hạn chế các khe bên trong mỗi mộttập Cache nhớ đối với mỗi một khối nhớ - 4 trên cấu hình 4 dòng. Sau khi 4khe này được sử dụng, bộ điều khiển Cache sẽ phải giải phóng một trong sốchúng để lưu chỉ lệnh kế tiếp đã được nạp từ cùng khối nhớ.Khi chúng ta tăng số dòng thì Cache nhớ tập liên kết (ví dụ với cấu hình 4hoặc 8) sẽ có nhiều khe có sẵn hơn trên mỗi tập, tuy nhiên nếu giữ nguyênsố lượng của Cache nhớ thì kích thước của mỗi khối nhớ cũng sẽ tăng. Tiếptục ví dụ của chúng ta, việc chuyển từ 4 dòng sang 8 dòng sẽ làm cho bộ nhớ1GB RAM có thể được chia thành 1.024 khối 1MB. Vì vậy cách làm này sẽtăng số khe có sẵn trên mỗi một tập nhưng mỗi tập lúc này phải chịu tráchnhiệm với một khối nhớ lớn hơn.Có rất nhiều thảo luận trừu tượng liên quan đến việc cân bằng hoàn hảo giữasố các tập và kích thước khối nhớ và tất cả đều chưa có câu trả lời thích đáng- Intel và AMD cũng sử dụng các cấu hình khác nhau, bạn có thể xem trongbảng bên dưới.Vậy điều gì sẽ xảy ra nếu chúng ta có một Cache nhớ lớn? Vẫn giữ ví dụ ởtrên, nếu chúng ta tăng Cache nhớ L2 từ 512 KB thành 1MB (chỉ có mộtcách thực hiện là thay thế một CPU mới), thì điều xảy ra là chúng ta sẽ có16.384 dòng 64 byte trong Cache nhớ, điều đó cho chúng ta có đến 4.096 tậpvà mỗi tập có 4 dòng. Bộ nhớ 1MB RAM của chúng ta sẽ được chia thành4.096 khối 256MB. Vì vậy về cơ bản những gì xảy ra là kích thước của mỗikhối nhớ giảm hơn và tăng số lần dữ liệu được yêu cầu nằm bên trong Cachenhớ - hay nói cách khác, tăng kích thước Cache sẽ làm giảm được tốc độmiss đối với Cache.Tuy vậy, việc tăng Cache nhớ không phải là điều bảo đảm cho việc tăng hiệusuất. Tăng kích thước của bộ nhớ Cache chỉ cho phép có nhiều hơn dữ liệuđược lưu trữ nhưng một câu hỏi đặt ra là liệu CPU sẽ sử dụng dữ liệu mởrộng đó hay không. Ví dụ, cho một CPU một lõi có Cache L2 4MB. NếuCPU sử dụng nghiêng về 1MB là chủ yếu còn không quá nặng về phía 3MBkia (nghĩa là hầu hết các chỉ lệnh đã truy cập sẽ chiếm 1MB và trên 3 MBkia CPU đã chứa các chỉ lệnh không được gọi đến nhiều), lúc này CPU sẽ cóhiệu suất giống với một CPU chỉ có 2 MB hoặc thậm chí Cache nhớ L21MB.Cấu hình Cache nhớ trên các CPU hiện nayDưới đây chúng tôi trình bày cho các bạn một bản tham chiếu gồm có cácchi tiết kỹ thuật của Cache nhớ đối với các CPU hiện đang có trên thịtrường. Cache dữ CPU Cache chỉ lệnh L1 L2 Cache L2 liệu L1 Athlon 64 64 KB 64 KB 512 KB hoặc 1 MB Tập liên kết 2 dòng Tập liên kết 2 dòng Tập liên kết 16 Mỗi dòng 64 byte dòng Mỗi dòng 64 Đường dữ liệu 128 byte Mỗi dòng – bit cho L2 64byte Đư ...
Nội dung trích xuất từ tài liệu:
Tìm hiểu cách làm việc của bộ nhớ Cache (Phần cuối)Tìm hiểu cách làm việc của bộ nhớ Cache (Phần cuối)Tập Cache liên kết n dòngTrong cấu hình này, Cache nhớ được chia thành một vài khối (các tập), mỗikhối gồm có “n” dòng.Một tập 4 dòng Cache liên kết thì Cache nhớ sẽ có 2.048 khối, mỗi khốigồm có 4 dòng (8.192 dòng / 4), với tập 2 dòng Cache liên kết thì Cache nhớsẽ có 4.096 khối, mỗi khối gồm 2 dòng. Chúng ta sẽ tiếp tục ví dụ với Cachenhớ L2 512 KB, Cache nhớ này sẽ chia thành 8.192 dòng, mỗi dòng 64-byte.Phụ thuộc vào CPU mà số khối có thể khác nhau.Hình 7: Cache nhớ L2 512 KB khi được cấu hình thành một tập 4 dòng liênkếtKhi bộ nhớ RAM được chia thành các khối bằng nhau trong Cache nhớ. Vẫnví dụ tập 4 dòng 512 KB liên kết, RAM chính sẽ được chia thành 2.048 khốinằm trong Cache nhớ. Mỗi khối nhớ lại được liên kết đến một tập các dòngbên trong Cache, giống như trong Cache đã được bản đồ hóa trực tiếp. Với1GB, bộ nhớ sẽ được chia thành 2.048 khối, mỗi khối 512KB, bạn có thểxem trong hình 8.Hình 8: Cache nhớ L2 512 KB được cấu hình thành một tập 4 dòng liên kếtNhư những gì bạn có thể thấy được, việc bản đồ hóa là hoàn toàn giống vớinhững gì xảy ra với Cache được bản đồ hóa trực tiếp, sự khác biệt ở đây làmỗi một khối nhớ hiện có nhiều dòng trên cùng một Cache. Mỗi một dònglại giữ nhiều nội dung từ các địa chỉ bên trong các khối đã được bản đồ hóa.Trên tập 4 dòng liên kết, mỗi tập trên Cache nhớ có thể giữ đến 4 dòng từcùng một khối nhớ.Với phương pháp này, các vấn đề gặp phải đối với phương pháp bản đồ hóatrực tiếp không còn nữa (cả các vấn đề xung đột do vòng lặp mà chúng ta đãmô tả trên). Ở đây, tập Cache liên kết dễ dàng thực thi hơn so với Cache liênkết toàn bộ, vì logic điều khiển của nó đơn giản hơn. Vì điều đó mà phươngpháp này được sử dụng nhiều ngày nay, mặc dù nó cung cấp hiệu suất thấphơn so với cách liên kết toàn bộ.Rõ ràng chúng ta vẫn có một số lượng hạn chế các khe bên trong mỗi mộttập Cache nhớ đối với mỗi một khối nhớ - 4 trên cấu hình 4 dòng. Sau khi 4khe này được sử dụng, bộ điều khiển Cache sẽ phải giải phóng một trong sốchúng để lưu chỉ lệnh kế tiếp đã được nạp từ cùng khối nhớ.Khi chúng ta tăng số dòng thì Cache nhớ tập liên kết (ví dụ với cấu hình 4hoặc 8) sẽ có nhiều khe có sẵn hơn trên mỗi tập, tuy nhiên nếu giữ nguyênsố lượng của Cache nhớ thì kích thước của mỗi khối nhớ cũng sẽ tăng. Tiếptục ví dụ của chúng ta, việc chuyển từ 4 dòng sang 8 dòng sẽ làm cho bộ nhớ1GB RAM có thể được chia thành 1.024 khối 1MB. Vì vậy cách làm này sẽtăng số khe có sẵn trên mỗi một tập nhưng mỗi tập lúc này phải chịu tráchnhiệm với một khối nhớ lớn hơn.Có rất nhiều thảo luận trừu tượng liên quan đến việc cân bằng hoàn hảo giữasố các tập và kích thước khối nhớ và tất cả đều chưa có câu trả lời thích đáng- Intel và AMD cũng sử dụng các cấu hình khác nhau, bạn có thể xem trongbảng bên dưới.Vậy điều gì sẽ xảy ra nếu chúng ta có một Cache nhớ lớn? Vẫn giữ ví dụ ởtrên, nếu chúng ta tăng Cache nhớ L2 từ 512 KB thành 1MB (chỉ có mộtcách thực hiện là thay thế một CPU mới), thì điều xảy ra là chúng ta sẽ có16.384 dòng 64 byte trong Cache nhớ, điều đó cho chúng ta có đến 4.096 tậpvà mỗi tập có 4 dòng. Bộ nhớ 1MB RAM của chúng ta sẽ được chia thành4.096 khối 256MB. Vì vậy về cơ bản những gì xảy ra là kích thước của mỗikhối nhớ giảm hơn và tăng số lần dữ liệu được yêu cầu nằm bên trong Cachenhớ - hay nói cách khác, tăng kích thước Cache sẽ làm giảm được tốc độmiss đối với Cache.Tuy vậy, việc tăng Cache nhớ không phải là điều bảo đảm cho việc tăng hiệusuất. Tăng kích thước của bộ nhớ Cache chỉ cho phép có nhiều hơn dữ liệuđược lưu trữ nhưng một câu hỏi đặt ra là liệu CPU sẽ sử dụng dữ liệu mởrộng đó hay không. Ví dụ, cho một CPU một lõi có Cache L2 4MB. NếuCPU sử dụng nghiêng về 1MB là chủ yếu còn không quá nặng về phía 3MBkia (nghĩa là hầu hết các chỉ lệnh đã truy cập sẽ chiếm 1MB và trên 3 MBkia CPU đã chứa các chỉ lệnh không được gọi đến nhiều), lúc này CPU sẽ cóhiệu suất giống với một CPU chỉ có 2 MB hoặc thậm chí Cache nhớ L21MB.Cấu hình Cache nhớ trên các CPU hiện nayDưới đây chúng tôi trình bày cho các bạn một bản tham chiếu gồm có cácchi tiết kỹ thuật của Cache nhớ đối với các CPU hiện đang có trên thịtrường. Cache dữ CPU Cache chỉ lệnh L1 L2 Cache L2 liệu L1 Athlon 64 64 KB 64 KB 512 KB hoặc 1 MB Tập liên kết 2 dòng Tập liên kết 2 dòng Tập liên kết 16 Mỗi dòng 64 byte dòng Mỗi dòng 64 Đường dữ liệu 128 byte Mỗi dòng – bit cho L2 64byte Đư ...
Tìm kiếm theo từ khóa liên quan:
thủ thuật máy tính công nghệ thông tin tin học quản trị mạng computer networkGợi ý tài liệu liên quan:
-
52 trang 430 1 0
-
24 trang 355 1 0
-
Top 10 mẹo 'đơn giản nhưng hữu ích' trong nhiếp ảnh
11 trang 314 0 0 -
Làm việc với Read Only Domain Controllers
20 trang 303 0 0 -
74 trang 299 0 0
-
96 trang 293 0 0
-
Báo cáo thực tập thực tế: Nghiên cứu và xây dựng website bằng Wordpress
24 trang 289 0 0 -
Đồ án tốt nghiệp: Xây dựng ứng dụng di động android quản lý khách hàng cắt tóc
81 trang 281 0 0 -
EBay - Internet và câu chuyện thần kỳ: Phần 1
143 trang 275 0 0 -
Tài liệu dạy học môn Tin học trong chương trình đào tạo trình độ cao đẳng
348 trang 269 1 0