캐시 메모리

 

- CPU의 성능은 클럭 속도와 코어의 수 외에도 캐시 메모리의 용량을 통해 알 수 있다.

 

캐시 메모리 또는 캐시 CPU 내부의 임시 저장 공간으로, CPU가 데이터를 처리할 때 자주 사용하는 데이터를 임시 보관하는 곳이다.  쉽게 말해 기억력이 좋은 인재라고 생각하면 된다.

 

캐시 메모리의 용량이 작으면 CPU에 비해 동작 속도가 훨씬 느린 주 기억 장치(RAM)나 보조 기억 장치(하드디스크, CD-ROM, SSD )로부터 직접 데이터를 불러오는 빈도가 많아진다. CPU가 해야할 일이 많아지는 것이다. 따라서 컴퓨터의 전체 처리 속도가 크게 저하된다.

 

- CPU의 캐시 메모리는 크면 클수록 성능 향상에 좋다.

 

캐시 메모리는 CPU 코어와 위치에 따라 1차 캐시 메모리, 2차 캐시 메모리, 3차 캐시 메모리 등으로 나뉜다. CPU와 가까운 곳에 위치할수록 성능 향상의 폭이 크지만 제조가 어렵고 비용이 비싸다.

  • 1차 캐시는 CPU가 가장 먼저 들여다보는 캐시 메모리이다.
  • 2차 캐시는 CPU에서 1차 캐시 다음으로 참고하는 캐시 메모리이다.
  • 3차 캐시는 CPU에서 2차 캐시 다음으로 참고하는 캐시 메모리로 코어간의 작업속도에 영햐을 준다.

과거에는 CPU1(1 Level) 캐시메모리만 있고, 2(2 Level) 3(3 Level) 캐시 메모리를 추가로 장착했는데 오늘날은 3차 캐시 메모리까지 CPU 내부에 넣는 경우가 많아졌다. 가장 큰 이유는 CPU 내부에 들어가는 코어의 수가 늘어나 코어끼리 데이터를 주고받는 코어간의 작업속도를 높이기 위해서이다.

 

 

 

CPU의 아키텍쳐

 

아키텍쳐(Architecture)란 컴퓨터 시스템의 기본 구조, 설계 방식, 제조 공정까지 포함하는 개념으로, CPU의 설계도라고 보면 된다. 클럭 속도나 코어의 수 및 캐시 메모리의 용량의 모두 같더라도 아키텍쳐가 다를 경우 전체적으로 성능에서 차이가 생긴다.

 

아래는 년도별로 아키텍쳐가 나온 순서이다.

 

년도      :   2004~5    2006~7    2008~10     2011~12     2013~14        2015

[ 인텔(Intel) ] : 넷버스트 코어 네할렘 샌디브릿지 하스웰 브로드웰

[ 암드(AMD) ] : K8 K10 불도저 파일드라이버 스팀롤러 엑스카베이터









CPU의 성능, 코어

 

- 코어 : CPU에 내장된 처리회로의 핵심 부분으로, 과거에는 CPU1코어(단일 코어)인 것이 당연했으나 요즘은 CPU마다 2개 이상의 코어를 집어넣은 멀티 코어가 등장하여 클럭의 수가 아닌 코어의 수가 CPU의 성능을 나타내기도 한다. , 코어란 말그대로 CPU의 핵심인 것이다.

 

- 멀티코어에는 듀얼 코어(2코어), 쿼드 코어(4코어), 헥사 코어(6코어), 옥타 코어(8코어)가 있다. 이렇게 코어의 수를 늘린 큰 이유는 기존의 1코어의 CPU2번 처리해야할 작업을 듀얼 코어(2코어)일 경우 단 1번에 끝낼 수 있기 때문이다. 반면에, 컴퓨터를 사용할 때 단일 코어 연산만을 지원하는 소프트웨어를 사용하거나 하나의 작업만을 처리한다면, 1코어든 2코어든 차이를 크게 느끼지 못하고, 1코어가 오히려 더 빠를 수도 있다. 쉽게 말해, 다중 코어 연산에 최적화된 소프트웨어(작업량 )를 구동할 때 이 차이를 느낄 수 있을 것이다.

 

