//구글콘솔 광고 추가가

코어와 멀티 코어

코어(core)란?
: CPU내에서 명령어를 실행하는 부품
현대적인 관점에서 "CPU"라는 용어를 재해석해야 함.
전통적으로 명령어를 실행하는 부품은 원칙적으로 하나만 존재.
그러나, 오늘날 CPU에는 여러개가 존재.
CPU안에서 명령어를 인출하고 해석하고 실행하는 부품 == 오늘날의 "코어"

싱글 코어 == 하나만 있는 코어.
멀티코어 == 두개 이상의 코어.
멀티코어 프로세서 == 여러 개의 코어를 포함하고 있는 CPU.

코어수에 비례해서 CPU의 속도가 증가하는 건 아님.


스레드와 멀티 스레드

스레드(thread)란?
: 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위
스레드는 하드웨어적 스레드와 소프트웨어적 스레드가 있다.
- 하드웨어 스레드( 논리 프로세서라고도 함): 하나의 코어가 동시에 처리하는 명령어 단위. 
- 소프트웨어 스레드: 하나의 프로그램에서 독립적으로 실행되는 단위.
1코어 1스레드 CPU도 여러 소프트웨어적 스레드를 만들 수 있다.

 

멀티스레드(multi thread)란?

: CPU의 최대 활용을 위해 프로그램의 둘 이상을 동시에 실행하는 기술.


강의를 듣다가 하드웨어 스레드와 프트웨어 스레드에 대해 궁금해져서 더 찾아보았는데,

더 쉽게 이해 할수 있는 글을 읽었다.

 

'4코어 8(하드웨어) 스레드라는 것은, 상하권이 나뉜 4세트의 책과 같습니다. 이 4세트를 가지고 도서관에서 100명의 사람에게 빌려 줄 수 있습니다. 비록 한 번에 읽을 수 있는 사람은 8 사람 (소프트웨어 스레드) 밖에 없지만요.'

 

스레드들을 공부하다가 잘 정리된 블로그가 있어서 추가해둔다.

싱글스레드와 멀티스레드 참고 블로그

https://velog.io/@gil0127/%EC%8B%B1%EA%B8%80%EC%8A%A4%EB%A0%88%EB%93%9CSingle-thread-vs-%EB%A9%80%ED%8B%B0%EC%8A%A4%EB%A0%88%EB%93%9C-Multi-thread-t5gv4udj

728x90
반응형

+ Recent posts