ホスト コーディング ガイドライン で説明するように、フリーランニング カーネルがホストと通信する場合は、ホスト コードで clCreateStream
/clReadStream
/clWriteStream
で処理されるストリームが管理されるようにする必要があります。フリーランニング カーネルには、メモリ ポートや制御ポートなどの入力または出力以外のタイプのポートがないので、clSetKernelArg
を指定する必要はありません。clEnqueueTask
が使用されないのは、カーネルがホストまたはその他のカーネルからストリーム データを受信開始するとすぐに処理し、使用可能なデータがなくなると停止するからです。