Cache Memory

캐시 메모리(Cache Memory)는 컴퓨터 아키텍처에서 중요한 역할을 하는 CPU와 주 메모리(RAM) 사이에 위치한 소규모의 고속 메모리이다.
주요 목적은 자주 사용되는 데이터와 명령어를 CPU 가까이에 저장하여 접근 시간을 줄이고 전체 시스템 성능을 향상시키는 것이다.

특징

  1. 속도: RAM보다 10-100배 빠르며, 응답 시간은 몇 나노초에 불과하다.
  2. 용량: RAM보다 작지만 더 빠른 SRAM을 사용한다.
  3. 비용: 단위 용량당 RAM보다 비싸지만 성능이 월등히 높다.
  4. 위치: CPU 칩 내부 또는 매우 가까운 곳에 위치한다.

작동 원리

  1. 지역성 원리: 최근 접근한 데이터나 명령어는 가까운 미래에 다시 사용될 가능성이 높다는 원리를 활용한다.
  2. 캐시 히트와 미스: CPU가 데이터를 요청할 때 캐시에서 찾으면 ‘캐시 히트’, 찾지 못하면 ‘캐시 미스’가 발생한다.
  3. 캐시 정책: 어떤 데이터를 캐시에 유지할지 결정하는 정책으로, LRU(Least Recently Used)나 MRU(Most Recently Used) 등이 있다.

캐시 레벨

  1. L1 캐시: CPU에 가장 가까운 최소, 최고속 캐시로, 보통 명령어용(L1i)과 데이터용(L1d)으로 나뉜다.
  2. L2 캐시: L1보다 크고 느리지만 여전히 고속인 캐시이다.
  3. L3 캐시: 더 큰 용량을 제공하며, 여러 코어가 공유할 수 있다.

캐시 매핑 기법

  1. 직접 매핑: 각 메모리 블록이 특정 캐시 라인에 매핑된다.
  2. 완전 연관 매핑: 메모리 블록이 어느 캐시 라인에나 로드될 수 있다.
  3. 집합 연관 매핑: 직접과 완전 연관의 절충안으로, 메모리 블록이 특정 집합 내 어느 라인에나 로드될 수 있다.

용어 정리

용어설명

참고 및 출처