91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

OpenMP并行程序設計方法是什么

發布時間:2021-11-17 16:21:01 來源:億速云 閱讀:146 作者:iii 欄目:web開發

本篇內容主要講解“OpenMP并行程序設計方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“OpenMP并行程序設計方法是什么”吧!

在VC8.0中項目的屬性對話框中,左邊框里的“配置屬性”下的“C/C++”下的“語言”頁里,將OpenMP支持改為“是/(OpenMP)”就可以支持OpenMP了。

先看一個簡單的使用了OpenMP程序

int main(int argc, char* argv[]) { #pragma omp parallel for      for (int i = 0; i < 10; i++ )      {          printf("i = %d/n", i);      }      return 0; } 這個程序執行后打印出以下結果: i = 0 i = 5 i = 1 i = 6 i = 2 i = 7 i = 3 i = 8 i = 4 i = 9

可見for 循環語句中的內容被并行執行了。(每次運行的打印結果可能會有區別)

這里要說明一下,#pragma omp parallel for 這條語句是用來指定后面的for循環語句變成并行執行的,當然for循環里的內容必須滿足可以并行執行,即每次循環互不相干,后一次循環不依賴于前面的循環。

有關#pragma omp parallel for 這條語句的具體含義及相關OpenMP指令和函數的介紹暫時先放一放,只要知道這條語句會將后面的for循環里的內容變成并行執行就行了。

 將for循環里的語句變成并行執行后效率會不會提高呢,我想這是我們最關心的內容了。下面就寫一個簡單的測試程序來測試一下:

void test() {      int a = 0;      clock_t t1 = clock();      for (int i = 0; i < 100000000; i++)      {          a = i+1;      }      clock_t t2 = clock();      printf("Time = %d/n", t2-t1); }   int main(int argc, char* argv[]) {      clock_t t1 = clock(); #pragma omp parallel for      for ( int j = 0; j < 2; j++ ){          test();      }      clock_t t2 = clock();      printf("Total time = %d/n", t2-t1);        test();      return 0; }   在test()函數中,執行了1億次循環,主要是用來執行一個長時間的操作。 在main()函數里,先在一個循環里調用test()函數,只循環2次,我們還是看一下在雙核CPU上的運行結果吧: Time = 297 Time = 297 Total time = 297 Time = 297

可以看到在for循環里的兩次test()函數調用都花費了297ms, 但是打印出的總時間卻只花費了297ms,后面那個單獨執行的test()函數花費的時間也是297ms,可見使用并行計算后效率提高了整整一倍。

到此,相信大家對“OpenMP并行程序設計方法是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

徐水县| 扶风县| 曲靖市| 收藏| 栖霞市| 贡嘎县| 桑植县| 龙岩市| 新河县| 德钦县| 宁化县| 巴中市| 新巴尔虎右旗| 庆城县| 奉新县| 镇坪县| 灵丘县| 沐川县| 西乌| 宁河县| 昔阳县| 辽中县| 长乐市| 茂名市| 武汉市| 平顶山市| 阳谷县| 奉节县| 临桂县| 休宁县| 交口县| 尉犁县| 临高县| 开远市| 栾川县| 正蓝旗| 江孜县| 含山县| 尚志市| 博罗县| 聂拉木县|