cuLaunchKernel 関数の NVidia ドキュメントによると、CUDA 3.2+ でコンパイルされたカーネルには、パラメーター リストに関する情報が含まれています。この情報を CUfunction ハンドルからプログラムで取得する方法はありますか? CUfunction ハンドルからカーネルの引数の数と各引数のバイト単位のサイズを知る必要があります。上記の NVidia のドキュメントでこの情報が存在すると述べているのを見たことがありますが、この情報にアクセスするプログラムによる方法を示す CUDA のドキュメントは見たことがありません。
もう少し説明を追加するには: 私はミドルウェア システムを使用しています。そのフロントサイド ライブラリは、ターゲット システムの libcuda (ドライバー API ライブラリ) を置き換えます。バックサイドは、GPGPU リソースが使用されている別のホスト上でデーモンとして実行され、そのマシン上の実際の libcuda を呼び出します。cuLaunchKernel で既にこれを行っているミドルウェア ソリューションが他にもあるので、それは間違いなく可能です。また、CUDA 自体がこの情報を使用して、cuLaunchKernel に渡すポインターからパラメーターを解析する方法を認識します。
編集: このメタデータが導入された CUDA バージョンが間違ってリストされていました。cuLaunchKernel のドキュメントによると、4.0 ではなく 3.2 でした。