如何让cuda程序支持大文件的读写(>2G)??

对于c程序来说,我们用gcc编译时加上“_D_FILE_OFFSET_BITS=64”即可使其支持大文件(>2G)读写,
可是“_D_FILE_OFFSET_BITS=64”对nvcc不适用,那么我想让cuda程序支持大文件读写的话怎么办呢?
有谁可以告诉我吗?谢谢啦!

你的显存装得下吗?如果装不下可以考虑一下分批读写,但是不是所有的程序都满足可以分批读写的要求的

不是显存大小的限制。
写文件操作是在循环体中,kernel也在循环体中,即每次运行完kernel后将结果写到文件中,
可是32位操作系统下fopen、fread、fwrite默认最大的读写文件为2G,所以每次到2G后就写不进去了。
我原本想仿照gcc编译时的处理方式,即编译时加上“_D_FILE_OFFSET_BITS=64”选项使其支持大文件,
可是nvcc不认这个选项。
请问版主还有什么处理办法吗?

你用Xcompiler 选项看看