CPU와 메모리

주영·2023년 9월 5일
0

IT Infra

목록 보기
4/16
post-thumbnail

CPU

  • Central Processing Unit
  • 서버 중심에 위치해서 연산 처리 실시
  • 명령을 받아서 연산을 실행하고 결과를 반환 (연산 1초에 10억 회 이상)
  • 명령 및 데이터는 기억 장치나 입출력 장치를 통해 전달됨
  • 하나의 CPU에 여러 개의 '코어'가 존재하는 멀티 코어화가 진행됨
    • 코어 : 각자 독립된 처리가 가능
  • 예시 (인텔 Core i9 - 10900K)
  • 표면 : 냉각기 설치됨 (대량의 전기신호 처리 → 발열 多)
  • 뒷면 : 주변을 감싸고 있는 대량의 핀이 버스에 연결되어 있음 → 메모리나 디스크와 데이터 교환
  • 컴퓨터 데이터 흐름(처리)의 원칙

메모리

  • 기억 영역
  • 위치 : CPU 옆
  • CPU에 전달하는 내용이나 데이터 저장, 처리 결과 받음

  • 메모리에 저장되는 정보 → 영구성 X
    = 서버 재시작 시 없어지는 정보

메모리를 사용하는 이유

  1. 메모리 액세스가 매우 빠르게 이루어지기 때문
    (액세스 : 데이터를 읽거나 쓰는 것)
  2. 데이터 저장 시 물리적인 모터 등을 구동하는 것이 아니라 전기적인 처리만으로도 데이터를 저장하기 때문

레지스터 & 캐시[1차(L1), 2차(L2)]

  • CPU 자체 메모리
  • 메모리보다 빠르지만, 용량이 매우 작음
    → 메모리를 이용하려면 메모리 컨트롤러를 경유해서 CPU 밖으로 나가야함 → 처리지연 (Latency) 발생
    ⇒ 가장 자주 사용하는 명령/데이터를 코어 가까운 곳(CPU 내 캐시)에 배치하는 것
  • 프로세서 구조 예시
  • 초고속 캐시 : 각 코어 전용
  • 고속 캐시 : 각 코어 전용. 메모리에서 데이터를 직접 읽음
  • 준고속 캐시 : CPU 전체가 공유

* 영역 나눠진 이유 : 액세스 속도 때문
(캐시 메모리 ↑, 액세스 속도 ↓ but, CPU 가까운 곳에 많은 캐시를 두고싶음)

  • 채널 : 메모리-CPU 간 데이터 경로

메모리 인터리빙 (Memory Interleaving)

  • 데이터를 미리 읽어서 메모리 처리 지연 경감
  • 채널 최대 3개를 사용해서 데이터 1을 요구하면 데이터 2와 3을 함께 보내버림
  • 이 기능을 위해서는 모든 채널의 동일 뱅크에 메모리를 배치해야함

출처

0개의 댓글