What is Cache line?

The unit in which data moves between a cache and the level below, also called a cache block. Many CPUs use 64 bytes, and the low address bits give the position (offset) within the line.

Field: Memory Hierarchy

Cache line in the explanations

Questions that mention Cache line (9)

  1. What is the typical size of a cache line (cache block) in many current CPUs?
  2. In the loop above, an int is 4 bytes, a cache line is 64 bytes, and the array is not cached and starts on a line boundary. Without prefetching, what is the miss rate for reading the array?
  3. What is the role of the valid bit attached to each cache line?
  4. In the MESI protocol, what does it mean when a cache line is in the Modified (M) state?
  5. Which correctly describes a DRAM burst transfer?
  6. In a multicore CPU, which mechanism keeps data consistent when the caches of several cores hold data for the same address?
  7. Scanning the 2D C array a[i][j] with j in the inner loop, as above, tends to be faster than with i in the inner loop. Why?
  8. Which correctly lists the four states of the MESI cache coherence protocol?
  9. Which describes false sharing in a multithreaded program?

Related terms

False sharing Spatial locality Prefetching MESI protocol TLB (translation lookaside buffer) Average memory access time Capacity miss Compulsory miss Conflict miss Direct-mapped cache

Back to the glossary