openMP是一個編譯器指令和庫函數(shù)的集合,主要是為共享式存儲計算機上的并行程序設(shè)計使用的。

  • 當(dāng)計算機升級到多核時,程序中創(chuàng)建的線程數(shù)量需要隨CPU核數(shù)變化,如在CPU核數(shù)超過線程數(shù)量的機器上運行,則不能很好的完全利用機器性能,雖然通過可以通過操作系統(tǒng)的API創(chuàng)建可變化數(shù)量的線程,但是比較麻煩,不如openMP方便

  • 操作系統(tǒng)API創(chuàng)建線程時,需要線程函數(shù)入口,如pthread編程。對于同一函數(shù)或者同一循環(huán)內(nèi)的并行非常不利,函數(shù)入口非常之多,而openMP不需要函數(shù)入口。

  • 現(xiàn)在主流的操作系統(tǒng)的API 互不兼容,移植性非常差。openMP是標(biāo)準(zhǔn)規(guī)范,支持它的編譯器都執(zhí)行同一套標(biāo)準(zhǔn),很好的解決了這個問題。

openMP的庫函數(shù)和指令

指令的格式: #pragma omp 指令 [字句]

常見庫函數(shù):

<cite id="k2gi2"></cite>
  • <button id="k2gi2"></button>
    • 指令含義庫函數(shù)含義
      parallel所表示的代碼將被多個線程并行執(zhí)行omp_set_num_threads(parameter)設(shè)置線程數(shù)目
      parallel for

      延伸閱讀

      學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負責(zé)任的教育,學(xué)習(xí)改變命運,軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式

      我想了解如何學(xué)習(xí)

      姓名:
      手機:
      留言: