캐시 일관성(Cache Coherence) 프로토콜이란?

 

- 캐시 메모리와 메인 메모리간 데이터 정합성 유지 기법

 

캐시 일관성(Cache Coherence) 유지 기법

공유 캐시 사용

- 모든 처리 장치가 하나의 캐시 장치를 공유

공유변수의 캐시 저장 금지

- 프로세서 간 공유가 가능한 변수는 캐시메모리에 저장하지 않음으로서 일관성을 깨뜨리지 않음

Snoopy 프로토콜(버스 감시 프로토콜)

- 주소 버스를 항상 감시하여 캐시 상의 메모리에 대한 접근이 있는지를 감시하는 구조, 버스 대역폭이 충분하다면 좋은 성능

  • Write Invalidate(MESI 프로토콜): Write Back 방식에서 사용, M(Modified), E(Exclusive), S(Shared), I(Invalid)의 4개 상태로 캐시 블록의 상태를 관리
  • Write Update: Write Through 방식에서 사용, I(Invalid), V(Valid) 두가지 플래그로 캐시 블록 상태 관리
  • Write Broadcast

디렉토리 프로토콜

- 캐시 블록의 공유 상태, 노드 등을 기록하는 저장 공간인 디렉터리를 이용하여 관리, 메인 메모리에 캐시 블록에 대한 디렉토리 형태 자료구조를 유지, 대규모 프로세서 환경에서 주로 사용(64개 이상)

  • Full Map Directory
  • Limited Directory
  • Chained Directory

 

다른 글 더 보기

캐시 쓰기 정책(Cache Write policy)
캐시 사상 기법(Cache Mapping)
캐시 지역성(Locality)
캐시 메모리 관련 메커니즘 한눈에 보기

이 포스트는 IT토픽의 주요 내용과 핵심 키워드를 간략히 설명하는 것이 목적으로, 디테일한 내용에 대해서는 깊이 다루지 않습니다.

728x90
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기