상단여백
HOME 뉴스·정책
CPU 캐시 레벨은 왜 나뉠까?




CPU 캐시는 L1 32KB, L2 256KB, L3 2MB 같은 다층으로 이뤄져 있다. 그렇다면 왜 이 용량을 모두 합친 L1 캐시는 안 될까.

쉽게 말하자면 캐시마다 역할이 있기 때문이다. 이를 전제로 깔고 생각해보면 캐시는 용량이 클수록 데이터 전송 속도가 느려지고 저장 밀도가 높아 절전 성질을 갖고 있기 때문에 필요에 따라 다른 종류의 캐시를 구분하는 게 유라하기 때문이라고 할 수 있다.

조금 비유를 해보자면 1960년대 관료 체제 성격이 강한 조직의 화이트컬러 직장인이라고 가정해보자. 필요한 자료는 모두 종이 기반 파일 케이스에 넣어서 관리하고 있다. 일은 L1 캐시 격인 자신만의 책상에서 한다. 하지만 자주 사용하거나 나중에 사용할 가능성이 높다고 생각되는 자료는 파일 케이스에 넣어서 책상 위에 올려둔다. 파일 케이스에는 다양한 자료가 포함되어 있지만 설사 자료가 종이 1장이라도 파일 케이스에서 찾아내려면 자료를 꺼내봐야 한다.

사무실에는 물론 더 큰 자료를 담아둔 캐비닛, 그러니까 L2캐시도 있다. 캐비닛에는 최근까지 썼지만 지금은 사용하지 않는 자료가 담겨 있다. 또 당신은 일을 효율적으로 처리하기 위해 책상 위 자료에서 사용하지 않는 건 캐비닛에 버리는 습관이 있다. 물론 캐비닛 자료를 다시 사용할 수 있지만 자리를 옮기려면 시간이 필요하다. 또 많은 자료 중에서 원하는 걸 찾으려면 시간이 걸린다. 책상 위 파일 케이스 자료와는 비교할 수 없을 만큼 번거롭다.

이런 이유로 캐비닛 자료를 사용할 수 있도록 하는 버스 호출에 비유할 수 있는 버스터라는 작업원이 있다. 책상 위 파일 케이스에서 자료로 사용하지 않는 건 버스터에게 전달한다. 버스터는 받은 자료를 장바구니에 넣는다. 버스터는 사무실을 돌면서 이런 요구가 있는 사람이 누구인지 확인한다. 물론 캐비닛에서 꺼낸 파일이 있는 자리를 알고 있는 것도 버스터다.





자료를 모아두는 캐비닛은 항상 문서로 가득 차있다. 버스터가 회수한 자료를 캐비닛에 다시 둘 수 없다는 걸 뜻한다. 버스터가 해야 할 일은 캐비닛 케이스에 공간을 만드는 것이다. 버스터는 캐비닛 자료를 사무실 지하에 있는 자료 보관소, L3 캐시에 비유할 수 있는 곳으로 가져갈 수 있다.

지하 자료 보관소에는 골판지 상자에 가득 찬 자료가 선반에 보관되어 있다. 버스터는 지하 자료 보관소와 사무실을 오가면서 자료를 필요에 따라 원하는 위치로 이동시킨다.

여기에서 사무실이 위치한 빌딩은 바로 CPU다. 빌딩은 입지가 좋지만 임대료도 높다. 따라서 지하 자료 보관소에도 공간에는 한계가 있다. 대량 자료를 사무실에 모두 둘 수는 없는 것. 따라서 보관할 수 없는 자료는 사무실에서 30분 가량 떨어진 교외 창고, 그러니까 메인 메모리 DRAM에 보관한다.

버스터의 역할은 지하 자료 보관소 관리까지다. 교외에 위치한 창고와의 자료 교환은 다른 창고 관리자의 몫이다. 만일 버스터가 교외 창고 자료까지 관리한다면 자료를 요청하고 찾고 받아오는 시간이 오래 걸릴 수 있기 때문이다.

다시 CPU 캐시가 왜 L1 32KB, L2 256KB, L3 2MB 식으로 나눠어져 있는지 또 이를 하나로 합치면 안 되는지 살펴보면 이는 마치 150m 폭 책상으 사용하는 것과도 같다. 만일 이런 큰 책상에서 자료를 가져오려면 50m까리 걸어가는 일이 벌어질 수 있다. 손을 뻗으면 바로 접근할 수 있는 접근성이 중요한데 여러 캐시 레벨을 한데 묶어버리면 이런 효과가 없다는 것이다. 이렇게 큰 책상이 아니라 작은 책상에서 혼자 작업하는 게 중요한 포인트인 것이다. L1캐시는 자신만 독점할 수 있는 개별 책상인 셈이다. 관련 내용은 이곳에서 확인할 수 있다.

이석원 기자  lswcap@techholic.co.kr

<저작권자 © 테크홀릭, 무단 전재 및 재배포 금지>

이석원 기자의 다른기사 보기
인기기사
추천기사
기사 댓글 0
전체보기
첫번째 댓글을 남겨주세요.
여백
여백
재미있는 테크월드 세상
여백
여백
여백
여백
여백
여백
여백
Back to Top