[问题] 关于thread 调用问题

楼主: tas72732002 (葱头)   2015-03-10 17:21:48
Hi, 想请问一各位大大,
最近再练习thread功能的撰写,
请问一下thread被分配到的cpu是可以指定的吗?
还是经由os自行分配呢?
假设我开了4个thread, 同时有4颗cpu,
想让4颗cpu都维持高使用率, 需要去指定,能够去指定吗?
谢谢 ~
作者: leslieha (懂的付出才会幸福)   2015-03-10 17:28:00
4颗CPU? 4核CPU? 印象中thread没办法, process才有办法
作者: PkmX (阿猫)   2015-03-10 18:05:00
如果是pthread有pthread_setaffinity_np (3)可以用_np (non-portable) 代表他是非标准的extension
楼主: tas72732002 (葱头)   2015-03-10 18:57:00
那os不会自己分配吗?
作者: EdisonX (卡卡兽)   2015-03-10 21:49:00
windows: SetThreadAffinityMask
作者: LiloHuang (十年一刻)   2015-03-10 21:50:00
通常不需要自己去设定,除非你要增加 cache hit rates绝大部分情况,由作业系统分配效果都已经够好了
作者: EdisonX (卡卡兽)   2015-03-10 21:51:00
mask:一个bit代表一颗cpu,0x03就第一,二颗
楼主: tas72732002 (葱头)   2015-03-10 22:34:00
恩恩, 了解了, 感谢各位

Links booklink

Contact Us: admin [ a t ] ucptt.com