C++ AMP (C++ Accelerated Massive Parallelism)

C++ AMP (C++ 加速大規模平行處理原則)利用個別圖形卡片上通常以圖形處理單位 (GPU) 的形式呈現的資料平行硬體,加速 C++ 程式碼的執行。 C++ AMP 程式設計模型包含多維度陣列、索引編制、記憶體傳輸和並排的支援。 它也包含數學函式程式庫。 您可以使用 C++ AMP 語言延伸模組來控制資料從 CPU 移至 GPU 和返回的方式。

注意

從 Visual Studio 2022 17.0 版開始,C++ AMP 標頭已被取代。 包含任何 AMP 標頭將會產生建置錯誤。 先定義 _SILENCE_AMP_DEPRECATION_WARNINGS ,再包含任何 AMP 標頭以讓警告無聲。

標題 描述
C++ AMP 概觀 描述 C++ AMP 和數學程式庫的主要功能。
使用 Lambda、函式物件和限制函式 描述如何在呼叫 parallel_for_each 方法時使用 Lambda 運算式、函式物件和受限制的 函式
使用磚 描述如何使用磚加速您的 C++ AMP 程式碼。
使用 accelerator 和 accelerator_view 物件 描述如何使用加速器來自訂 GPU 上程式碼的執行。
在 UWP 應用程式中使用 C++ AMP 描述如何在使用 Windows 執行階段 類型的 通用 Windows 平臺 (UWP) 應用程式中使用 C++ AMP。
圖形 (C++ AMP) 描述如何使用 C++ AMP 圖形庫。
逐步解說:矩陣乘法 示範使用 C++ AMP 程式碼和並排的矩陣乘法。
逐步解說:偵錯 C++ AMP 應用程式 說明如何建立及偵錯使用平行縮減來加總大型整數陣列的應用程式。

參考

參考 (C++ AMP)
tile_static 關鍵字
restrict (C++ AMP)

其他資源

原生程式碼部落格中的平行程式設計
要下載的 C++ AMP 範例專案
使用並行視覺化檢視分析 C++ AMP 程式碼