精華區beta CSSE 關於我們 聯絡資訊
※ 引述《CoTi (歌蒂)》之銘言: : ※ 引述《micklin (離鄉背井的米克)》之銘言: : : 不考慮UI thread的情況下, : : 執行緒的數目大於處理器(或核心)的數目是有意義的嗎? : : 現在在用openmp來加速程式的計算, : : 執行緒的處目只設成2, 用 omp_set_num_threads(omp_get_num_procs())來設定的, : : 在雙核心的處理器之下效能顯著提升, : : 如果我把執行緒的數目提到4, 有意義嗎? : 應該是要看 OS 實作,不過一般來講我想差異應該不大 : 請問你用 openMP 前後是差多少? 節省將近一半的時間, 但是因為程式有很多random變數的處理, 所以每次執行時間的差異很大. : 未用 openMP 時兩支程式是一樣的嗎? (ex: ./a.out 用不同命令列參數跑兩次?) : 兩支程式間有頻繁的互相鎖定嗎? 兩個程式在跑的時候是完全獨立的. : : 另一個問題是, : : 之前程式還未使用 openmp 時, 是一次執行兩個, : : 假設這兩個程式所需要的時間是 t1, t2, : : 那他們都執行完畢總共需要 max(t1,t2) 的時間. : : 如果現在用多執行緒的技術, 一樣要跑兩個, : : 所需要的時間是否會因為overhead之類的損耗, 反而跑更久? : 應該不至於 謝謝! : : 謝謝您的回答! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.169.191.39