CPU 4

캐시(Cache) 메모리에 대한 이해

주기억 장치 (일반적으로 DRAM) 성능이 많이 개선되었음에도 불구하고 CPU 에 비하면 느린 수준이다. 이와 같이 CPU 와 주기억장치의 성능 차이로 인해 CPU가 주기억장치에 접근할 때 마다 성능 저하가 발생하곤한다. 이를 방지하기 위해 CPU와 주기억장치 사이에 CPU 보다는 느리지만 주기억장치보다는 빠른 캐시(Cache) 메모리를 두어 성능 저하 빈도를 줄이고자 한다. 캐시 (Cache) 메모리 : 단위 용량당 가격이 비싸지만 빠르다 주기억장치 : 단위 용량당 가격이 캐시 메모리보다는 싸지만 상대적으로 느리다. 하지만 캐시 메모리와 주기억장치는 위와 같은 장단점을 가지고 있고, 아래와 같은 루틴을 통해 주기억장치의 용량을 캐시 메모리의 성능으로 사용하는 효과를 누리게 하고자 하는 것이 목표이다. ..

CPU 레지스터 (Register) 의 이해 및 종류

CPU 레지스터 : 중앙처리장치(CPU) 내에 위치한 기억장치로 많은 수의 레지스터를 CPU내에 포함시키는 것은 어렵기 때문에 특수 목적용 레지스터들과 몇몇 일반 목적용 레지스터만 존재한다. 대표적인 레지스터의 종류 : PC (Program Counter) : 다음 인출(Fetch) 될 명령어의 주소를 가지고 있는 레지스터 AC (Accumulator) : 연산 결과 데이터를 일시적으로 저장하는 레지스터 IR (Instruction Register) : 가장 최근에 인출된 명령어(현재 실행 중인 명령어)가 저장되어 있는 레지스터 SR (Status Register) : 현재 CPU 의 상태를 가지고 있는 레지스터 MAR (Memory Address Register) : PC 에 저장된 명령어 주소가 사용..

CPU 클럭 주파수 (Clock Frequency)

CPU clock frequency 는 CPU 동작 속도를 의미하고, '초당 사이클'을 의미한다. (단위는 Hz) (사이클은 명령어가 요구하는 동작들을 수행하는 단위) Clock Frequency 1초 기준 사이클의 수 1 사이클 기준 걸리는 시간 1 Hz 1초에 1개의 사이클을 수행 1개의 사이클을 수행하는데 걸리는 시간은 1초 100 Hz 1초에 100개의 사이클을 수행 1개의 사이클을 수행하는데 걸리는 시간은 1/100 초 즉, Hz가 높을 수록 더 빠르게 처리하는 것을 알 수 있다.

VirtualBox, 멀티코어 설정하기. (다중 CPU)

Virtualbox내 설치한 Ubuntu에서 코드를 컴파일할 일이 있었다. 가상 머신이라는 점은 고려하였지만 그래도 그 컴파일 성능이 생각보다 너무 느린 것만 같았다. 혹시나 해서 Ubuntu 내에서 CPU Core가 몇 개가 잡혀있는지 확인해 보니, 하나 밖에 설정이 되어 있지 않았다. (별다른 설정을 하지 않았다면 하나의 CPU만 인식이 된다.) # cat /proc/cpuinfo 위와 같이 하나의 CPU만 잡혀 있다. 가상 머신에서 하나 이상의 CPU를 인식해 보자. Virtualbox 멀티 코어 설정 1. 설정하고자 하는 가상 머신을 선택 한 뒤 [머신] > [설정] 을 실행한다. 2. 설정 메뉴 내에서 "시스템" > "프로세서" 탭을 선택해 보면 프로세서 개수를 선택할 수 있다. 해당 virtu..