나만의 컴퓨터 만들기
이제 부품 하나하나가 무슨 일을 하는지 안다. 그렇다면 직접 한 대를 맞춰 보자. 이 장은 읽는 장이 아니라 노는 장이다. 예산 안에서 부품을 고르고, 여러 작업을 돌려 보고, 어디가 느린지 찾아 고친다. 결과마다 관련된 장으로 가는 길을 붙여 두었으니, 막히면 돌아가서 다시 보고 오자.
- CPU, 메모리, 저장장치, GPU가 각각 어떤 작업의 속도를 좌우하는지 실험으로 확인한다.
- 가장 느린 부품(병목)이 전체 속도를 정한다는 것을 예산 미션으로 체험한다.
- 전원 버튼을 누른 뒤 화면이 뜨기까지 컴퓨터 안에서 일어나는 일을 순서대로 설명한다.
- “내 컴퓨터가 느리다”는 증상에서 원인과 업그레이드할 부품을 추리한다.
부품 고르기: 주방 꾸리기
컴퓨터를 맞추는 일은 식당 주방을 꾸리는 일과 닮았다. 요리사(CPU)의 실력, 조리대(RAM)의 넓이, 창고(저장장치)까지의 거리, 보조 요리사 군단(GPU)의 규모를 정해야 한다. 그리고 언제나 예산이 있다. 한 곳에 돈을 몰아 쓰면 다른 곳이 발목을 잡는다.
부품을 골라 조립하기
작업 돌려 보기: 병목을 찾아라
같은 컴퓨터라도 어떤 일을 시키느냐에 따라 발목을 잡는 부품이 다르다. 게임은 GPU를, 코드 빌드는 CPU 코어 수를, 브라우저 탭 여러 개는 RAM을, 큰 파일 복사는 저장장치를 탄다. 아래는 위에서 조립한 컴퓨터로 일곱 가지 작업을 돌린 결과다. 부품을 바꿀 때마다 즉시 다시 계산된다.
내 컴퓨터로 일곱 가지 작업
요리사가 아무리 빨라도 조리대가 좁으면 재료를 내려놓을 곳이 없어 창고를 들락거린다(스와핑, 9장). 보조 요리사가 천 명이어도 요리사가 주문을 늦게 나눠 주면 다들 기다린다(게임의 CPU 병목). 좋은 조립은 비싼 부품을 사는 것이 아니라 하려는 일에 맞춰 균형을 맞추는 것이다.
고급 GPU(24GB)에 보급형 4코어 CPU를 짝지었다. 게임 fps는 어떻게 될까?
게임 한 장면을 만들려면 CPU가 먼저 “무엇을 그릴지”를 계산해 GPU에 넘겨야 한다(12장). 예측한 뒤 위에서 직접 조합해 보자.
전원 버튼을 누르면: 부팅
조립을 마치고 전원 버튼을 눌렀다. 화면에 로그인 창이 뜨기까지 몇 초 동안, 컴퓨터 안에서는 이 책의 거의 모든 장이 차례로 등장한다. 전원이 안정되면 CPU는 메인보드의 작은 ROM 칩에 들어 있는 펌웨어(firmware, UEFI)의 첫 명령부터 실행한다. 펌웨어는 부품을 점검하고(POST), 저장장치에서 부트로더(boot loader)를 찾아 넘긴다. 부트로더는 운영체제의 커널을 메모리에 올리고, 커널이 드라이버와 서비스를 차례로 깨운다. 이 전체 과정을 부팅(booting)이라 한다.
내 컴퓨터의 부팅 과정
내 컴퓨터는 왜 느릴까: 증상으로 원인 찾기
새 부품을 사기 전에, 지금 컴퓨터가 어디서 막히는지부터 보자. 윈도우의 작업 관리자나 맥의 활동 모니터를 열면 CPU, 메모리, 디스크, GPU가 각각 얼마나 바쁜지 보인다. 느릴 때 100% 가까이 찬 칸이 병목이다.
오래된 노트북을 되살리는 가장 효과적인 방법이 대개 “HDD를 SSD로, RAM을 한 단계 더”인 이유도 여기에 있다. 대부분의 일상 작업은 CPU 계산보다 기다림(저장장치)과 자리 부족(메모리) 때문에 느려진다. 반대로 게임이나 영상 작업처럼 계산이 많은 일은 CPU와 GPU의 균형을 봐야 한다.
핵심 정리
- 작업마다 속도를 좌우하는 부품이 다르다. 게임은 GPU와 CPU, 빌드·인코딩은 CPU 코어, 여러 앱은 RAM, 파일과 부팅은 저장장치다.
- 전체 속도는 가장 느린 부품, 즉 병목이 정한다. 좋은 조립은 하려는 일에 맞춘 균형이다.
- RAM이 모자라면 저장장치로 옮겨 쓰는 스와핑이 일어나 갑자기 수십 배 느려진다.
- 부팅은 펌웨어 → POST → 부트로더 → 커널 → 드라이버 → 로그인 순서로 진행된다.
- 업그레이드 전에 작업 관리자로 어느 칸이 100%인지 확인하자.
확인 퀴즈
RAM 8 GB 노트북에서 브라우저 탭 30개를 열자 갑자기 매우 느려졌다. 가장 그럴듯한 원인은?
대용량 동영상 파일을 다른 폴더로 복사하는 시간을 줄이려면 무엇을 바꿔야 할까?
전원 버튼을 누른 뒤 CPU가 가장 먼저 실행하는 것은?
코드 빌드가 느려 작업 관리자를 봤더니 CPU 사용률이 100%, 메모리와 디스크는 여유가 있다. 효과가 가장 클 업그레이드는?
8B AI 모델(8비트, 약 8 GB)을 빠르게 돌리고 싶다. 가장 중요한 조건은?