일반적으로 운영 체제는 스레드를 코어에 할당합니다. 나는이 할당에 프로그램이 개입 할 수있는 방법이 있는지 궁금해.코어를 스레드에 할당하기위한 API
다른 말로하면 : 특정 코어와 관련된 스레드를 만들 수있는 API (Linux 또는 Win32 플랫폼 용)가 있습니까?
일반적으로 운영 체제는 스레드를 코어에 할당합니다. 나는이 할당에 프로그램이 개입 할 수있는 방법이 있는지 궁금해.코어를 스레드에 할당하기위한 API
다른 말로하면 : 특정 코어와 관련된 스레드를 만들 수있는 API (Linux 또는 Win32 플랫폼 용)가 있습니까?
Windows에는 프로세스의 선호도를 설정하는 기능이 있지만 각 스레드를 독립적으로 설정할 수 있습니다. Linux는 프로세스의 선호도를 설정하는 기능 만 제공합니다.
Windows의 경우 처리 기능은 SetProcessAffinityMask입니다. 또한 Windows는 "이상적인"프로세서 (SetThreadIdealProcessor)라는 개념을 가지고 있습니다. XP에서 개념이 작동하지 않더라도 수행중인 작업을 모르는 경우 사용하는 것이 훨씬 좋습니다.
Windows의 경우 SetThreadAffinityMask입니다. 일반적으로이 작업을 수행하지 마십시오. OS는 당신보다이게 거의 확실합니다.
Linux의 경우 sched_set_affinity
및 pthread_attr_setaffinity_np
입니다.