Course Code: openmp
Duration: 14 hours
Prerequisites:
  • 瞭解 HPC 系統
  • 並行程式設計經驗

觀眾

  • 軟體工程師
Overview:

OpenMP (Open Multi-Processing) 是一個用於共用記憶體多處理程式設計的 API。使用 OpenMP,程式師能夠為從桌面到非共用記憶體系統的平台開發並行應用程式。

此講師指導的現場培訓(在線或現場)面向希望使用 OpenMP 開發並行應用程式的軟體工程師。

在本次培訓結束時,參與者將能夠:

  • 瞭解並使用 OpenMP 中的 Fortran 並行程式設計。
  • 並行計算分形以渲染多個像素和字元。
  • 使用 HPC 系統的 SIMD 擴展實現向量程式設計。
  • 添加用於指定共用記憶體並行度的 parallel 塊。

課程形式

  • 互動講座和討論。
  • 大量的練習和練習。
  • 在即時實驗室環境中動手實施。

課程自定義選項

  • 要申請本課程的定製培訓,請聯繫我們進行安排。
Course Outline:

介紹

多線程 Programming

  • 語法和結構
  • 條款和章節

卸載支援

  • 指令和目標數據
  • If、device 和 map 子句

線程安全和共用

  • 原子數
  • 構造、鎖和指令
  • 共用子句

準備開發環境

  • 安裝與設定OpenMP
  • 安裝和配置 VMWare
  • 使用 VMWare 設置 HPC

在 OpenMP 中平行 Programming

  • 創建你好世界代碼示例和演示
  • 工作共享結構
  • 使用 for 迴圈
  • 使用分段平行度
  • 使用分形
  • 添加向量

Vector Programming 和 SIMD 擴展

  • 矢量化迴圈
  • 註釋使用者定義的函數
  • 使用支援SIMD註釋的函數
  • 生成向量函數
  • 註冊向量返回值

OpenMP 中的 Fortran

  • 工作共享結構
  • 同步構建體
  • 使用數據範圍屬性子句和其他子句
  • 使用 OpenMP 運行時庫

並行塊

  • 指定線程數
  • 執行並行語句塊
  • 區分並行塊中的運行線程
  • 使用 omp critical 指令

總結和結論

Sites Published:

United Arab Emirates - Parallel Programming with OpenMP

Qatar - Parallel Programming with OpenMP

Egypt - Parallel Programming with OpenMP

Saudi Arabia - Parallel Programming with OpenMP

South Africa - Parallel Programming with OpenMP

Brasil - Parallel Programming with OpenMP

Canada - Parallel Programming with OpenMP

中国 - Parallel Programming with OpenMP

香港 - Parallel Programming with OpenMP

澳門 - Parallel Programming with OpenMP

台灣 - Parallel Programming with OpenMP

USA - Parallel Programming with OpenMP

Österreich - Parallel Programming with OpenMP

Schweiz - Parallel Programming with OpenMP

Deutschland - Parallel Programming with OpenMP

Czech Republic - Parallel Programming with OpenMP

Denmark - Parallel Programming with OpenMP

Estonia - Parallel Programming with OpenMP

Finland - Parallel Programming with OpenMP

Greece - Parallel Programming with OpenMP

Magyarország - Parallel Programming with OpenMP

Ireland - Parallel Programming with OpenMP

Luxembourg - Parallel Programming with OpenMP

Latvia - Parallel Programming with OpenMP

España - Parallel Programming with OpenMP

Italia - Parallel Programming with OpenMP

Lithuania - Parallel Programming with OpenMP

Nederland - Parallel Programming with OpenMP

Norway - Parallel Programming with OpenMP

Portugal - Parallel Programming with OpenMP

România - Parallel Programming with OpenMP

Sverige - Parallel Programming with OpenMP

Türkiye - Parallel Programming with OpenMP

Malta - Parallel Programming with OpenMP

Belgique - Parallel Programming with OpenMP

France - Parallel Programming with OpenMP

日本 - Parallel Programming with OpenMP

Australia - Parallel Programming with OpenMP

Malaysia - Parallel Programming with OpenMP

New Zealand - Parallel Programming with OpenMP

Philippines - Parallel Programming with OpenMP

Singapore - Parallel Programming with OpenMP

Thailand - Parallel Programming with OpenMP

Vietnam - Parallel Programming with OpenMP

India - Parallel Programming with OpenMP

Argentina - Parallel Programming with OpenMP

Chile - Parallel Programming with OpenMP

Costa Rica - Parallel Programming with OpenMP

Ecuador - Parallel Programming with OpenMP

Guatemala - Parallel Programming with OpenMP

Colombia - Parallel Programming with OpenMP

México - Parallel Programming with OpenMP

Panama - Parallel Programming with OpenMP

Peru - Parallel Programming with OpenMP

Uruguay - Parallel Programming with OpenMP

Venezuela - Parallel Programming with OpenMP

Polska - Parallel Programming with OpenMP

United Kingdom - Parallel Programming with OpenMP

South Korea - Parallel Programming with OpenMP

Pakistan - Parallel Programming with OpenMP

Sri Lanka - Parallel Programming with OpenMP

Bulgaria - Parallel Programming with OpenMP

Bolivia - Parallel Programming with OpenMP

Indonesia - Parallel Programming with OpenMP

Kazakhstan - Parallel Programming with OpenMP

Moldova - Parallel Programming with OpenMP

Morocco - Parallel Programming with OpenMP

Tunisia - Parallel Programming with OpenMP

Kuwait - Parallel Programming with OpenMP

Oman - Parallel Programming with OpenMP

Slovakia - Parallel Programming with OpenMP

Kenya - Parallel Programming with OpenMP

Nigeria - Parallel Programming with OpenMP

Botswana - Parallel Programming with OpenMP

Slovenia - Parallel Programming with OpenMP

Croatia - Parallel Programming with OpenMP

Serbia - Parallel Programming with OpenMP

Bhutan - Parallel Programming with OpenMP

Nepal - Parallel Programming with OpenMP

Uzbekistan - Parallel Programming with OpenMP