Published 07/2022
MP4 | Video: h264, 1280×720 | Audio: AAC, 44.1 KHz, 2 Ch
Genre: eLearning | Language: English + srt | Duration: 35 lectures (2h 32m) | Size: 1.1 GB
Master CPU cache organization
What you’ll learn
Why do our computers have so many different types of memories?
What is a cache?
Why is a cache needed?
What data should be kept in a cache?
What are temporal and spatial locality?
How do caches exploit temporal locality?
How do caches exploit spatial locality?
What is the classic LRU cache replacement policy?
What are cache blocks? Why use them?
What is associativity in caches?
What is a fully associative cache?
What is a direct mapped cache?
What is a set associative cache?
How to determine whether a particular memory address will hit or miss in the cache?
How the address breakdown works for accessing data stored in fully associative, direct mapped, and set-associative caches?
How to modify data in caches?
What is a write-through cache?
What is a write-back cache?
How dirty bits are used in a write-back cache?
What other cache eviction algorithms, besides LRU, can be used?
How are caches organized in a hierarchy in modern computers?
Requirements
No previous knowledge about caches or memory hierarchy needed. Everything you need to know about the topics will be covered.
Description
In this course, we will begin with an introduction to the memory hierarchy in modern computers. We will see why the computers employ several different types of memories, such as CPU registers, caches, main memory, hard disk, etc. After the introduction, the rest of the course focuses on caches. We will see that cache is a small but extremely fast piece of memory that sits between the fast CPU and slower RAM (main memory). The course is divided into the following nine sections: Introduction, Temporal locality, Performance implications of caches, Spatial locality, Writes in caches, Content addressable memory, Direct mapped caches, Set associative caches, Cache eviction, and hierarchical caches. The sections have several bite-sized lectures, practice problems, detailed animation examples illustrating concepts, and quizzes. Detailed solutions to the practice problems are included in the video and on the last page of the worksheets. Keys and explanations for the quiz questions are also provided. Specifically, the course will answer the following questions in detail.
1. Why do our computers have so many different types of memories?
2. What is a cache?
3. Why is a cache needed?
4. What data should be kept in a cache?
5. What are temporal and spatial locality?
6. How do caches exploit temporal locality?
7. How do caches exploit spatial locality?
8. What is the classic LRU cache replacement policy?
9. What are cache blocks? Why use them?
10. What is associativity in caches?
11. What is a fully associative cache?
12. What is a direct mapped cache?
13. What is a set associative cache?
14. How to determine whether a particular memory address will hit or miss in the cache?
15. How the address breakdown works for accessing data stored in fully associative, direct mapped, and set-associative caches?
16. How to modify data in caches?
17. What is a write-through cache?
18. What is a write-back cache?
19. How dirty are bits used in a write-back cache?
20. Can other cache eviction algorithms besides LRU be used?
21. How are caches organized in a hierarchy in modern computers?
Who this course is for
Anyone interested in learning about caches in modern computers could benefit from this course.
Computer science undergraduate students taking a computer organization or computer architecture course could benefit from the course.
You may (optionally) wish to print some of the material
Password/解压密码www.tbtos.com