
이 글은 널널한 개발자님의 강의를 참고하여 작성한 글입니다.
일단 기본적으로 이런 용어들이 컴퓨터 구조론에 기반이 되고 이 컴퓨터 구조론이 나중에 시스템프로그래밍이나 다른 프로그래밍을 할 때 많이 이용되기 때문에 결국 용어를 잘 알아 둬야 해서 공부를 시작한다.
다나와라는 사이트를 가보면 용어 설명이 링크로 잘 설명되어 있습니다. 널널한 개발자님도 말씀하신데로 한번 들어가서 설명을 읽어보고 정리해보는 것도 좋을 것 같아서 대략적인 것들을 정리해보았습니다.
하이퍼 쓰레딩이란?
여러가지 기술적인 용어 대신 간단하게 말하자면 A-B-C-D라는 4가지 공정을 거쳐야 완성되는 물건(쓰레드)이 있다고 가정해 보자. A 공정이 끝나고 B공정으로 넘어가면 A공정은 쉬게 되는데, 이는 비효율적이다.따라서 B공정으로 넘어가면 다시 A공정에 새로운 작업을 투입하여 병목이 생겨 놀고있는 부분을 줄이도록 업무 처리 과정을 개선한 기술이 인텔 하이퍼쓰레딩과 AMD SMT이다. 1개의 코어에서 2개의 쓰레드를 처리할 수 있도록 개선하였기 때문에 해당 기술이 적용된 CPU를 장착한 PC에서 윈도우즈 작업 관리자를 켜면 쿼드코어 CPU라도 8개의 코어를 가진 것으로 보이게 된다.
DDR5와 DDR4 메모리는 한 사이클에 데이터를 동시에 주고 받을 수 있는 DDR (Double Data Rate) 메모리의 한 종류로써 최신 CPU와 메인보드에서 지원하는 방식이다.
DDR5는 DDR4 대비 기본으로 높은 클럭을 지원하며, 전압이 낮아졌고, PMIC칩이 메인보드가 아닌 메모리 모듈에 탑재된 부분, 온다이ECC 등의 차이가 있으며, 다만 클럭이 높아진 만큼 레이턴시가 길어진 부분은 참고해야 한다.
DDR4는 64비트*1WAY = 64비트 (1개만 장착시 단일채널로 인식)
DDR5는 32비트*2WAY = 64비트 (1개만 장착시 듀얼채널로 인식)
DDR5도 대역폭을 높이려면 2개를 사용하여 쿼드채널로 구성하는 것이 유리합니다.