OpenCLとOpenGLの違いは何ですか?


ベストアンサー

私はコンピュータグラフィックスアプリケーションでOpenGLを10年近く使用しています。

OpenGLは主にコンピュータグラフィックスに使用され、グラフィックスAPIです。 OpenCLは主に並列計算に使用され、計算APIです。

OpenGLを使用して、OpenCLで通常解決するいくつかの問題を解決できますが、計算を実行するには、問題をグラフィックスコンテキストにマッピングする必要があります。

非レンダリングタスクにOpenGLを選択する主な理由は、OpenCLを実行できない古いハードウェアをサポートするためです。

オープングラフィックライブラリ OpenGL )はクロスランゲージクロスプラットフォーム 2Dをレンダリングするためのアプリケーションプログラミングインターフェイス(API)および 3D ベクターグラフィックス。APIは通常、

グラフィックス処理ユニット(GPU)、ハードウェアアクセラレーション レンダリング

Silicon Graphics Inc。、(SGI) 1991年にOpenGLの開発を開始し、1992年1月にリリースしました。アプリケーションは、コンピューター支援設計(CAD)、仮想現実の分野で広く使用されています。 、科学的視覚化、情報視覚化、飛行シミュレーションビデオゲーム。 OpenGLは、非営利テクノロジーコンソーシアム クロノスグループ。 (Wikipedia OpenGL から)

オープンコンピューティング言語 OpenCL )は、<全体で実行されるプログラムを作成するためのフレームワークです。 中央処理装置(CPU)、グラフィックス処理装置で構成される/ div>異種プラットフォーム(GPU)、デジタルシグナルプロセッサ( DSP )、フィールドでプログラム可能なゲートアレイ(FPGA)およびその他のプロセッサまたはハードウェアアクセラレータ。 OpenCLは、これらのデバイスとアプリケーションプログラミングインターフェイスをプログラミングするための言語( C99 に基づく)を指定します( API)プラットフォームを制御し、コンピューティングデバイスでプログラムを実行します。 OpenCLは、タスクベースおよびデータベースの並列処理を使用した並列コンピューティングの標準インターフェースを提供します。 OpenCLは、非営利テクノロジーコンソーシアム Khronos Group によって維持されているオープンスタンダードです。 (ウィキペディアから OpenCL

回答

名前の類似性に加えて、それらは非常に異なる獣です。 OpenCLはOpenComputingLanguageの略です。これは、GPUまたはCPUで並行して動作できるプログラムカーネルを作成できるようにする言語です。 OpenCLは通常、画像処理アルゴリズム、物理シミュレーションに使用され、数値結果を返します。言い換えると、OpenCLプログラムの出力は本質的にグラフィカルではありません。

対照的に、OpenGLはレンダリングコマンドをGPUに送信できるグラフィカルAPIです。通常、目標はレンダリングを画面に表示することです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です