OpenCL中的字符串格式?

OpenCL中的字符串格式?,opencl,printf,Opencl,Printf,我正在使用一块全局内存中的环形缓冲区编写简单的调试/记录函数。问题是OpenCL中缺少任何类似于snprintf的函数。你有什么建议?使用一些嵌入式实现,并扩展向量类型的格式规范 (请不要回答字符串操作效率低下,OpenCL是为计算而设计的;我知道。)一些CPU实现支持printf等,因此如果您的实现不依赖未排序的工作组维度,这可能会有所帮助。当我使用OpenCL时,我通常会在主机端进行验证,即实现缓冲区读取算法,然后使用工作项的1:1映射将数据写回结果缓冲区。这使得验证非常容易,因为您知道哪个

我正在使用一块全局内存中的环形缓冲区编写简单的调试/记录函数。问题是OpenCL中缺少任何类似于
snprintf
的函数。你有什么建议?使用一些嵌入式实现,并扩展向量类型的格式规范


(请不要回答字符串操作效率低下,OpenCL是为计算而设计的;我知道。)

一些CPU实现支持printf等,因此如果您的实现不依赖未排序的工作组维度,这可能会有所帮助。当我使用OpenCL时,我通常会在主机端进行验证,即实现缓冲区读取算法,然后使用工作项的1:1映射将数据写回结果缓冲区。这使得验证非常容易,因为您知道哪个线程在结果缓冲区中编写了给定索引的内容。最好使用已知数据初始化客户机缓冲区(即在执行内核之前将主机缓冲区复制到reuslt缓冲区中),以避免混淆

我意识到这不是一个非常技术性的答案,但我希望它能有所帮助