10
內並行代碼中,我有使用OpenMPOpenMP的 - 運行並行代碼
#pragma omp parallel for
這個函數的函數compute()
已經並行它的內部矩陣乘法被稱爲在多次循環 - 我想運行平行。 在其他並行代碼中運行並行代碼會有什麼問題嗎?
這是在Ubuntu上編譯的C++。
內並行代碼中,我有使用OpenMPOpenMP的 - 運行並行代碼
#pragma omp parallel for
這個函數的函數compute()
已經並行它的內部矩陣乘法被稱爲在多次循環 - 我想運行平行。 在其他並行代碼中運行並行代碼會有什麼問題嗎?
這是在Ubuntu上編譯的C++。
它會正常工作,但您需要啓用OpenMP嵌套以使其工作。
呼叫
omp_set_nested(1);
在節目的開始,它可以讓你嵌套並行區域。
但是:請注意,您最終可能會運行比您想要的更多的線程。所以你會想限制頂部和內部平行區域的線程數量。
這很棒。我忘了嵌套這個詞,並且找不到任何有用的東西。 – Mikhail