CSAP ch 1 컴퓨터 시스템으로의 여행 1 . 5 ~ 1 . 6
by 브이담곰
1.5 캐시가 중요하다
시스템은 정보를 한 곳에서 다른 한 곳으로 이동시키는 일에 많은 시간을 보낸다.
1. hello 프로그램의 기계어 인스트럭션들( 하드디스크 저장 ) → 로딩 시 메인 메모리로 복사
2. 프로세스가 프로그램을 실행할 때 인스트럭션들: 메인 메모리 → 프로세서로 복사
여러 복사과정들이 프로그램의 "실제 작업"을 느리게 하는 Over Head
- 시스템의 디스크 드라이브는 메인 메모리보다 1000배 더 크기가 크지만, 프로세서가 디스크에서 1워드의 데이터를 읽을 때 걸리는 시간은 메모리에서보다 천만 배 더 오래 걸릴 수 있다.
- 레지스터 파일은 수백 바이트의 정보를 저장하는 반면, 메인 메모리는 십억 개의 바이트를 저장한다.
- 그러나 프로세서는 레지스터 파일의 데이터를 읽는데 메모리보다 100배 더 빨리 읽을 수 있다.
메인 메모리를 더 빠르게 동작하는 것 보다 프로세서를 더 빨리 동작하도록 만드는 것이 더 쉽고 비용이 적게 든다.
캐시 ( 작고 빠르다!!! )
프로세서가 단기간에 필요로 할 가능성이 높은 정보를 임시로 저장할 목적으로 사용
저장 용량 | 엑세스 속도 | 구현 방식 | |
L1 | 수천 바이트 | SRAM(Static Random Access Memory) | |
L2 | 수백 킬로바이트~수백 메가 바이트 | L1 보다 5배 느림 메인 메모리보다 10배 더 빠름 |
SRAM(Static Random Access Memory) |
프로그램이 지엽적인 코드와 데이터를 엑세스하는 경향인 지역성(locality)를 활용
→ 시스템이 매우 크고 빠른 메모리 효과를 얻을 수 있다는 것.
자주 엑세스할 가능성이 높은 데이터를 캐시가 보관 하도록 설정하면 빠른 캐시를 이용해서 대부분의 메모리 작업을 수행할 수 있게 된다.
* 메모리를 이해하는 응용 프로그래머는 캐시를 활용하여 자신의 프로그램 성능을 10배이상 개선할 수 있다는 것!
1.6 저장장치들은 계층구조를 이룬다
Register File : L0
Main Memry: L4
메모리 계층 구조는 한 레벨의 저장장치가 다음 하위레벨 저장장치의 개시 역할을 한다는 것.
L1의 캐시 → L2
L2의 캐시 → L3
'KRAFTON JUNGLE > CSAPP' 카테고리의 다른 글
CSAPP ch 3 프로그램의 기계수준 표현 3.6 (0) | 2024.07.24 |
---|---|
CSAP ch 1 컴퓨터 시스템으로의 여행 1 . 4 (0) | 2024.07.08 |
CSAP ch 1 컴퓨터 시스템으로의 여행 1 . 1 ~ 1 . 3 (0) | 2024.07.06 |
블로그의 정보
농담곰담곰이의곰담농
브이담곰