프로세서는 빨라졌지만, 이제 메모리의 속도가 중요해졌다
Locality Principle
Temporal Locality (시간적 구역성)
최근에 사용된 데이터는 곧바로 사용될 가능성이 높다.
Spatial Locality (공간적 구역성)
최근에 사용된 데이터 공간 근처는 곧바로 사용될 가능성이 높다.
Working Set
프로그램이 실행될 때, 전체 메모리를 사용하는 것이 아닌 특정 공간만을 잡아 사용한다는 원리
따라서 메모리를 재사용이 많은 쪽으로 사용하는 것이 효과적
Memory Hierarchy
메모리 접근 속도에 따라 데이터를 어떻게 저장하는지를 나눔
- 매우 자주 사용되는 데이터는 접근 속도가 매우 빠른 (CPU와 가까운, ex. Cache, SRAM) 메모리에 저장
- 자주 사용되는 데이터는 접근 속도가 비교적 빠른 (ex. DRAM) 메모리에 저장
- 잘 사용되지 않는 데이터는 접근 속도가 느린 (ex. HDD / SSD) 메모리에 저장
Speed: Register < Cache <<< Main Memory(DRAM) <<< Disk Memory
Size: Disk Memory < Main Memory < Cache < Register
SSD
대용량 NAND Flash Memory
HDD에 비해 많은 장점을 가지고 있다.
- 데이터 I/O 속도, 전력 소모, 충격, 발열, 수명, 소음 개선
Hybrid SSD
- SLC가 TLC에 비해 속도가 빠르므로, Buffer와 같은 역할을 하여
SLC 3Gb + TLC 250Gb와 같이 구성하여 Hybrid 구조를 가짐.
NVMe vs. SATA
- SATA
전송 속도가 비교적 느림
열이 많이 발생하지 않음
- NVMe
전송 속도가 굉장히 빠름
열이 많이 발생하여, 방열판을 장착해야 함
HDD
HDD 저장 방식
- LMR: 수평 자기 기록 방식 ... [<-][<-][->][->] ...
- PMR: 수직 자기 기록 방식(주로 사용) ... [↓][↑][↑][↓] ...