메모리 계층 구조

캐시를 완전 연관 방식으로 해도 줄지 않는 미스로 올바른 것은 무엇입니까?

  1. A두 데이터가 같은 세트를 두고 다투며 서로 쫓아내어 생기는 미스
  2. B사용하는 데이터의 양이 캐시의 용량보다 커서 생기는 미스
  3. C직접 사상 배치의 쏠림으로 생기는 미스
정답과 해설 보기

정답: B. 사용하는 데이터의 양이 캐시의 용량보다 커서 생기는 미스

완전 연관 방식에서는 어떤 데이터든 어디에나 둘 수 있으므로 같은 세트를 두고 다투는 충돌 미스는 사라집니다. 그러나 프로그램이 반복해서 사용하는 데이터의 양(작업 집합)이 캐시 전체보다 크면 어디에 두더라도 다 들어가지 못해 교체가 일어납니다. 이것이 용량 미스이며, 캐시를 키우거나 루프 블로킹(loop blocking) 등으로 재사용 범위를 작게 해야 합니다. 배치의 쏠림이나 세트 다툼은 모두 충돌 미스의 원인입니다.

  • A. 세트 다툼은 충돌 미스이며, 완전 연관으로 하면 사라집니다.
  • B. 올바릅니다. 작업 집합이 넘치는 용량 미스는 남습니다.
  • C. 배치의 쏠림으로 인한 미스도 충돌 미스의 일종입니다.
이 분야 연습하기 분야로 돌아가기

메모리 계층 구조의 다른 문제

  1. 캐시의 라인 크기를 키웠을 때의 영향으로 올바른 것은 무엇입니까?
  2. 라이트 스루(write-through) 캐시에서 쓰기 버퍼(write buffer)를 두는 주된 목적은 무엇입니까?
  3. 라이트 백(write-back) 캐시에서 각 라인에 붙이는 더티 비트(dirty bit)의 역할로 올바른 것은 무엇입니까?
  4. 쓰기에서 캐시 미스가 났을 때 해당 라인을 읽어 오지 않고 하위 계층에 직접 쓰는 방식은 무엇입니까?
  5. 용량이 2라인인 완전 연관 방식의 LRU 교체 캐시가 처음에 비어 있을 때, 블록을 A, B, A, C, B, A 순서로 참조하면 미스는 몇 번 일어납니까?

이 분야의 비교