- 다중 코어 연산을 필요로하는 소프트웨어로는 그래픽 편집 프로그램(일러스트레이터), 동영상 인코딩 프로그램, 파일 압축 프로그램 등이 있다.

 

- 멀티 코어를 설명하기 앞서, 어떤 회사에서 좋은 결과물을 도출하기 위한 핵심은 인력이다. 쉽게 말해 코어는 CPU에 훌륭한 인재들이 얼마나 소속되어있는가에 대한 이야기이다. , CPU가 일하는 것을 도와주는 인재가 2명 일 때 2코어(듀얼코어)라 하고, 4명일 때 4코어(쿼드 코어)라고 한다. 인재를 많이 고용할수록 비용이 많이 드는 것은 당연하다. 따라서 듀얼 코어보다 쿼드 코어가 가격이 비싸다. 또한 회사에서 인재가 많을수록 회사의 전력소모량이 증가하는 것처럼 쿼드 코어의 경우 전력 소모가 심하고 발열도 많이 생긴다. 이를 위해 "CPU 컨트롤러" 라는 것을 통해 발열관리 및 전력소모를 최소화한다. , 여러 개의 코어 중 어떤 코어가 작동할 것인지를 결정한다. 회사로 치면 인사부로 표현하면 될 것이다.

 

- 참고로 대부분의 사람들은 쿼드 코어를 쓸 일이 없기 때문에 듀얼 코어가 보편화되어있다.

 

- 듀얼 코어는 쿼드 코어보다 클럭이 높은데, 클럭이란 앞전에 설명했듯이 얼마나 빠르게 연산을 처리하느냐를 결정한다고 했다. 쉽게 말해 쿼드 코어는 동작이 조금 느린 인재 4명을 데리고 작업량을 나누어 결과를 처리하는 것이고, 듀얼 코어는 동작이 빠른 인재 2명을 데리고 작은 작업량을 효율적으로 처리하는 것이다.

 

- 본인이 CPU를 선택할 때, 듀얼 코어(2코어)냐 쿼드 코어(4코어)냐를 결정하는 것은 평소 컴퓨터로 처리하는 작업량이 많은지 적은지에 의해 결정된다. 기본적으로 쿼드 코어라 할지라도 작업량이 2코어로 해결할 수 있다면 속도는 듀얼 코어가 빠르다.

 

- 단, 데스크탑 PC의 경우 i5 부터 쿼드 코어인데 듀얼 코어보다 클럭이 높다.




쓰레드(Thread)

 

- 쓰레드란 데이터의 실행 흐름으로, 데이터가 지나다니는 통로라고 보면 된다. 쉽게 말해 코어가 일을 수행할 때 팔과 다리의 역할을 한다.

 

과거에는 4코어 4쓰레드처럼 1코어당 1쓰레드로 데이터를 처리했다. 코어를 회사에 있는 하나의 훌륭한 인재라고 한다면, 인재가 회사의 업무를 처리하는 방식이 한 가지인 것이다. , 1코어가 데이터를 처리할 때 하나의 길로 송신하고 수신하고 하는 것이다. 그러나 요즘은 4코어 8쓰레드처럼 1코어당 2쓰레드로 데이터를 처리한다. 즉 송신하고 수신하는 길이 다른 것이다.

 

