-
CPU에 따른, 프로그램에서의 효율적 스레드의 수프로그래밍 2014. 5. 23. 05:58반응형
하나의 프로그램에서 멀티 스레드를 사용할 때, [(하드웨어 스레드 컨텍스트 수 * 2) + 1]만큼을 사용하면 효율이 좋다고 한다.
C++11에서부터 지원하는 std::thread에 hardware_concurrency()라는 멤버 함수가 있는데 이는 하드웨어의 스레드 컨텍스트 수를 반환한다.
(만약, hardware_concurrency()를 사용할 수 없는 경우라면 0 을 반환)
CPU 하나에, 코어가 4개 달린 CPU를 사용중이라면 결과는 4가 나온다.
(하이퍼 스레딩 같은 기술을 지원한다면 결과가 다를 수 있다.)
출저: http://jacking.tistory.com/1061
반응형'프로그래밍' 카테고리의 다른 글
zl/memory_stream 네이밍 (0) 2014.07.02 [C++] 모든 컨테이너를 배열처럼 접근? std::advance() (0) 2014.05.24 C# 표준 네이밍 규칙 (2) 2014.05.02 boost singleton_pool의 사용 (0) 2014.04.20 boost object_pool의 사용 (0) 2014.04.19