인프런 커뮤니티 질문&답변

플하님의 프로필 이미지
플하

작성한 질문수

자바 동시성 프로그래밍 [리액티브 프로그래밍 Part.1]

Parallel & Concurrent

코어갯수..

작성

·

182

0

int cpuCores = Runtime.getRuntime().availableProcessors();

챕터 01에 exam01 코드 실행시

cpuCores가 12개 로 나오는 이유가뭘까요

시피유가 6코어에 12쓰레드인데

쓰레드 갯수로 나오는거같아요..

 

 

답변 1

0

혹시 인텔 cpu 쓰시나요?

인텔이 하이퍼스레딩이라는 기술을 지원해주는데(다른 회사는 모르겠음) 이건 물리적 코어 한개당 스레드 2개를 할당해 성능을 높이는 기술입니다. 그래서 물리적 코어는 6개이지만 논리적 코어는 12개라 12로 출력되는 것 같네요

플하님의 프로필 이미지
플하
질문자

AMD 요거입니다image

플하님의 프로필 이미지
플하
질문자

쓰레드 갯수는 12개가 맞게 정확히 나옵니다..

int numThreads = Runtime.getRuntime().availableProcessors();//쓰레드 갯수

하이퍼스레딩 기술이 적용돼서 x2 해서 12로 나오는 것 같아요~ 강사님도 답글 달아주실듯요!

플하님의 프로필 이미지
플하

작성한 질문수

질문하기