看板 C_and_CPP 關於我們 聯絡資訊
Hi, 想請問一各位大大, 最近再練習thread功能的撰寫, 請問一下thread被分配到的cpu是可以指定的嗎? 還是經由os自行分配呢? 假設我開了4個thread, 同時有4顆cpu, 想讓4顆cpu都維持高使用率, 需要去指定,能夠去指定嗎? 謝謝 ~ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 203.69.59.91 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1425979311.A.49F.html
leslieha: 4顆CPU? 4核CPU? 印象中thread沒辦法, process才有辦法 03/10 17:28
PkmX: 如果是pthread有pthread_setaffinity_np (3)可以用 03/10 18:05
PkmX: _np (non-portable) 代表他是非標準的extension 03/10 18:08
tas72732002: 那os不會自己分配嗎? 03/10 18:57
EdisonX: windows: SetThreadAffinityMask 03/10 21:49
LiloHuang: 通常不需要自己去設定,除非你要增加 cache hit rates 03/10 21:50
LiloHuang: 絕大部分情況,由作業系統分配效果都已經夠好了 03/10 21:50
EdisonX: mask:一個bit代表一顆cpu,0x03就第一,二顆 03/10 21:51
tas72732002: 恩恩, 了解了, 感謝各位 03/10 22:34