我想在内核函数中比较两个字符串。我可以在文件中使用strcomp吗? 通常,我可以在CUDA代码中使用C ++库吗?
答案 0 :(得分:1)
如果CUDA库包含C ++标准库的内核版本,这将是令人惊讶的,因为(正如Paul R在评论中指出的那样),这和许多其他标准函数一样,你需要它才能工作。不太适合GPU加速。
根据CUDA语言规则,只有__device__
个函数可以从设备调用。诸如strcmp
之类的函数在C ++标准库中未被声明为__device__
,因此如果CUDA语言不将它们作为扩展包含 - 而且它不包含它们,因为CUDA编程指南不包含任何它们的文档 - 然后它们不能在内核中使用。
尝试时发生了什么?