1. 如果任務是計算密集型的,線程池大小建議設置為Ncpu + 1
其中N是CPU數量,
+1 是為了在某一個線程處於暫停階段時,有新的線程可以用來執行,減少CPU中斷時間。
2. 如果是IO密集型,則需要增大線程數大小,避免IO操作占用過多的CPU時間
Nthreads = Ncpu x Ucpu x (1 + W/C),其中
Ncpu = CPU核心數
Ucpu = CPU使用率,0~1
W/C = 等待時間與計算時間的比率
1. 如果任務是計算密集型的,線程池大小建議設置為Ncpu + 1
其中N是CPU數量,
+1 是為了在某一個線程處於暫停階段時,有新的線程可以用來執行,減少CPU中斷時間。
2. 如果是IO密集型,則需要增大線程數大小,避免IO操作占用過多的CPU時間
Nthreads = Ncpu x Ucpu x (1 + W/C),其中
Ncpu = CPU核心數
Ucpu = CPU使用率,0~1
W/C = 等待時間與計算時間的比率
本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。