- 1코어당 2쓰레드가 좋은 것인가? 쓰레드를 도로에 비유한다면, 1차선 도로와 2차선 도로를 생각해보자. 1차선 도로는 지나갈 때 반대편의 차가 오면 기다렸다가 다 지나가고 자신의 차량이 지나갈 수 있다. 그러나 2차선 도로는 반대편의 차가 온다 해도 자신은 가던 길을 갈 수 있다. 더 간단한 예로, 고속도로에 차선이 여러 개인 이유를 생각해보자. 온종일 수많은 차들이 지나다니는데 차선이 하나라면 오가는데 시간이 많이 걸릴 것이다. 이처럼 여러 차선으로 인해 교통 체증이 안생기니 시간이 절약되는 것이다.

 

-2코어 4쓰레드, 4코어 8쓰레드처럼 1코어당 2쓰레드란 개념은 CPU 최적화를 위해 만들어진 것으로 실제 성능이 15%정도 향상된다고 한다.






 

 

CPU

 

- Central Processing Unit의 약자로서, 중앙 처리 장치를 의미한다. CPU는 컴퓨터에서 뇌의 역할을 하며, 컴퓨터로 입력받은 명령어를 해석하고, 모든 연산을 처리한다. 이 때, 하나의 부품에 해독 장치, 연산 장치, 제어 장치 등이 집적되어 있는 형태를 마이크로프로세서(Micro-processor)라고 한다. CPU와 마이크로프로세서는 CPU는 컴퓨터의 부품을 지칭하지만 마이크로프로세서는 세탁기나 전기밥솥과 같은 제품의 제어용으로 쓰이는 경우가 있다는 점에서 의미가 구분된다.

 

 

 

CPU의 연산 속도, 클럭

 

- 컴퓨터에 있는 모든 데이터는 이진수로 처리되므로, 어떤 데이터라 할지라도 CPU는 수많은 01로 이루어진 데이터를 연산하여 다양한 결과를 도출한다. , 컴퓨터 내부에서 이동하는 데이터는 01로만 구성된 디지털 신호의 조합이다.

 

- 이러한 디지털 신호를 빠르게 처리하는 연산 속도는 CPU마다 다르다. 속도를 나타내는 대표적인 단위는 클럭(Clock)이다. 클럭이란 1초당 CPU 내부에서 몇 단계의 작업이 처리되는 지를 측정하여 주파수 단위인 헤르츠(Hz)로 나타낸 것이다. , 이 클럭 수치가 높을수록 빠른 성능의 CPU라고 볼 수 있다. 예를 들어 인텔 코어(Core) i7 4790K라는 제품의 CPU는 클럭이 4GHz 인데, 이는 1초에 약 40억개의 작업이 처리됨을 의미한다


  

 

터보부스트(Turbo boost)


 CPU에 터보부스트가 있는 이유는 짧은 순간이나마 클럭을 올려서 연산 속도를 높이기 위해서이다물론 순간적이기 때문에 계속 클럭을 올린 상태를 유지하진 못한다. 또한클럭만 너무 높일 경우 발열 및 전력소모가 심해진다.


- 오버클럭킹 : CPU의 성능을 향상시킬 수 있는 기술로, 억지로 성능을 향상시키려다보니 CPU에 발열이 생긴다. 이 발열은 CPU의 수명을 줄이기도 하고, CPU뿐 아니라 주변 장치인 HDD RAM에도 나쁜 영향을 끼칠 수 있다. 이러한 문제점을 해결하기 위해 수냉(물로 하는 냉각), 공냉(바람으로 하는 냉각) 방식 등을 활용한다. 오버클럭을 자주 하는 사람들은 CPU의 성능을 향상하는 것보다 이러한 냉각 방식을 더 주의깊게 생각한다.

 

- 기본적으로 오버클럭을 하는데 돈이 많이 든다. 주변기기도 버틸 수 있을만큼 좋아야하고 냉각 시스템에도 많은 돈이 투자되기 때문이다. 또한 오버클럭을 하게 되면 전체 시스템이 불안해지고 고장난 주변 기기들은 AS받기가 어려워 오버클럭킹은 초보자에게 힘든 과정이다.. 오버클럭을 쉽게 가능케하는 터보부스트가 생긴 것이다. 터보부스트는 CPU 스스로

