ロゴ
ユニオンペディア
コミュニケーション
Google Play で手に入れよう
新しい! あなたのAndroid™デバイスでユニオンペディアをダウンロードしてください!
インストール
ブラウザよりも高速アクセス!
 

C++ AMP

索引 C++ AMP

C++ AMP (C++ Accelerated Massive Parallelism) とは、マイクロソフトが中心になって開発している、演算アクセラレータを活用した並列プログラミングのためのC++言語拡張およびライブラリである。バックエンドとしてDirectCompute (DirectX) やOpenCLなどを使用した実装が存在している。C++ AMPによって、DirectComputeやOpenCLよりも高レベルの並列プログラミングAPIが提供される。.

23 関係: 並列化中間言語マイクロソフトプロプライエタリ・ソフトウェアアプリケーションプログラミングインタフェースアドバンスト・マイクロ・デバイセズアクセラレータC++C++11CUDA無名関数Direct3DDirectComputeGPGPULinuxMacOSMicrosoft Developer NetworkMicrosoft DirectXMicrosoft Visual C++Microsoft Visual StudioMicrosoft WindowsOpenCLOpenMP

並列化

並列化(へいれつか)は、コンピュータにおいて、同時に複数の演算処理を実行すること(並列計算)によって処理のスループットを上げるプログラミング手法である。.

新しい!!: C++ AMPと並列化 · 続きを見る »

中間言語

中間言語(Pivot language)は、任意の言語を異なる任意の言語へ翻訳する際に利用する中間的な人工言語もしくは自然言語である。.

新しい!!: C++ AMPと中間言語 · 続きを見る »

マイクロソフト

マイクロソフト()は、アメリカ合衆国ワシントン州に本社を置く、ソフトウェアを開発・販売する会社である。1975年4月4日にビル・ゲイツとポール・アレンらによって設立された。.

新しい!!: C++ AMPとマイクロソフト · 続きを見る »

プロプライエタリ・ソフトウェア

プロプライエタリ・ソフトウェア(英: proprietary software)または私有ソフトウェア(しゆう-)とは、ソフトウェアの入手、使用、改変、複製などに関する権利を議論する文脈で用いられるソフトウェアの種類についての用語。プロプライエタリ・ソフトウェアとは、ソフトウェアの配布者が、利用者の持つ権利を制限的にすることで自身や利用者の利益およびセキュリティを保持しようとするソフトウェアを指す。制限には法的手法や技術的手法など様々な方法がある。技術的制限手法としては、バイナリ実行コードのみを使用者に提供し、ソースコードは公開しないというソフトウェア流通の方法がある。法的制限手法としては、著作権や特許権、不正競争防止法、国家機密及びそれに基づくソフトウェアライセンス許諾といった方法がある。.

新しい!!: C++ AMPとプロプライエタリ・ソフトウェア · 続きを見る »

アプリケーションプログラミングインタフェース

アプリケーションプログラミングインタフェース(、)とは、広義の意味ではソフトウェアコンポーネントが互いにやりとりするのに使用するインタフェースの仕様である。 APIには、サブルーチン、データ構造、オブジェクトクラス、変数などの仕様が含まれる。APIには様々な形態があり、POSIXのような国際規格、マイクロソフトのWindows APIのようなベンダーによる文書、プログラミング言語のライブラリ(例えば、C++のStandard Template Libraryやなど)がある。 商業的に使われる狭義の意味ではOSやミドルウェアやWebサービス等サービスを利用するアプリケーション(Application)を作成する(Programming)ためのインターフェース(Interface)である。こちらの意味ではサービスから提供されないStandard Template Libraryなど言語の標準ライブラリーは含まない。 APIはApplication Binary Interface (ABI) とは異なる。APIはソースコードベースだが、ABIはバイナリインタフェースである。例えば、POSIXはAPIだが、Linux Standard Base (LSB) はABIである(LSBはいろいろな規定の集合なので、正確には「LSBには、ABIにまで踏み込んでいる部分もある」)。.

