私はOpenCL Khronosの本、GATechのチュートリアル、NYUのチュートリアルなど、いくつかのリソースを使いました。しかし、私はまだ完全に理解していません。 カーネルとプログラムオブジェクトの違いは何ですか?カーネルとプログラムオブジェクトの違いは何ですか?
は、これまでのところ最良の説明は私のために、このですが、私は完全に理解し、これは十分ではありません。 プログラムオブジェクトを:プログラムオブジェクトは、いくつかのソース(潜在的にいくつかのカーネル関数を使用)コードとその最後に成功したビルドをカプセル化します。 KERNEL:カーネルオブジェクトは、カーネルが実行されるときに使用されるカーネルの 引数の値をカプセル化します。
おそらくプログラムオブジェクトはコードですか?カーネルはコンパイルされた実行ファイルですか?それですか?私はそのようなことを理解することができたからです。
ありがとうございます!
この説明も私には意味がありません。カーネルはOpenCLデバイス上で動作するOpenCL関数です。プログラムオブジェクトは、プログラムのソースコードとカーネルを実装する実行ファイルです。私の切断は、関数とソースコードが同じことを意味するということです。 –
私はこのことがなぜあなたにとって重要なのか分かりません。あなたは専門用語にこだわっているようです。実用的な側面は重要であり、それはかなり明確です。カーネルは実行可能なコンパイル済みの関数です。プログラムは、潜在的にいくつかのカーネルを含むコンパイルされたコードです。つまり、プログラミング言語のプログラムと関数/ルーチンと全く同じ抽象化レベルのオブジェクトです。 –
それは完全に意味をなさない。ありがとう! –