메모리 계층(Memory Hierarchy)

이강용·2024년 7월 21일
0

CS

목록 보기
85/109
post-thumbnail

메모리 계층(Memory Hierarchy)이란?

  • 성능과 용량의 균형을 맞추기 위해 다양한 종류의 메모리를 단계적으로 배열한 구조를 의미

  1. 레지스터(Register)
    • CPU 내부에 있는 매우 빠른 메모리, CPU가 직접 접근할 수 있어 가장 빠른 속도를 자랑함(예 : CPU의 명령어 레지스터, 주소 레지스터)
  2. 캐시(Cache)
    • CPU와 주기억장치 사이에 위치한 고속 메모리, 자주 사용되는 데이터를 저장하여 CPU가 더 빠르게 데이터를 읽고 쓸 수 있도록 도움
    • 레지스터보다는 크지만 주기억장치보다 작고 빠름(예 : CPU 내부의 L1,L2 캐시, 메인보드의 L3 캐시)
  3. 주기억장치(Main Memory, RAM)
    • 현재 실행 중인 프로그램과 데이터를 저장하는 휘발성 메모리, 시스템의 주된 작업 공간
    • 캐시보다 크고 상대적으로 느리지만, 여전히 빠른 접근 속도를 가짐, 전원이 꺼지면 데이터가 사라짐 (예 : DDR4, DDR5 RAM)
  4. 보조기억장치(Secondary Storage)
    • 데이터를 영구적으로 저장하는 장치, 용량이 크고 비휘발성
    • 주기억장치보다 훨씬 크고 느리지만 데이터를 영구적으로 보존
    • 예 : 하드 디스크 드라이브(HDD), 솔리드 스테이트 드라이브(SSD), CD, DVD

계층이 존재하는 이유

  1. 속도
  • 상위 계층 메모리 : 레지스터와 캐시는 매우 빠른 속도로 동작, 이는 CPU가 필요한 데이터를 빠르게 접근하고 처리할 수 있게 함
  • 하위 계층 메모리 : 주기억장치와 보조기억장치는 상대적으로 느림, 하지만 큰 용량을 제공할 수 있음
    • 속도가 빠른 메모리는 작고 비쌈, 이를 보완하기 위해 덜 자주 접근하는 데이터를 느린 메모리에 저장함으로써 전체 시스템의 효율을 높일 수 있음
  1. 비용
  • 상위 계층 메모리 : 레지스터와 캐시는 매우 고가, 이는 고속 성능을 제공하기 위해 정교한 기술이 필요하기 때문
  • 하위 계층 메모리 : 주기억장치와 보조기억장치는 저렴, 대량의 데이터를 저장할 수 있는 경제적인 방법을 제공
    • 시스템 전체의 비용을 줄이기 위해 고속 메모리는 소량만 사용하고 대량 데이터 저장은 저렴한 메모리로 처리하는 것이 효율적
  1. 용량
  • 상위 계층 메모리 : 용량이 매우 작음, 이는 주로 매우 빠른 접근 속도를 유지하기 위함
  • 하위 계층 메모리 : 용량이 큼, 이는 많은 데이터를 저장하고 데이터 손실 없이 보존할 수 있음
    • 데이터 접근 빈도에 따라 작은 용량의 빠른 메모리와 큰 용량의 느린 메모리를 적절히 배치함으로써 용량과 성능의 균형을 맞춤
  1. 자원의 효율성
  • 상위 계층 메모리 : 제한된 자원(빠르고 고가의 메모리)을 가장 효과적으로 사용하기 위해 자주 접근하는 데이터를 저장
  • 하위 계층 메모리 : 덜 자주 접근하는 데이터는 비용 효율적인 대용량 메모리에 저장
    • 모든 데이터를 가장 빠른 메모리에 저장하면 비용이 과도하게 증가함, 따라서 자원의 효율성을 극대화하기 위해 계층 구조를 활용
  1. 접근 빈도
  • 상위 계층 메모리 : 자주 접근되는 데이터와 명령어는 빠른 메모리에 저장, 이는 CPU의 성능을 최적화함
  • 하위 계층 메모리 : 덜 자주 접근되는 데이터는 느린 메모리에 저장, 이는 비용 절감을 도모
    • 자주 사용되는 데이터를 고속 메모리에 저장함으로써 전체 시스템의 응답 시간을 줄이고 성능을 향상시킬 수 있음
profile
HW + SW = 1

0개의 댓글