• 멀티 프로세서 시스템에 symmetric multiprocessing
  • SMP 는 동일한 프로세서 여러 개가 단일 주소 공간을 가진 공유 메모리에 연결되 같은 운영체제에서 동작하는 구조
  • SMP구조에 포함된 프로세서는 시스템 버스를 통해 상호 연결된 네트워크로 엮임
  • SMP 구조에서는 모든 프로세서 끼리 통신을 돕기위해 모든 프로세서에 전용 캐시를 따로 가짐
    • 시스템 버스 트래픽 억제
    • 지연 시간 줄임
  • 스레드에 적합. 애초에 스레드 자체가 공유 메모리 염두해도고 만들어졌기 때문
  • 단점
    • 공통 시스템 버스 병목 발생해 프로세서 늘리는데 제한
  • 장점
    • 사용자에게 여러 프로세서가 투명하게 공유
    • 각 프로세서에 프로세스 배정과 프로세서끼리의 동기화는 운영체제 담당
  • 단점
    • 이 구조에서는 프로세서 늘어남에 따라 공통으로 쓰이는 시스템 버스에서 병목 발생
    • 여러 프로세서가 메모리 공유하지만 L1 캐시를 따로 가진 구조 탓에 캐시 일관성(cache coherence) 유지하다가 시스템 버스의 병목이 더 심각해짐

멀티 프로세서 시스템의 캐시 일관성문제는 1980년대 MESI 프로토콜이 개발되며 해결. MESI 는 모든 캐시 상태를 추적하는 방법, 모든 프로세서 관점에서 데이터 일관적으로 유지하여 충돌에 대한 우려없이 프로세서가 서로 협력할 수 있게 됨. 오늘날 MESI는 필수 불가결