처리하기 때문에 사용자가 관여하지 않아도 된다.








컴퓨터에서 전체적인 부분보다 간략하게 중요한 부품들 위주로 집고 넘어갈게요

다음에는 이 부품들을 주제로 깊이 있게 다루겠습니다.



 CPU(Central Processing Unit) : 중앙 처리 장치 

 

- 컴퓨터의 뇌이자 연산 작업을 담당하는 부품


- 작동 방식 : 컴퓨터에서 처리되는 대부분의 작업은 HDD에 있는 데이터를 기반으로 이루어지는데, 이 데이터를 CPU가 연산하여 출력장치(프린터, 모니터)로 보내는 방식이다.


실질적으로 HDD가 CPU보다 속도가 느리기 때문에 CPU가 아무리 고성능이더라도 HDD의 데이터 전송 속도가 정~말 느리면 컴퓨터를 계산기로 여겨야 한다. 참고로 이 부분의 문제를 해결하고자 SSD를 사용하는데 속도측면에서 성능저하문제를 해결하는 것이지 근본적인 해결책을 제공하는 것은 아니다. (CPU가 워낙 빠르기 때문이다.)



 HDD (Hard Disk Drive) : 보조기억장치


- 각종 데이터를 보관하는 작업을 수행한다.


- 속도가 CPU나 RAM에 비해 느린 편이지만, 비휘발성이므로 데이터를 한 번 저장하면 전원을 꺼도 보존된다.


- 종류

  • SSD (Solid State Drive) : 고속 보조기억장치
  • CD, DVD, 플로피디스크 등 다양한 종류가 있다.



 RAM(Random Access Memory) : 주기억장치 


- HDD보다 속도가 빨라 CPU를 보조하는 데이터 처리 장치이다.


- 원리 : CPU와 HDD의 속도 차이로 인해 발생하는 병목현상을 막기 위해 HDD에 있는 데이터를 일정량 가져와(복사하여) 임시로 저장한 후에 필요할 때마다 CPU에 빠르게 전달하는 역할을 한다. 그러므로 전반적인 작업에서 HDD는 사용하지 않고 CPU와 RAM사이에서 작업이 처리된다. 단, 휘발성이므로 전원이 꺼지면 데이터가 지워진다. 


* 병목현상 : 시스템의 자원 중에 하나의 시스템 프로그램을 집중적으로 사용했을 때 전체 시스템이 영향을 받아 시스템의 효율을 저하시키는 현상 즉, 전체 시스템이 마비된다.

ex) 주로 메모리(RAM)에 많은 양의 요청이 들어올 경우 발생한다.


예를 들면, 프로그램을 처음 실행할 때 화면이 정지하거나 '로딩 중'이라는 문구를 본다면 HDD에서 RAM으로 데어터가 전송 중이라는 의미로 받아들이면 된다. 이 때, 램의 용량이 작거나 속도가 느린 경우에는 로딩 시간이 길어지거나 실행이 안 될 수도 있다. 또한 로딩이 끝나더라도 RAM이 작업을 처리하면서 간간이 HDD로부터 데이터를 읽어오기 때문에 작업 속도가 저하된다. 즉, 저용량의 램에서 고사양 게임을 돌리면 HDD로부터 가져와야하는 데이터가 많기 때문에 램용량으로 해결할 수 없게되어 CPU가 직접 움직이는 스와핑(Swapping) 또는 페이징(Paging)이 발생하게 된다. 따라서 로딩자체가 안될 수도 있고, 다른 작업을 하는 도중에 화면이 느려지거나 멈추는 현상이 발생한다.


사실상, 단순히 데이터를 보관하는 HDD보다 RAM이 컴퓨터의 성능에 미치는 영향이 전반적으로 크다고 볼 수 있다. 참고로 데스크탑용과 노트북용 램 모듈은 크기가 다르다. (데스크탑용이 더 큼)






+ Recent posts