编写输出文件 Cuda C++

Posted

技术标签:

【中文标题】编写输出文件 Cuda C++【英文标题】:Writing Output File Cuda C++ 【发布时间】:2021-01-22 03:03:18 【问题描述】:

我需要将在 GPU 上计算的模拟数据写入输出 .csv 文件。通常我只会使用 fstream 库,但这在 GPU 上是不可能的。

是否有任何内置函数或其他库可用于直接从设备代码将数据写入 .csv 或 .txt 文件?目前,性能确实不是那么重要,而是一个简单的临时解决方案。

【问题讨论】:

我对此表示怀疑。从CUDA读回数据并正常输出有什么问题? 【参考方案1】:

不,不可能从设备代码中直接在 CUDA 中进行文件 I/O,除非您使用像 GPU Direct Storage (GDS) 这样的东西(根据您的问题,目前您很可能不是)。如果您还没有设置它,GDS 可能不是一个“简单的临时解决方案”。

将数据复制到主机,然后使用您熟悉的任何文件 I/O 例程。

请注意,图书馆推荐的请求是专门针对 SO 的 off-topic。

【讨论】:

以上是关于编写输出文件 Cuda C++的主要内容,如果未能解决你的问题,请参考以下文章

Linux上C++与CUDA混合编程

Linux上C++与CUDA混合编程

运行 CUDA 程序需要啥

如何用C++编写一段“输入A输出1”的程序

Pytorch拓展进阶:Pytorch结合C++以及Cuda拓展

包含 .h 时,CUDA 报告未解决的包含