리뷰 및 후기

CPU의 스레드가 무엇인지 알아봅시다

굿IT 굿정보 2024. 5. 17. 22:30
반응형

스레드는 CPU가 독립적으로 처리하는 하나의 작업 단위를 뜻합니다.

보통 코어 개수와 스레드 개수는 동일하며, 4코어 4스레드 CPU의 경우 한번에 4개의 코어에서 4가지 스레드(작업)를 동시에 처리할 수 있습니다.

 

인텔 일부 CPU는 하이퍼스레딩 기술을 통해 1코어당 2스레드를 갖습니다.

굳이 하나의 코어를 가상의 공간으로 구분하여 2개의 스레드로 나누는 이유는 컴퓨터 CPU 자원을 아끼기 위해서입니다.

 

CPU의 코어는 일종의 두뇌라고 보면 됩니다.

코어는 CPU 내부에 물리적으로 탑재되며 듀얼코어 CPU란 코아가 2개, 즉 두뇌가 2개인 CPU라는 의미입니다.

개별적인 작업을 따로 수행할 수 있는 두뇌(코어)가 많은 만큼 동시에 여러 작업을 할 때 강력한 성능을 발휘할 수 있게 됩니다.

본래 CPU는 1개의 코어만 가지고 있었고, 그 코어의 성능을 늘리는 것이 CPU의 성능 향상이었습니다.

하지만 코어 1개만으로 볼 수 있는 성능의 향상에 한계, 성능의 낭비가 발생하면서 코어를 나누게 되었습니다.

 

코어의 숫자는 동시에 처리할 수 있는 작업의 숫자에 관련됩니다.

즉, 8코어 CPU는 8개의 작업을 동시에 작업할 수 있습니다.

코어를 늘리면 멀티태스킹 작업에 강력해지지만 이 코어를 모두 사용하는 프로그래밍 난이도가 올라가고, 모여있는 코어의 숫자가 많을수록 발열이 심해질 수 있습니다.

 

개별 코어가 얼마나 빠르게 작업을 처리할 수 있을지는, CPU의 다른 스펙인 클럭을 보아야합니다.

클럭 속도
코어의 클럭 속도는 (코어의) 처리 주파수로 측정되며, 반드시 전체 CPU 성능을 나타내는 척도는 아니다. 
클럭은 시간을 보는 시계로 잘 알려져 있지만 "어떤 작업을 완료하는데 걸리는 시간을 측정한다"라는 동사의 의미조 지니고 있습니다. 
그래서 클럭 속도는 코어가 초당 실행하는 계산 사이클(주기) 수를 나타냅니다. 
클럭 속도는 현재 기가헤르츠(GHz) 단위로 측정되는데, 1기가헤르츠는 초당 십억 사이클입니다. 
클럭 속도가 CPU의 성능을 결정하는 유일한 요소는 아니지만 클럭 속도가 높으면 보통 연산 처리 속도가 빠르다고 봅니다. 
하지만 CPU의 전체 성능을 결정하는 데는 내부 아키텍처(여러 코어 간의 시너지 효과)와 내부 캐시의 크기가 더 중요합니다. 
어떤 CPU의 아키텍처 설계가 효율적이라면 다른 CPU보다 사이클 당(per cycle) 처리 작업 횟수가 더 많을 수 있습니다.

 

CPU의 스레드는 글 서두에 설명드린대로 CPU의 작업에 사용되는 소프트웨어 작업 단위입니다.

스레드는 옷을 짜는 실이라는 뜻이 기본 의미입니다.

그리고 동사로서의 임도 지니고 있는데 "좁은 공간을 요리조리 빠져나가다"라는 뜻도 있습니다.

 

CPU 스레드는 중앙 처리 장치가 컴퓨터에 부과된 작업을 보다 효율적으로 처리하는 데 도움이 되는 가상 구성 요소입니다.

스레드는 코어가 처리할 수 있는 프로세스 양을 나타내는 지표입니다.

컨텍스트 스위치 오버헤드 경우처럼 코어의 많은 성능이 작업간 전환 시 낭비되기 때문에 스레드는 각 코어에서 여러 가상 코어를 생성합니다.

CPU의 스레드 본래 코어의 내부에서 작업을 수행하는 소프트웨어적 단위를 나타냅니다.

과거에는 1코어 = 1스레드였기 때문에 별도로 CPU 스펙에 표기되지 않았습니다.

 

인텔 CPU의 하이퍼스레딩(Hyperthreadung)과 AMD CPU의 SMT(Simultaneous Multi0Threading)는 물리적 코어를 가상 코어로 분할하여 단일 코어가 여러 스레드를 보다 효율적으로 처리할 수 있도록 하는 프로세스입니다.

이름은 서로 다르지만 본질적으로 하이퍼스레딩과 SMT는 그 원리가 같습니다.

 

이처럼 하나의 CPU를 2개의 스레드로 나누어 쓰는 기술이 개발되면서 2코어 4스레드와 같은 현재의 CPU 스펙 표기법이 대중화 되었습니다.

컴퓨터 CPU의 자원을 아끼기 위해 하나의 코어를 가상의 공간으로 구분하여 2개의 스레드로 나누게 되었습니다.

1코어 1스레드의 상태에서는 작은 작업에도 CPU 코어의 성능을 모두 발휘해야 하는 낭비가 발생하며, 이 와중에 다른 작업이 발생하면 동시에 처리할 역량이 있음에도 설꼐의 한계로 동시에 처리할 수 없게 됩니다.

 

CPU 설계 기술이 발전하면서 코어 당 성능이 높아질수록 이 문제를 대처할 방법이 필요해졌습니다.

코어가 2개의 스레드로 분리되어 운영되면 작은 작업은 하나의 스레드에서만 처리할 수 있게됩니다.

 

부하가 큰 작업은 그냥 2개의 스레드를 모두 사용해서 처리를 하면 됩니다.

즉 멀티 스레드는 CPU자원 활용에 유연성을 부여하기 위해서 도입되었습니다.

 

 

노트북 고르는 법 및 추천 모델 종류, 특징

여러분들이 노트북을 고르시는데 있어서, 진짜 가성비에 합리적인 노트북 구매를 위해 어떤것들을 체크해야 하는지 알려드리겠습니다. 목차 - 용도 목적 - 제품별 스펙 및 성능 용도 목적 어떠

kingamin.tistory.com

 

반응형