我正在研究Cuda C++.但是我在使用CUDA读取和写入文件时遇到了问题.
如何在Cuda C++中实现文件输入输出过程?
我想把.obj文件读入我的Cuda内核.
我该怎么办?
Rob*_*lla 13
使用普通主机(C++)文件操作读取文件.然后,如果需要,使用普通cudaMalloc
和cudaMemcpy
操作将数据传输到设备.
您将无法直接在CUDA C++中实现文件I/O,因为没有此API,并且GPU不直接连接到文件系统.您必须通过操作系统获取文件系统服务.
为了让你的文件进入CUDA内存空间,你必须在为信息分配内存后使用CUDA memcpy命令(cudaMalloc(你的,malloc,params,这里)和cudaMemcpy(你的,memcpy,params,这里)加载解析并在内存中存储文件,就像在C++中一样.
您可以尝试使用cuda系统直接访问该文件,但这是一个我不会羡慕尝试编写的过程,并且增益与努力比将使其成为一个不可行的冒险(除了概念验证).
希望有所帮助!:)