久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

OpenMP 如何處理嵌套循環(huán)?

How does OpenMP handle nested loops?(OpenMP 如何處理嵌套循環(huán)?)
本文介紹了OpenMP 如何處理嵌套循環(huán)?的處理方法,對(duì)大家解決問題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧!

問題描述

以下代碼只是并行化第一個(gè)(外部)循環(huán),還是并行化整個(gè)嵌套循環(huán)?

Does the following code just parallelize the first (outer) loops, or it parallelize the entire nested loops?

    #pragma omp parallel for
    for (int i=0;i<N;i++)
    { 
      for (int j=0;j<M;j++)
      {
       //do task(i,j)//
      }
    }

我只想確定上面的代碼是否會(huì)并行化整個(gè)嵌套的 for 循環(huán)(因此一個(gè)線程直接與 task(i,j) 相關(guān)),或者它只并行化外部 for 循環(huán)(從而確保,對(duì)于每個(gè)循環(huán)索引為 i 的并行線程,其內(nèi)部循環(huán)將在單個(gè)線程中依次完成,這非常重要).

I just want to make sure if the above code will parallelize the entire nested for-loops (thus one thread directly related task(i,j)), or it only parallelizes the outer for-loop (thus it ensures that, for each parrallel thread with loop index i, its inner loop will be done sequentially in a single thread, which is very import).

推薦答案

您編寫的行將僅并行化外循環(huán).要并行化兩者,您需要添加一個(gè) collapse 子句:

The lines you have written will parallelize only the outer loop. To parallelize both you need to add a collapse clause:

#pragma omp parallel for collapse(2)
    for (int i=0;i<N;i++)
    { 
      for (int j=0;j<M;j++)
      {
       //do task(i,j)//
      }
    }

您可能需要查看 OpenMP 3.1 規(guī)范(第 2.5.1 節(jié))以了解更多詳細(xì)信息.

You may want to check OpenMP 3.1 specifications (sec 2.5.1) for more details.

這篇關(guān)于OpenMP 如何處理嵌套循環(huán)?的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

相關(guān)文檔推薦

How can I read and manipulate CSV file data in C++?(如何在 C++ 中讀取和操作 CSV 文件數(shù)據(jù)?)
In C++ why can#39;t I write a for() loop like this: for( int i = 1, double i2 = 0; (在 C++ 中,為什么我不能像這樣編寫 for() 循環(huán): for( int i = 1, double i2 = 0;)
Reusing thread in loop c++(在循環(huán) C++ 中重用線程)
Precise thread sleep needed. Max 1ms error(需要精確的線程睡眠.最大 1ms 誤差)
Is there ever a need for a quot;do {...} while ( )quot; loop?(是否需要“do {...} while ()?環(huán)形?)
How to break out of a loop from inside a switch?(如何從交換機(jī)內(nèi)部跳出循環(huán)?)
主站蜘蛛池模板: 中文天堂在线一区 | 先锋资源网站 | 黄色大片在线播放 | 在线观看免费av网 | 国产午夜精品一区二区三区嫩草 | 97免费在线视频 | 亚洲专区在线 | 男人天堂av网| 国产精品视频一二三 | 国产一级免费视频 | 国产精品jizz在线观看老狼 | 国产精品99久久久久久久久久久久 | 91久久精品一区二区二区 | 日韩一区二区三区在线观看视频 | 欧美精品在线一区二区三区 | 天天色天天色 | 国产一区三区在线 | 国产精品乱码一区二区三区 | 亚洲精品自拍 | 91青娱乐在线| 成人欧美日韩一区二区三区 | 欧美激情久久久 | 成人午夜网 | 亚洲人成人一区二区在线观看 | 国产精品久久久久免费 | 一区二区三区欧美在线 | 中文字幕视频在线观看 | 日韩精品1区2区3区 爱爱综合网 | 不卡视频在线 | 伊人网综合在线 | 国产97久久 | 日本粉嫩一区二区三区视频 | 九色 在线| 成人av网站在线观看 | 日韩高清一区 | 免费一级欧美在线观看视频 | 高清一区二区三区 | 国产在线色 | 日韩在线不卡视频 | 成人无遮挡毛片免费看 | 国产 日韩 欧美 在线 |