Find out CPU core of specific thread at runtime
문제
I am running CC compiler over SUN/Solaris, I have more then 64 threads assigned by the OS to different cores. I am interested to know if there is method to get the core id for different threads during run time?
I am not setting affinity for those threads, i use psrset to create the processor set.
해결책
I found the answer: getcpuid() on Solaris returns the core id (even for hyper thread): i have tested it and it works great. http://www.unix.com/man-page/all/3c/getcpuid/
다른 팁
I don't know if there are Solaris-specific system calls for this, but you could use the portable hwloc library and its hwloc_get_last_cpu_location
function.
제휴하지 않습니다 StackOverflow