유휴 스레드 수 결정

유휴 스레드 수 결정

n동시 스레드를 처리할 수 있는 컴퓨터 에서 n-m단일 스레드 작업을 시작한다고 가정합니다. 여기서 는 m현재 사용 중인 스레드 수입니다. 그것은 어떻게 m정의되며, 그 가치는 어떤 수단으로 결정되는가? 예를 들어, SMT가 있는 쿼드 코어 프로세서가 포함된 소켓 2개가 있고 시스템이 일반적으로 백그라운드에서 실행되는 프로세스 이외의 활성 프로세스가 없는 비공유 시스템에서 사용자는 프로세스에 대해 더 걱정할 필요 없이 16개의 단일 스레드 프로세스를 시작할 수 있습니다. 간섭(캐싱, 누락 등). 각 사용자가 소유한 프로세스의 스레드 수를 단순히 고려하는 것이 가능합니까? 프로세서가 스레드를 얼마나 빨리 변경할 수 있는지를 고려하면 확실히 더 많은 관련이 있을 것이라고 생각합니다. 총 가상 코어 수와 예상 전체 CPU 사용량을 고려하여 결정을 내리는 것이 더 낫습니까?

관련 정보