메모리 계층 구조
논블로킹 캐시(non-blocking cache, 미스를 처리하는 중에도 다른 접근을 받아들이는 캐시)의 주된 이점은 무엇입니까?
- A캐시 미스의 횟수 자체를 블로킹 방식보다 줄일 수 있다
- B미스한 데이터를 주기억장치에서 빠르게 읽을 수 있게 된다
- C여러 미스의 대기 시간을 겹치고, 그동안에도 히트를 처리할 수 있다
정답과 해설 보기
정답: C. 여러 미스의 대기 시간을 겹치고, 그동안에도 히트를 처리할 수 있다
블로킹 캐시에서는 하나의 미스 처리가 끝날 때까지 뒤따르는 접근이 모두 기다리게 됩니다. 논블로킹 캐시는 미스 정보를 기록하는 전용 레지스터(MSHR)를 가지고 있어, 처리 중에도 히트하는 접근에 응답하거나 다른 미스를 동시에 주기억장치에 요청할 수 있습니다. 이를 통해 대기 시간을 겹쳐 숨길 수 있지만, 미스의 횟수 자체는 줄지 않으며 한 번의 미스로 주기억장치에서 읽는 시간도 변하지 않습니다. 아웃 오브 오더(out-of-order) 실행과 조합하여 효과를 발휘합니다.
- A. 미스 횟수는 변하지 않으며, 대기 시간을 겹쳐 숨기는 것이 효과입니다.
- B. 주기억장치에서 읽는 시간 자체는 변하지 않습니다.
- C. 올바릅니다. 미스의 대기 시간을 겹치고, 그동안에도 히트를 처리할 수 있습니다.