AMD_Streamとは何? わかりやすく解説 Weblio辞書 (original) (raw)
AMD APP SDK
| 開発元 | AMD |
|---|---|
| 最新版 | 3.0 / 2015年8月25日 (8年前) (2015-08-25) |
| 最新評価版 | 3.0 Beta / 2014年12月9日 (8年前) (2014-12-09) |
| 対応OS | Microsoft Windows、Linux |
| 種別 | ソフトウェア開発キット |
| 公式サイト | APP SDK - A Complete Development Platform - AMD |
| テンプレートを表示 |
AMD Accelerated Parallel Processing (AMD APP : エーエムディー・エーピーピー) とは、AMDによる、同社製CPU/GPU/APU向けの並列コンピューティング基盤テクノロジーである。AMD APP環境向けのソフトウェア開発キットとして、AMD APP SDKが公開されている。
同テクノロジーおよび開発キットの初期の名称はATI StreamおよびATI Stream SDKであり[1]、ATIがAMDに買収された後、ATIブランドが存続している間は使われ続けていたが、その後ATIブランドの消滅・統合[2]とともにAMD Stream/AMD APPおよびAMD APP SDKに名称変更されている。
概要
AMD Stream (ATI Stream) SDKはスタンフォード大学で開発されたBrook言語をベースとして構築されたBrook+と、ランタイムを含む抽象化レイヤーとしてハードウェアの制御を行なうATI Compute Abstraction Layer (CAL) [3]によって構成されたGPGPU対応ソフトウェア開発用プラットフォームである。AMD Stream (ATI Stream) はGPGPUの実行基盤テクノロジーを指し、競合となるNVIDIAのCUDAに近い意味合いを持つ[4]。ATI Streamのリリース当初はAMD FireStreamシリーズ専用の開発・実行環境だったが、のちにAMD RadeonでもAMD Catalyst 8.12以降のドライバーを導入することでGPGPUソフトウェアを開発・実行できるようになった[5]。
なお2015年現在のAMD APPは、AMD社が注力・推進しているヘテロジニアス環境(HSA)の標準API規格であるOpenCLを中核とする開発・実行環境にシフトしている。AMD APPプラットフォームにおけるOpenCLは、同社製のAMD RadeonやAMD FireProといったGPUのほか、AMD FXシリーズのようなCPU、およびAMD AシリーズのようなAPUを総括的にサポートする[6]。
AMD APP SDKは、バージョン3.0時点でOpenCL 2.0[7]、およびSPIR(英語版) 1.2に対応している[8] [9]。
なお、AMD OpenCL 2.0ドライバーはGCN第1世代以降のAMDグラフィックス製品と互換性がある[10]。
ライブラリ
AMD APPに関連して、AMDはGPGPU対応のライブラリをいくつか開発・公開している。
clMath
OpenCLベースのBLAS/FFTライブラリ(clBLAS/clFFT)[11]。かつてAccelerated Parallel Processing Math Libraries (APPML) としてバイナリのみが公開されていたが、clMathはGitHubで公開されている。Microsoft Windows、Linux、Mac OS Xに対応している[12][13]。
Bolt
STL互換のC++並列アルゴリズムライブラリ[14]。GitHubで公開されている[15]。二分探索、ソート、リダクション、スキャンなどのアルゴリズムが実装されている。OpenCL版とC++ AMP版が存在するが、バージョン1.3時点でWindows (Visual C++) とLinux (GCC) のみに対応しており、またAMDハードウェアのみをサポートしている。
脚注
[脚注の使い方]
- ^ ASCII.jp:OpenCLでCUDAを追撃!? AMD「ATI Stream」が狙うものは
- ^ 【PC Watch】 AMD、今年中にATIブランドをAMDブランドに統合
- ^ AMD CAL Programming Guide v2.0[_リンク切れ_]
- ^ AMDのGPGPU戦略は新章へ - ATI Streamの展望、DirectX Compute Shaderの衝撃 (2) ATI Streamとは? | マイナビニュース
- ^ AMDのGPGPU戦略は新章へ - ATI Streamの展望、DirectX Compute Shaderの衝撃 (1) Radeon HD 4000シリーズでネイティブGPGPU | マイナビニュース
- ^ Getting Started with OpenCL™ - AMD[_リンク切れ_]
- ^ APP SDK - A Complete Development Platform - AMD[_リンク切れ_]
- ^ AMD's APP SDK 3.0 Beta with OpenCL 2.0 support[_リンク切れ_]
- ^ AMD APP SDK v3.0 Beta Developer Release Notes[_リンク切れ_]
- ^ AMD OpenCL™ 2.0 Driver[_リンク切れ_]
- ^ clMath - AMD[_リンク切れ_]
- ^ clMathLibraries/clFFT · GitHub
- ^ clMathLibraries/clBLAS · GitHub
- ^ Bolt C++ Template Library - AMD[_リンク切れ_]
- ^ HSA-Libraries/Bolt · GitHub
関連項目
- AMD
- ATI
- AMD Catalyst
- OpenCL
- GPGPU
- AMD Radeon
- AMD FirePro
- AMD FireStream
- AMD APU (AMD Accelerated Processing Unit, AMD Fusion APU, AMD Fusion)
- HSA (Heterogeneous System Architecture)
- GCN (Graphics Core Next)
- ストリームプロセッシング
- ユニファイドメモリアーキテクチャ
- hUMA (heterogeneous Uniform Memory Access)
- en:Uniform memory access (英語版)
- en:Shared memory architecture (英語版)
- en:Close to Metal (英語版)
- en:BrookGPU (英語版)
- en:AMD Accelerated Processing Unit (英語版)
- CUDA
| この項目は、コンピュータに関連した書きかけの項目です。この項目を加筆・訂正などしてくださる協力者を求めています(PJ:コンピュータ/P:コンピュータ)。 |
|---|
| 表 話 編 歴 並列計算 | |
|---|---|
| 総論 | クラウドコンピューティング グリッド・コンピューティング 高性能計算 コンピュータ・クラスター 分散コンピューティング |
| 並列レベル | タスク データ ビット 命令 |
| スレッド | スーパースレッディング(英語版) ハイパースレッディング |
| 理論 | アムダールの法則 グスタフソンの法則 コスト効率性(英語版) Karp-Flatt metric(英語版) Parallel slowdown(英語版) Speedup(英語版) |
| 要素 | スレッド ファイバー プロセス PRAM Instruction window(英語版) |
| 調整 | キャッシュコヒーレンシ 同期 バリア マルチスレッディング マルチプロセッシング メモリコヒーレンス Cache invalidation(英語版) Application checkpointing(英語版) |
| プログラミング | スレッド (コンピュータ) 並列プログラミングモデル Implicit parallelism(英語版) Explicit parallelism(英語版) 並行性 フリンの分類 SISD SIMD MISD MIMD SPMD(英語版) Lock-freeとWait-freeアルゴリズム |
| ハードウェア | スーパーコンピュータ スーパースカラー ベクトル計算機 マルチプロセッシング 対称型 非対称型 マルチコア メモリ NUMA en:COMA en:分散型 共有型 分散共有型 SMT MPP Beowulf |
| API | Ateji PX(英語版) Boostスレッド C++ AMP Charm++(英語版) Cilk(英語版) Coarray Fortran(英語版) CUDA Dryad(英語版) Global Arrays(英語版) Intel Cilk Plus(英語版) Intel Threading Building Blocks MPI OpenACC OpenCL OpenHMPP(英語版) OpenMP PVM POSIXスレッド UPC |
| 問題 | en:Embarrassingly parallel en:Grand Challenge en:Software lockout |
| 並行計算 カテゴリ:並行計算 カテゴリ:並列コンピューティング |