OpenCL標準のリリースによるGPU高性能コンピューティングの支援

OpenCL標準のリリースによるGPU高性能コンピューティングの支援

OpenCL は、マルチコア CPU、GPU など、ホストのすべてのコンピューティング リソースを統一的に管理する、最もオープンで無料の汎用並列コンピューティング標準です。OpenCL はこれらのリソースをコンピューティング ユニットとして扱い、連携してさまざまなコンピューティング タスクを実行します。 OpenCL は、開発者が異種プラットフォームを使用して効率的なプログラムを簡単に作成できるようにする統合プログラミング環境です。 OpenCL は、サーバー、PC、ハンドヘルド デバイスなどで広く使用されます。

OpenCL 開発の歴史

OpenCL は 6 月に Apple から Khronos Group に初めて提出されました。これは、GPU 汎用コンピューティング ソフトウェアを開発するためのユニバーサル オープン API を提供することを目的とした業界標準化組織です。その後、クロノスは標準の策定を担当する「OpenCL ワーキング グループ」を設立しました。わずか数か月で、OpenCL は何もなかった状態から何かを生み出す状態へと変化しました。

OpenCLワーキンググループメンバー

OpenCL ワーキング グループのメンバーには、3Dlabs、AMD、Apple、ARM、Codeplay、Ericsson、Freescale、Graphic Remedy、IBM、Imagination Technologies、Intel、Nokia、NVIDIA、Motorola、QNX、Qualcomm、Samsung、Seaweed、Texas Instruments、スウェーデンの Umeå University が含まれます。 Intel、NVIDIA、AMD などの企業はこの標準を支持していますが、Microsoft はその中に含まれていません。

支持者として、Apple は来年リリースされる Mac OS X 10.6 Snow Leopard オペレーティング システムに OpenCL 標準を統合することを発表しました。実際、これは OpenCL 標準のリリースにとって重要な条件の 1 つでもあります。

NVIDIAとAMDがOpenCL 1.0標準の採用を発表

グラフィック チップの 2 大巨頭である NVIDIA は独自の CUDA アーキテクチャを持ち、AMD は独自の Stream Acceleration を持ち、また OpenCL もサポートしています。 OpenCL 標準がリリースされた後、AMD と NVIDIA はすぐに OpenCL 1.0 プログラミング仕様を採用すると発表しました。

AMD は、適切なコンパイラとランタイム ライブラリを無料の ATI Stream ソフトウェア開発キット (SDK) に統合します。 AMD は OpenCL の創始者の 1 社として、常に OpenCL を強く支持し、2009 年前半に OpenCL 1.0 をサポートする ATI Stream SDK の開発者バージョンの開発に全力を尽くしました。 NVIDIA はこれを GPU コンピューティング ツールキットに追加するため、両方のグラフィック カードで OpenCL 1.0 がサポートされることになります。長期的には、これら 2 つのベンダーが同じオープン仕様を共有することは、消費者にとって良いことです。

OpenCLはCUDAに取って代わるものではない

NVIDIA が最近推進している並列コンピューティング アーキテクチャである CUDA は、非常に優れた結果を達成しました。明らかに、ほとんどの読者は次のような疑問を抱いています。オープンな OpenCL 標準の導入により、CUDA はどこに向かうのでしょうか?

OpenCL 標準の開発者の 1 社として、NVIDIA は自ら墓穴を掘るほど愚かなことはしないはずです。実際、OpenCL ワーキング グループの現在の議長は、多くの OpenCL の開発を指導している NVIDIA の副社長です。この作業には NVIDIA の社員が多数携わっており、もちろん他社の開発者も多数います。 NVIDIA は OpenCL の誕生当初から Apple と緊密に連携してきました。 OpenCL の開発中、その技術プラットフォームは NVIDIA の GPU です。つまり、OpenCL は NVIDIA GPU プラットフォーム上で開発されています。約 2 か月前の最初の OpenCL デモ プラットフォームも NVIDIA の GPU でした。 NVIDIA は、OpenCL プログラムの実行を公開した最初の企業であると言えます。この観点から見ると、NVIDIA と OpenCL は非常に密接な関係にあります。

CUDA アーキテクチャ、C、OpenCL などをサポートします。

CUDA にとって最も重要な側面は 2 つあります。1 つは ISA 命令セット アーキテクチャであり、もう 1 つはハードウェア コンピューティング エンジンです。これら 2 つの側面が CUDA のアーキテクチャです。現時点では、CUDA には C 言語コンパイラが含まれています。それだけでなく、OpenCL や DirectX などの他の API もサポートできます。将来的には、Fortran、Java、Python など他の言語向けのインターフェースも登場する予定です。このアーキテクチャはネイティブであり、コンピューティングインターフェース専用に構築されたアーキテクチャであると言えます。

CUDA 命令セットと CUDA をサポートするハードウェアを使用すると、さまざまな方法を使用して GPU の計算能力を開発および利用できます。 OpenCL や DirectX などの API を使用して開発することも、C 言語、Fortran、Java を使用して開発することもできます。最終結果は同じです。

