Intel TBB를 사용하는 32 코어 시스템에서 실행되는 프로그램이 있습니다. 문제는 32 스레드를 사용하도록 프로그램을 설정할 때 성능이 16 스레드 (50 % 향상)에 비해 충분하지 않다는 것입니다. 그러나, 내가 사용하는 경우 :리눅스에서 taskset은 정확히 무엇을합니까?
taskset 0xFFFFFFFF ./foo
이 프로세스가 32 코어로 고정되면 성능이 훨씬 향상됩니다.
- 이유 : 나는 다음과 같은 두 가지 질문이? 기본적으로 OS는 32 스레드 프로그램을 위해 32 코어를 모두 사용합니다.
taskset
을 사용해도 OS가 가상 스레드와 물리적 스레드를 교환 할 수 있다고 가정합니다. 즉, 스레드는 고정되지 않습니다. 내가 맞습니까?
감사합니다.
'OS는 32 스레드 프로그램을 위해 32 코어를 사용합니다 .' - 가정은 유효합니까? –