新しい!!: C++ AMPとアプリケーションプログラミングインタフェース · 続きを見る »

アドバンスト・マイクロ・デバイセズ

アドバンスト・マイクロ・デバイセズ(Advanced Micro Devices, Inc.

新しい!!: C++ AMPとアドバンスト・マイクロ・デバイセズ · 続きを見る »

アクセラレータ

アクセラレータまたはアクセラレーター(accelerator)とは、加速させる物のこと。.

新しい!!: C++ AMPとアクセラレータ · 続きを見る »

C++

C++(シープラスプラス)は、汎用プログラミング言語の一つである。日本語では略してシープラプラ、シープラなどとも呼ばれる。.

新しい!!: C++ AMPとC++ · 続きを見る »

C++11

C++11は、プログラミング言語 C++ のISO標準 ISO/IEC 14882:2011 の略称である。規格の策定中は2009年中の標準化を目指していたため、C++0x という仮称で呼ばれていた。 ISO/IEC 14882:2003 (C++03) に代わるものとして、2011年8月12日にISOによって承認された。後継のC++14が2014年8月18日に承認されている。 コア言語への機能追加や標準C++ライブラリの拡張を施し、C++TR1ライブラリの大部分を(数学的特殊関数ライブラリを除いて)取り込んでいる。.

新しい!!: C++ AMPとC++11 · 続きを見る »

CUDA

CUDA(Compute Unified Device Architecture:クーダ)とは、NVIDIAが開発・提供している、GPU向けの汎用並列コンピューティングプラットフォーム(並列コンピューティングアーキテクチャ)およびプログラミングモデルである。専用のC/C++コンパイラ (nvcc) やライブラリ (API) などが提供されている。なおNVIDIA製GPUにおいては、OpenCL/DirectComputeなどの類似APIコールは、すべて共通のGPGPUプラットフォームであるCUDAを経由することになる。.

新しい!!: C++ AMPとCUDA · 続きを見る »

無名関数

無名関数(anonymous functionあるいはnameless function)とは、名前付けされずに定義された関数のことである。無名関数を表現するための方法には様々なものがあるが、近年主流となっているのはラムダ式による記法である。無名関数を表現するリテラル式は、関数リテラル (function literal) とも呼ばれる。値がある場合は関数オブジェクトであるものが多い。.

新しい!!: C++ AMPと無名関数 · 続きを見る »

Direct3D

Direct3Dは、3Dグラフィックスを描画するためのAPIである。マイクロソフトのDirectXの一部であり、様々なWindows(主にWindows 95以上)で動作し、さらに、家庭用ゲーム機であるXbox、Xbox 360およびXbox OneのグラフィックスAPIのベースでもある。.

新しい!!: C++ AMPとDirect3D · 続きを見る »

DirectCompute

Microsoft DirectCompute (マイクロソフト・ダイレクトコンピュート) は、Microsoft Windows OS上で"General-Purpose computing on Graphics Processing Unit" (GPGPU) をサポートするためのアプリケーション・プログラミング・インターフェイス(API)の1つである。.

新しい!!: C++ AMPとDirectCompute · 続きを見る »

GPGPU

GPGPU(General-purpose computing on graphics processing units; GPUによる汎用計算)とは、GPUの演算資源を画像処理以外の目的に応用する技術のことである 。.

新しい!!: C++ AMPとGPGPU · 続きを見る »

Linux

Linux(リナックス、他の読みは後述)とは、Unix系オペレーティングシステムカーネルであるLinuxカーネル、およびそれをカーネルとして周辺を整備したシステム(GNU/Linuxシステムも参照)である。.

新しい!!: C++ AMPとLinux · 続きを見る »

MacOS

macOS(マックオーエス)は、アップルが開発・販売する、Macのオペレーティングシステムである。かつての名称はOS X、Mac OS Xであった(後述)。 技術的に直系ではないが、Classic Mac OS (Mac OS、System) の後継として、新たにBSD系UNIXをベースに開発された。.

新しい!!: C++ AMPとMacOS · 続きを見る »

Microsoft Developer Network

Microsoft Developer Network (ディベロッパーネットワーク、MSDN) とは、マイクロソフトの開発者ネットワークであり同社が開発者向けに提供するサービスの総称。.

新しい!!: C++ AMPとMicrosoft Developer Network · 続きを見る »

Microsoft DirectX

Microsoft DirectX(ダイレクトエックス)は、マイクロソフトが開発したゲーム・マルチメディア処理用のAPIの集合である。オーバーヘッドを少なくしたデバイスの仮想化・抽象化を提供する。Windows・Xbox・Xbox 360・Xbox Oneなど、マイクロソフト製のプラットフォームおよびデバイスにおいて広く利用されている。グラフィックスに関しては、DirectX (Direct3D) 互換のビデオカードを利用することにより、高品質の2次元・3次元コンピュータグラフィックスを高速にレンダリングできる。.

新しい!!: C++ AMPとMicrosoft DirectX · 続きを見る »

Microsoft Visual C++

Visual C++ (マイクロソフト ビジュアル シープラスプラス;マイクロソフト ヴィジュアル シープラスプラス)とはマイクロソフト製のC、C++、C++/CLI用統合開発環境 (IDE) であり、コンパイラやデバッガを含む。通称VCあるいはVC++、MSVCなど。前身はMicrosoft C/C++などである。.

新しい!!: C++ AMPとMicrosoft Visual C++ · 続きを見る »

Microsoft Visual Studio

Microsoft Visual Studio(マイクロソフト ビジュアル スタジオ)はマイクロソフトのソフトウェア開発製品群およびそれらを管理する統合開発環境である。.

新しい!!: C++ AMPとMicrosoft Visual Studio · 続きを見る »

Microsoft Windows

Microsoft Windows(マイクロソフト ウィンドウズ)は、マイクロソフトが開発・販売するオペレーティングシステム (OS) の製品群。グラフィカルユーザインタフェース (GUI)を採用している。.

新しい!!: C++ AMPとMicrosoft Windows · 続きを見る »

OpenCL

OpenCL(オープンシーエル、)は、OpenCL C言語による、マルチコアCPUやGPU、Cellプロセッサ、DSPなどによる異種混在の計算資源(ヘテロジニアス環境、ヘテロジニアス・コンピューティング、)を利用した並列コンピューティングのためのクロスプラットフォームなフレームワークである。用途には高性能計算サーバやパーソナルコンピュータのシステムのほか、携帯機器などでの利用も想定されており、組み込みシステム向けに必要条件を下げたOpenCL Embedded Profileが存在する。.

新しい!!: C++ AMPとOpenCL · 続きを見る »

OpenMP

OpenMPは、並列コンピューティング環境を利用するために用いられる標準化された基盤。OpenMPは主に共有メモリ型並列計算機で用いられる。 MPIでは明示的にメッセージの交換をプログラム中に記述しなければならないが、OpenMPはOpenMPが使用できない環境では無視されるディレクティブを挿入することによって並列化を行う。このため並列環境と非並列環境でほぼ同一のソースコードを使用できるという利点がある。 また、プラットフォーム固有のスレッドAPIを使わず、コンパイラによって暗黙的に生成されたスレッドプールを利用してタスクを振り分けることになるため、並列プログラムを簡潔に記述できるだけでなく、複数の環境に移植しやすくなる。 MPIとの比較では、OpenMPは異なるスレッドが同一のデータを同じアドレスで参照できるのに対して、MPIでは明示的にメッセージ交換を行わなければならない。そのためSMP環境においては大きなデータの移動を行なわずにすむので高い効率が期待できる。ただし並列化の効率はコンパイラに依存するのでチューニングによる性能改善がMPIほど高くならないという問題がある。また、。 現在FORTRANとC/C++について標準化が行われている。.

新しい!!: C++ AMPとOpenMP · 続きを見る »

出ていきます入ってきます
ヘイ!私たちは今、Facebook上です! »