백엔드 개발자 블로그

5. CPU 성능 향상 기법 본문

독서/혼자 공부하는 컴퓨터 구조+운영체제

5. CPU 성능 향상 기법

backend-dev 2024. 7. 18. 17:51

1. 빠른 CPU를 위한 설계 기법

  1. 클럭속도 높이기
  2. CPU의 코어와 쓰레드 수 늘리기
  • 코어 : 명령어를 실행하는 부품
  • 코어 갯수와 성능은 비례 관계가 아닙니다.
    • 코어마다 공평하게 분배
    • 너무 많아지면 효과가 미비
  • 스레드 : 실행 흐름의 단위
    • 하드웨어적 스레드 : 하나의 코어가 동시에 처리하는 명령어 단위
    • 소프트웨어적 스레드 : 하나의 프로그램에서 독립적으로 실행하는 단위

2. 명령어 병렬 처리 기법

  • 명령어 파이프라이닝 : 명령어들을 파이프라인에 넣고 동시에 처리하는 기법
    • 파이프라인 위험
      • 데이터 위험 : 명령어 간 데이터 의존성에 의해 발생하는 위험
      • 제어 위험 : 프로그램 카운터의 갑작스러운 변화에 의해 발생하는 위험
      • 구조적 위험 : 서로 다른 명령어가 동시에 CPU 부품을 사용하려고 할 때 발생하는 위험
  • 슈퍼스칼라 : 여러 개의 명령어 파이프라인을 두는 기법
    • 파이프라인 늘리면 성능이 늘어나지만, 파이프라인 위험이 증가한다.
  • 비순차적 명령어 처리 기법 : 순서를 바꿔 실행해도 무방한 명령어를 먼저 실행하여 명령어 파이프라인이 멈추는 것을 방지하는 기법

3. CISC와 RISC

ISA : CPU가 이해할 수 있는 명령어들의 모음집

  • CISC(Complex Instruction  Set Computer) : 복잡한 명령어 집합을 활용하는 컴퓨터
  • RISC(Reduced Instruction Set Computer) : 간단한 명령어 집합을 활용하는 컴퓨터

 

'독서 > 혼자 공부하는 컴퓨터 구조+운영체제' 카테고리의 다른 글

7. 보조기억장치  (0) 2024.07.22
6. 메모리와 캐시 메모리  (0) 2024.07.19
4. CPU 작동원리  (1) 2024.07.17
3. 명령어  (0) 2024.07.16
1. 컴퓨터 구조 시작하기  (0) 2024.07.16