多くの OpenCL カーネル引数設定を合理化できるように思えます。考えられる最も基本的なことは、次の実装です。
clSetKernelArgs(cl_kernel kernel, unsigned num_args, ...)
次に、各引数に対して、arg_index、arg_size、および value のトリプレット、または arg_size と arg_value のペア、または引数だけを読み取ることができます (署名タイプが何であるかを impl 内で何らかの形で把握できれば)。
これは標準の一部としてすでにどこかに実装されていませんか?
注: C と C++ の両方のコードに興味があります。