使用 OpenACC 進行 GPU 程式設計培訓
OpenACC 是一個異構程式設計的開放標準,讓程式碼能在不同的平台和裝置上執行,例如多核 CPU、GPU、FPGA 等。
此由導師主導的培訓課程(線上或線下)專為初級至中級的開發人員設計,讓他們學習如何使用 OpenACC 為異構裝置撰寫程式並發揮其平行運算能力。
完成本培訓後,參與者將能夠:
- 建置 OpenACC 開發環境。
- 編寫並執行基本的 OpenACC 程式。
- 以 OpenACC 指示詞與子句注解程式碼。
- 使用 OpenACC API 與函式庫。
- 為 OpenACC 程式進行效能分析、除錯與最佳化。
課程形式
- 互動式講授與討論。
- 大量的練習與實作。
- 在即時實驗室環境中進行實作演練。
客製化選項
- 如需針對此課程要求客製化培訓,請聯繫我們以安排。
課程簡介
簡介
- 什麼是 OpenACC?
- OpenACC 與 OpenCL、CUDA、SYCL 的比較
- OpenACC 功能與架構概覽
- 設定開發環境
入門
- 在 Visual Studio Code 中建立 OpenACC 專案
- 探索專案結構與檔案
- 編譯並執行程式
- 使用 printf 與 fprintf 顯示輸出結果
OpenACC 指示詞與子句
- 了解 OpenACC 指示詞與子句
- 使用平行指示詞建立平行區域
- 使用 kernels 指示詞以進行編譯器管理的平行化
- 使用 loop 指示詞平行化迴圈
- 以 data 指示詞管理資料移動
- 以 update 指示詞同步化資料
- 以 cache 指示詞提升資料重用率
- 以 routine 指示詞建立裝置函式
- 以 wait 指示詞同步化事件
OpenACC API
- 了解 OpenACC API 的角色
- 查詢裝置資訊與功能
- 設定裝置號碼與類型
- 處理錯誤與例外狀況
- 建立並同步化事件
OpenACC 函式庫與互操作性
- 了解 OpenACC 函式庫與互操作性
- 使用數學、隨機數與複雜數列函式庫
- 與其他模型整合(CUDA、OpenMP、MPI)
- 與 GPU 函式庫整合(cuBLAS、cuFFT)
OpenACC 工具
- 了解 OpenACC 在開發中的應用
- 為 OpenACC 程式進行效能分析與除錯
- 使用 PGI 編譯器、NVIDIA Nsight Systems、Allinea Forge 進行效能分析
最佳化
- 影響 OpenACC 程式效能的因素
- 最佳化資料局部性並減少傳輸
- 最佳化迴圈平行化與合併
- 最佳化核心平行化與合併
- 最佳化向量化與自動調參
總結與下一步
最低要求
- 了解 C/C++ 或 Fortran 語言以及平行程式設計的概念
- 具備電腦架構與記憶體階層的基礎知識
- 熟悉指令列工具與程式碼編輯器
受眾
- 希望學習如何使用 OpenACC 為異構裝置撰寫程式並發揮其平行運算能力的開發人員
- 希望編寫可在不同平台與裝置上執行的可攜式且具擴充性的程式碼的開發人員
- 希望探索異構程式設計高階層面,並提升程式生產力的程式設計師
公開培訓課程需要5名以上參與者。
使用 OpenACC 進行 GPU 程式設計培訓 - 訂單
使用 OpenACC 進行 GPU 程式設計培訓 - 詢問
使用 OpenACC 進行 GPU 程式設計 - 咨詢詢問
即將到來的課程
相關課程
使用華為昇騰和CANN開發AI應用
21 小時華為昇騰是一系列專為高性能推理與訓練設計的AI處理器。
本課程由講師進行實時授課(線上或線下),旨在幫助初級以上的人工智能工程師及數據科學家,利用華為昇騰平台和CANN工具包開發及優化神經網絡模型。
完成本培訓後,學員將能夠:
- 設置並配置CANN開發環境。
- 使用MindSpore和CloudMatrix工作流開發AI應用。
- 使用自定義算子和分塊技術優化昇騰NPU的性能。
- 將模型部署至邊緣或雲端環境。
課程格式
- 互動式授課與討論。
- 在樣本應用中實踐操作華為昇騰和CANN工具包。
- 聚焦於模型構建、訓練及部署的引導式練習。
課程自定義選項
- 如需根據您的基礎設施或數據集為本課程要求客製化培訓,請聯繫我們進行安排。
使用 CANN 和昇騰 AI 處理器部署 AI 模型
14 小時CANN(神經網絡計算架構)是華為專為在昇騰 AI 處理器上部署和优化 AI 模型而設計的 AI 計算棧。
本課程由導師指導,提供線上或線下直播培訓形式,主要面向希望使用 CANN 工具包及 MindSpore、TensorFlow 或 PyTorch 等工具,高效地將訓練好的 AI 模型部署到華為昇騰硬件上的中級 AI 開發人員和工程師。
通過本課程的學習,參與者將能夠:
- 理解 CANN 架構及其在 AI 部署流程中的作用。
- 將來自主流框架的模型轉換並適應為昇騰兼容格式。
- 使用 ATC、OM 模型轉換和 MindSpore 等工具進行端側和雲側推理。
- 診斷部署問題並優化昇騰硬件上的性能。
課程形式
- 互動式講授與演示。
- 使用 CANN 工具和昇騰模擬器或設備的實操實驗。
- 基於真實世界 AI 模型的實際部署場景。
課程客製化選項
- 如需申請本課程的客製化培訓,請聯繫我們進行安排。
使用 CloudMatrix 進行 AI 推論與部署
21 小時CloudMatrix 是華為統一的 AI 開發與部署平台,旨在支援可擴展的生產級推論流程。
本課程為實體或線上直播培訓(由導師主導),針對初學者至中階 AI 專業人士,協助他們使用整合 CANN 與 MindSpore 的 CloudMatrix 平台來部署並監控 AI 模型。
完成本培訓後,學員將能夠:
- 使用 CloudMatrix 進行模型封裝、部署及服務化。
- 為 Ascend 晶片組轉換並最佳化模型。
- 建立即時與批次推論任務的流程。
- 監控部署狀況,並在生產環境中微調效能。
課程形式
- 互動式講授與討論。
- 結合實際部署情境的 CloudMatrix 實作練習。
- 聚焦於轉換、最佳化及擴展的引導式練習。
課程客製化選項
- 若您希望根據自身的 AI 基礎架構或雲端環境,為此課程申請客製化培訓,請聯繫我們以安排。
Biren AI加速器的GPU編程
21 小時Biren AI加速器是專為AI和HPC工作負載設計的高效能GPU,支援大規模訓練與推論。
此培訓由專業講師主導,提供線上或線下課程(線上培訓或線下培訓),適合具備中高級開發經驗的開發人員,旨在教授如何使用Biren專屬GPU堆疊進行應用程式編程與優化,並與CUDA環境進行實務比較。
完成本課程後,學員將能夠:
- 理解Biren GPU架構與記憶體層級。
- 設定開發環境,並使用Biren的編程模型。
- 移植並優化CUDA風格程式碼至Biren平台。
- 應用效能調校除錯技術。
課程格式
- 互動式講授與討論。
- 透過範例GPU工作負載實際操作Biren SDK。
- 引導練習,專注於移植與效能調優。
課程客製化選項
- 如需基於您的應用程式堆疊或整合需求,為本課程請求客製化培訓,請聯繫我們安排。
使用 BANGPy 和 Neuware 進行寒武紀 MLU 開發
21 小時寒武紀 MLU(機器學習單元)是專為邊緣運算和數據中心場景中的推論與訓練而優化的 AI 晶片。
本課程由講師帶領,提供線上或線下直播培訓,適合希望利用 BANGPy 框架和 Neuware SDK 在寒武紀 MLU 硬體上構建及部署 AI 模型的初級開發人員。
完成此培訓後,參與者將能夠:
- 設置並配置 BANGPy 和 Neuware 開發環境。
- 為寒武紀 MLU 開發並優化基於 Python 和 C++ 的模型。
- 將模型部署到運行 Neuware 運行時的邊緣設備及數據中心設備上。
- 將機器學習工作流程與針對 MLU 專屬加速功能進行整合。
課程格式
- 互動式講授與討論。
- 實際操作使用 BANGPy 和 Neuware 進行開發與部署。
- 重點指導優化、整合及測試的練習。
課程客製化選項
- 如需基於您的寒武紀設備型號或使用案例申請本課程的客製化培訓,請聯繫我們以安排事宜。
CANN for AI Framework Developers 入門
7 小時CANN(Compute Architecture for Neural Networks)是華為的AI計算工具包,用於在昇騰AI處理器上編譯、優化並部署AI模型。
此課程為導師帶領的實地培訓(線上或線下)。對象為初級AI開發人員,旨在讓他們了解CANN如何融入從訓練到部署的整個模型生命週期,以及它如何與MindSpore、TensorFlow和PyTorch等框架協作。
完成此培訓後,學員將能夠:
- 理解CANN工具包的宗旨與架構。
- 使用CANN和MindSpore設置開發環境。
- 將簡單的AI模型轉換並部署至昇騰硬體。
- 獲得未來進行CANN優化或整合專案的基礎知識。
課程形式
- 互動式講授與討論。
- 結合簡單模型部署的實作演練。
- CANN工具鏈及其整合點的逐步解說。
課程客製化選項
- 如需為本課程要求客製化培訓,請聯繫我們以安排。
CANN 邊緣 AI 部署
14 小時華為的 Ascend CANN 套件讓 Ascend 310 等邊緣設備能夠進行強大的 AI 推理。CANN 提供編譯、優化與部署模型所必需的essential工具,適用於運算能力和記憶體受限的環境。
這堂由講師主導的培訓課程(線上或線下),旨在協助初級至中級的 AI 開發人員與整合專家,學習如何使用 CANN 工具鏈在 Ascend 邊緣設備上部署並優化模型。
完成本課程後,學員將能夠:
- 使用 CANN 工具準備並轉換 AI 模型以供 Ascend 310 使用。
- 利用 MindSpore Lite 和 AscendCL 建立輕量級推理管線。
- 為受限的運算與記憶體環境優化模型效能。
- 在真實世界的邊緣應用場景中部署並監控 AI 應用程式。
課程格式
- 互動式講授與示範。
- 針對邊緣特定模型與情境的實作實驗。
- 在虛擬或實體邊緣硬體上的即時部署範例。
課程客製化選項
- 如需為此課程申請客製化培訓,請聯繫我們以安排相關事宜。
理解華為的 AI 計算堆疊:從 CANN 到 MindSpore
14 小時華為的 AI 堆疊——從底層的 CANN SDK 到高階的 MindSpore 框架——提供了一個緊密整合的 AI 開發與部署環境,並針對昇騰硬體進行了最佳化。
本課程由導師進行 live 培訓(線上或線下),旨在幫助初級至中級技術專業人士了解 CANN 和 MindSpore 組件如何協同工作,以支援 AI 生命週期管理和基礎設施決策。
參加完本課程後,學員將能夠:
- 理解華為 AI 計算堆疊的分層架構。
- 識別 CANN 如何支援模型最佳化及硬體級別的部署。
- 評估 MindSpore 框架及其工具鏈相對於業界其他選擇的優勢。
- 將華為的 AI 堆疊定位於企業或雲端/本機環境中。
課程形式
- 互動式講授與討論。
- live 系統演示和基於案例的逐步解說。
- 可選的引導式實驗,展示從 MindSpore 到 CANN 的模型流程。
課程客製化選項
- 如需為本課程申請客製化培訓,請聯繫我們以安排。
利用 CANN SDK 優化神經網路效能
14 小時CANN SDK(Compute Architecture for Neural Networks,神經網路計算架構)是華為的 AI 運算基礎設施,讓開發者能夠微調並最佳化部署於昇騰(Ascend)AI 處理器的神經網路效能。
本課程由講師帶隊進行,提供線上或線下培訓。目標對象為希望使用 CANN 進階工具組(包括圖形引擎、TIK 與自訂運算子開發)來最佳化推論效能的高階 AI 開發者與系統工程師。
完成本課程後,參與者將能夠:
- 理解 CANN 的執行階段架構與效能生命週期。
- 使用剖析工具與圖形引擎進行效能分析與最佳化。
- 使用 TIK 和 TVM 建立並最佳化自訂運算子。
- 解決記憶體瓶頸,並提升模型吞吐量。
課程形式
- 互動式講授與討論。
- 實作實驗室,包含即時剖析與運算子微調。
- 透過邊緣部署範例進行最佳化練習。
課程客製化選項
- 如需針對本課程進行客製化培訓,請聯繫我們以安排。
CANN SDK 用於電腦視覺與自然語言處理管線
14 小時CANN SDK(神經網路計算架構)為電腦視覺和 NLP 的即時 AI 應用提供強大的部署與優化工具,特別是在華為昇騰硬體上。
這項由講師指導的現場培訓(線上或線下),旨在幫助中階 AI 從業人員使用 CANN SDK 建立、部署及優化視覺與語言模型,以滿足生產用例需求。
完成本課程後,學員將能夠:
- 使用 CANN 和 AscendCL 部署並優化 CV 和 NLP 模型。
- 使用 CANN 工具轉換模型,並將它們整合到即時管線中。
- 優化檢測、分類及情感分析等任務的推論效能。
- 為邊緣或雲端部署場景建立實時的 CV/NLP 管線。
課程格式
- 互動式講授與示範。
- 實作實驗室,包含模型部署與效能分析。
- 使用真實 CV 和 NLP 用例設計即時管線。
課程客製化選項
- 如需為本課程請求客製化培訓,請聯絡我們安排。
使用 CANN TIK 和 TVM 構建自訂 AI 運算元
14 小時CANN TIK(張量指令核心)與 Apache TVM 能夠針對華為 Ascend 硬體進行先進的 AI 模型運算元最佳化與客製化。
本課程提供講師指導及線上或線下即時培訓,目標受眾為進階系統開發人員,旨在協助其使用 CANN 的 TIK 程式設計模型與 TVM 編譯器整合功能,建立、部署並微調 AI 模型的自訂運算元。
完成本課程後,學員將能夠:
- 使用適用於 Ascend 處理器的 TIK DSL 撰寫並測試自訂 AI 運算元。
- 將自訂運算元整合至 CANN 執行階段與執行圖形。
- 使用 TVM 進行運算元排程、自動微調及基準測試。
- 除錯並最佳化自訂計算模式的指令層級效能。
課程格式
- 互動式講授與示範。
- 使用 TIK 和 TVM 管線進行運算元實作編碼。
- 在 Ascend 硬體或模擬器上進行測試與微調。
課程客製化選項
- 若需針對此課程申請客製化培訓,請聯繫我們安排。
將 CUDA 應用程式遷移至中國 GPU 架構
21 小時中國的 GPU 架構(如華為昇騰、必易科技及寒武紀 MLU)為當地 AI 和高性能運算市場提供了針對性的 CUDA 替代方案。
本課程由講師進行現場或線上實作培訓,旨在協助進階等級的 GPU 程式設計師和基礎設施專家遷移並優化現有的 CUDA 應用程式,以部署至中國硬體平台。
完成本培訓後,學員將能夠:
- 評估現有 CUDA 工作負載與中國晶片替代方案的相容性。
- 將 CUDA 程式碼庫移植至華為 CANN、必易科技 SDK 及寒武紀 BANGPy 環境。
- 比較不同平台的效能並找出優化點。
- 解決跨架構支援和部署中的實際挑戰。
課程格式
- 互動式講座與討論。
- 實作程式碼移植及效能比較實驗室。
- 指導式練習,專注於多 GPU 適應策略。
課程客製化選項
- 若需根據您的平台或 CUDA 專案申請此課程的客製化培訓,請聯繫我們進行安排。
Ascend、Biren與寒武紀的性能優化
21 小時Ascend、Biren和寒武紀是中國領先的AI硬體平台,各自提供獨特的加速和分析工具,以支援生產級別的AI工作負載。
本課程由講師現場授課,可採線上或線下方式進行。對象為進階級的AI基礎設施與效能工程師,旨在協助學員優化跨多個中國AI晶片平台的模型推理與訓練工作流程。
完成本課程後,學員將能夠:
- 在Ascend、Biren和寒武紀平台上對模型進行基準測試。
- 識別系統瓶頸及記憶體/運算效率低下之處。
- 套用圖層、核心層及運算子層級的優化策略。
- 調整部署流程,以提升吞吐量並降低延遲。
課程形式
- 互動式講授與討論。
- 動手使用各平台的分析與優化工具。
- 聚焦於實際調參場景的引導式練習。
課程自訂選項
- 若需根據您的效能環境或模型類型,為此課程安排客製化培訓,請聯繫我們以便安排。