2017-04-06 17 views
5

誰でもCUDAコンテキストとは何か良い情報源を説明したり紹介したりできますか?私はCUDA開発者ガイドを検索しましたが、私はそれに満足していませんでした。CUDAコンテキストとは何ですか?

説明や助けがあれば大丈夫です。

+0

本質的に、新機能を含むように変更されることがあるCudaコンテキストの内容に関する公開情報はありません。私はそれを記述するためのより良い方法は見当たりませんし、何が欠けているのか、そしてあなたが何を期待したのかを理解することもありません。 –

+0

私がチェックアウトできる他のオープンソースライブラリにも同様の概念がありますか? –

+0

私はopenclコンテキストを実際には非常によく似ていると考えます。 https://www.khronos.org/registry/OpenCL/sdk/1.0/docs/man/xhtml/clCreateContext.html。私の知る限り、openclのオープンソース実装が存在します。 –

答えて

6

cuda APIは、ステートフルなライブラリの機能を公開しています。連続する2つの呼び出しが互いに関連しています。要するに、コンテキストはその状態です。

runtime APIは、driver APIのラッパー/ヘルパーです。ドライバーAPIでは、コンテキストが明示的に使用可能になっていることがわかり、便宜上、コンテキストのスタックを持つことができます。ドライバと実行時APUの間で共有される特定のコンテキストが1つあります(primary contextを参照)。

コンテキストには、デバイスを制御および使用するためのすべての管理データが保持されます。例えば、割り当てられたメモリのリスト、デバイスコードを含むロードされたモジュール、ゼロコピーのためのCPUとGPUメモリの間のマッピングなどを保持します。

最後に、この記事はドキュメント校正。

+1

両方の答えが啓発されています。しかし、私はまだ満足していません。もっと詳しく説明できますか? –

2

本質的に、あなたが行う呼び出し間で一貫した状態を維持するのに関連する情報を保持するデータ構造。

これは、呼び出す関数が、その方向を具体的に知らせなくても、正しい方向に信号を送信できるようにするためです。

関連する問題