簡體   English   中英

OpenMP - 在並行代碼中運行並行代碼

[英]OpenMP - Running parallel code inside parallel code

我有一個函數compute() ,它使用OpenMP在其中內部並行化矩陣乘法

#pragma omp parallel for

這個函數在循環中被多次調用 - 我想並行運行。 在其他並行代碼中運行並行代碼會有任何問題嗎?

這是在Ubuntu上編譯的c ++。

它可以正常工作,但您需要啟用OpenMP嵌套才能工作。

呼叫

omp_set_nested(1);

在程序的開頭,它將允許您具有嵌套的並行區域。

但是:請注意,您最終可能會運行比您想要的更多的線程。 因此,您需要限制頂部和內部並行區域的線程數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM