serversim
학습시뮬레이터템플릿가격
…
…
메뉴 열기
학습↗시뮬레이터↗템플릿↗가격↗
내 Documents문서
전체 목차/6장/6.640 / 40

6.6 · 입출력과 장치

컴퓨터 각 부분의 지연시간은 얼마나 다를까?

100ns와 10ms의 차이를 사람의 시간으로 바꾸면 얼마나 클까요?

숫자가 작아 보여도 나노초와 밀리초 사이에는 100만 배의 차이가 있습니다.

먼저 생활 비유

1나노초를 1초로 늘리기

메모리 접근이 1분 남짓이라면 SSD는 며칠, 느린 디스크 탐색은 여러 주가 됩니다.

컴퓨터 예제로 바꾸기

요청 한 번의 기다림

L1 ≈ 1ns
RAM ≈ 100ns
SSD ≈ 100µs
network ≈ ms

CPU는 외부 응답 하나를 기다리는 동안 엄청난 수의 명령을 실행할 수 있습니다.

직접 움직여 보기1 / 5

지금 일어나는 변화

L1 캐시

CPU 코어 바로 옆이라 몇 사이클 안에 접근합니다.

CPU · 커널 · 장치사용자 코드 · CPU운영 체제 · 커널장치 · 네트워크 · 디스크L1 캐시단계 1RAM단계 2SSD단계 3같은 센터 네트워크단계 4먼 네트워크단계 5한 번의 접근현재: L1 캐시

이 그림에서 기억할 한 문장

성능 설계의 핵심은 CPU를 조금 빠르게 하는 것보다 느린 계층으로 내려가는 횟수를 줄이는 데 있는 경우가 많습니다.

현재 상태

이동하는 것
한 번의 접근
현재 위치
L1 캐시
다음 위치
RAM

30초 확인 문제

캐시를 사용하는 주된 이유는?

처음 보는 용어 두 개

지연시간
요청을 시작해 결과를 받기까지 걸리는 시간
처리량
일정 시간 동안 완료할 수 있는 작업의 양

이 절을 다 읽었다면

성능 설계의 핵심은 CPU를 조금 빠르게 하는 것보다 느린 계층으로 내려가는 횟수를 줄이는 데 있는 경우가 많습니다.

← 이전 절

6.5 mmap은 어떻게 파일을 메모리처럼 보이게 할까?

전체 과정 완료

40개 절 목차로 돌아가기