메모리 계층 구조

TLB의 엔트리가 64개이고 페이지 크기가 4 KB일 때, TLB 미스 없이 접근할 수 있는 메모리 범위(TLB 리치, TLB reach)는 얼마입니까?

  1. A64 KB
  2. B256 KB
  3. C4 MB
정답과 해설 보기

정답: B. 256 KB

TLB의 1엔트리는 1페이지 분량의 변환을 담고 있으므로, TLB 리치 = 엔트리 수 × 페이지 크기 = 64 × 4 KB = 256 KB입니다. 프로그램이 이보다 넓은 범위를 자주 사용하면 TLB 미스가 늘어납니다. 2 MB의 대형 페이지(huge page)를 사용하면 같은 64엔트리로 64 × 2 MB = 128 MB까지 넓힐 수 있습니다. 64 KB는 페이지 크기를 1 KB로 잘못 본 값이고, 4 MB는 페이지의 수와 크기를 혼동한 값입니다.

  • A. 64 KB는 페이지를 1 KB로 잘못 본 값입니다.
  • B. 올바릅니다. 64엔트리 × 4 KB = 256 KB입니다.
  • C. 4 MB는 계산을 잘못한 값입니다.
이 분야 연습하기 분야로 돌아가기

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

  1. 대형 페이지(huge page)를 사용하는 것의 주된 장점과 단점의 조합으로 올바른 것은 무엇입니까?
  2. 2차원 배열의 한 행 크기가 4096바이트(2의 거듭제곱)일 때, 열 방향으로 요소를 따라가면 캐시 용량에 여유가 있어도 미스가 많아질 수 있습니다. 그 대책으로 효과가 있는 것은 무엇입니까?
  3. 주기억장치 DRAM에 접근하는 데 걸리는 시간은 L1 캐시의 히트 시간의 대략 몇 배입니까? (일반적인 PC나 서버의 CPU의 경우)
  4. 캐시의 각 라인에 붙는 유효 비트(valid bit)의 역할로 올바른 것은 무엇입니까?
  5. 소용량 완전 연관 버퍼에 L1 캐시에서 쫓겨난 라인을 일시적으로 보관하는 희생 캐시(victim cache)의 주된 효과는 무엇입니까?

이 분야의 비교