CUDA 用の OpenCL および C プログラミング モデル

もちろん、API と C 言語開発にはいくつかの違いがあります。プログラミング インターフェイスとしての API の中核は、関数ライブラリとアプリケーション開発のためのハードウェア インターフェイスです。その利点の 1 つは、低レベルのハードウェアにアクセスでき、ハードウェアをより適切に制御できることです。多くのこと、特にメモリ管理は、開発者自身が管理する必要があります。 CUDA C 言語でプログラミングする場合、多くのことが開発環境によって管理されます。たとえば、メモリはランタイムによって管理されるため、比較的簡単です。両者の関係は、低水準言語と高水準言語の関係に少し似ています。

プログラミングが OpenCL で行われるか CUDA C 言語で行われるかに関係なく、それらはすべてドライバーを介して PTX コードに変換する必要があります。 PTX は CUDA 命令セットと同等であり、実行のためにグラフィック プロセッサまたはハードウェアに渡されます。

OpenCL は、開発者、業界関係者、消費者にとって非常に優れた API です。これにより、開発者はクロスプラットフォームの GPU コンピューティング プログラムを簡単に開発し、GPU の強力なコンピューティング能力を最大限に活用して、さまざまな分野に適用できるようになります。 NVIDIA では、C 言語に加えて、OpenCL や DX11 などの新しい API が CUDA アーキテクチャに追加され、GPU コンピューティング開発環境にさらに多くのオプションが提供されています。開発者が API に精通している場合、OpenCL や新しい API が追加されると喜ぶことは間違いありません。これらの API を使用すると、さまざまな GPU コンピューティング プログラムを簡単に開発できるようになります。

簡単に言えば、OpenCL は単なる API、つまりプログラミング インターフェイスであり、CUDA アーキテクチャに有益な補足機能を提供します。実際、OpenCL は CUDA ドライバー スタックを使用して、NVIDIA GPU 上で高性能コンピューティングを実現します。 OpenCL 標準の導入により、CUDA はさらに強力になりました。

<<:  Nehalem のモバイル版は Core 2 Quad P1/P2 と命名されるのか?

>>:  新しい D0 ステッピング Core i7-975 の消費電力とオーバークロック性能に関する予備調査

推薦する

注意:ServerHubの無料ホスティングデータが漏洩しました。時間内に対処してください。

先月9日、HostCatはserverhubの無料仮想ホスト「serverhub-free仮想ホスト...

短期キーワードランキングスキルの分析例

8月にBaiduが行った大規模なアップデートにより、多くのウェブマスターは外部リンクの構築がますます...

百度と中国の検索:検索の科学と芸術を学ぶ人々

10年前、私はインターネット製品を作り、それが成功しました。同様のインターネット製品は 10 年後に...

携帯電話修理のウェブサイトはちょっと「低レベル」に見えるかもしれないが、うまく管理されれば業界に革命を起こすことができる。

2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますモバイル ...

chicagovps-4.5ドル/1gメモリ/20g SSD/1Tトラフィック/複数のデータセンター

chicagovps からプロモーションメールが届きました。特別価格の VPS 2 台と特別価格の ...

Microsoft Azure がモバイル インターネット クラウドの適応を促進

スマートモバイルデバイスの普及とBYODの増加により、携帯電話やタブレットデバイスを使用して電子メー...

Python エンベロープを使用してメールと添付ファイルを送信する

昨年、私は smtplib を使用して電子メールを送信する方法についての記事を書きましたが、友人から...

メモリ仮想化の調査結果

[[414450]]この記事はWeChatの公開アカウント「雲店論建」から転載したもので、著者はJu...

ロンドンオリンピック関連キーワードのプロモーション事例を共有

実際、私は2012年のロンドンオリンピックにはほとんど注目しておらず、開会式さえ見ませんでした。オリ...

SEO担当者は、独自のリソースに基づいてウェブサイトのキーワードを設定する必要があります。

ウェブサイトに最も適切なキーワードの数はいくつでしょうか? この質問は実のところ長い間議論されてきま...

検索エンジンのトラフィックを迂回させる PHP トロイの木馬の導入と防止

普段はアクセス数が多くPVも高いWebサイトなのに、ある日突然PVが下がり始めたら、Webサイトのコ...

crissic-5 コア/2g メモリ/4g バースト/100g ハードドライブ/5T トラフィック/月額 7 ドル

ネットワークテスト: http://208.84.135.34/100MB.zip ► VPS コン...

6月の世界ウェブサーバー市場シェア:マイクロソフトの36.35%がApacheに迫る

IDC Review Network (idcps.com) は 6 月 11 日に次のように報告し...

#台湾サーバー# serverfield-$169/E5-2407/16g メモリ/250g SSD/無制限トラフィック

serverfield は 2009 年に設立された台湾の会社 (登録番号: 66607099) で...

SEOの将来の方向性を予測することは、私たち全員にとって重要なことです

現在、百度は再びアルゴリズム調整の特別な時期を迎えています。SEOをうまく行うには、またウェブサイト...