메모리 계층 구조

일반적인 컴퓨터의 기억 계층에서 상위 계층(CPU에 가까운 쪽)일수록 성립하는 성질로 올바른 것은 무엇입니까?

  1. A빠르지만 용량이 작고 1비트당 가격이 비싸다
  2. B느리지만 용량이 크고 1비트당 가격이 싸다
  3. C빠르고 용량도 크며 1비트당 가격도 싸다
정답과 해설 보기

정답: A. 빠르지만 용량이 작고 1비트당 가격이 비싸다

레지스터나 L1 캐시처럼 CPU에 가까운 기억장치일수록 고속이지만, SRAM 등 면적이 큰 회로를 사용하므로 1비트당 가격이 비싸고 용량은 작아집니다. 하위 계층일수록 느린 대신 저렴하고 대용량이 되며, 주기억장치인 DRAM, 나아가 SSD 등의 스토리지로 이어집니다. 빠르고 크고 싼 기억장치가 있다면 계층이 필요 없지만 실제로는 그런 것이 없기 때문에, 지역성을 이용하여 빠르고 작은 기억장치에 필요한 데이터를 두는 계층 구조를 취하고 있습니다.

  • A. 올바릅니다. 위일수록 빠르지만 작고 1비트당 비쌉니다.
  • B. 이것은 하위 계층(CPU에서 먼 쪽)의 성질입니다.
  • C. 빠르고 크고 싼 기억장치가 없기 때문에 계층이 필요한 것입니다.
이 분야 연습하기 분야로 돌아가기

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

  1. 캐시의 성능을 평가할 때 미스율만이 아니라 평균 메모리 접근 시간으로 비교해야 하는 이유로 올바른 것은 무엇입니까?
  2. 두 프로그램을 같은 코어에서 번갈아 실행하면, 각각을 단독으로 실행하는 것보다 느려질 수 있습니다. 캐시의 관점에서 가장 적절한 설명은 무엇입니까?
  3. 시간적 지역성의 예로 가장 적절한 것은?
  4. C 언어의 2차원 배열 a[i][j]를 위와 같이 안쪽 루프를 j로 하여 순회하면, 안쪽을 i로 하는 것보다 빨라지기 쉽습니다. 그 이유는 무엇입니까?
  5. 주소가 32비트, 용량 32 KB, 라인 크기 64바이트인 직접 사상(direct-mapped) 캐시에서 태그는 몇 비트가 됩니까?

이 분야의 비교