CUDA中的系统时间和文件时间
System time and file time in CUDA
我正在使用以下代码来计算c++ coce中的时间
SYSTEMTIME sm;
FILETIME fm;
GetSystemTime(&sm);
SystemTimeToFileTime(&sm,&fm);
*time = (double)(fm.dwLowDateTime / 10000000.0);
现在我想计算相同的时间,当我实现CUDA版本这个函数在CUDA内核函数之间被调用。有什么主意或帮助我怎么做吗?我是cuda编程的新手,对它了解不多。也有人能告诉我如何使用新的操作符在__device__
函数我尝试
maxY = new int[m_imgWidth*m_imgHeight];
cudaMalloc((void **)&m_labelBuf , m_imgWidth*m_imgHeight);
但是显示错误
calling a __host__ function("cudaMalloc") from a __global__ function("kernel_Labeling") is not allowed
您可以通过寄存器(每个线程私有)和共享内存(每个块私有)进行一点动态或伪动态内存分配,但这看起来并不是您想要做的。
要从设备端代码分配堆上的内存,可以使用c++的new操作符,也可以使用设备端malloc。这只适用于Fermi和更新的gpu。
使用cudaEvent API是计时cuda代码的最省事的方法。
编辑: 我已经将Robert Crovella的评论合并到这个答案中。
相关文章:
- 从文本文件中读取时钟时间和事件时间并进行处理
- Levenshtein 两个文件的距离花费了太多时间
- 如何从远程 SFTP 服务器获取 HH-MM-SS 时间戳格式的文件列表
- 如何将消息时间戳写入日志文件?
- Chilkat SFTP 文件修改时间不与上传更新
- 如何在 Windows 上的 C++ 中根据文件的修改时间读取目录中的文件
- 正在等待在非阻塞文件描述符上长时间运行ioctl
- C++-需要读取存储在文件(.txt)中的时间戳并正确检索
- 测量任何 Windows 可执行文件的内存使用情况和执行时间
- std::fstream 需要很长时间才能将大数据写入.csv文件中
- 如何减少编译时间:在包含未触及的头文件的情况下
- 当字节在文件上写入0时,是否可以保持写作时间稳定
- C++ 如何使用字符串中保存的文件路径创建带时间戳的目录
- 使用LTO静态链接的可执行文件(链接时间优化):如何使用以前构建的库进行制作
- 将时间戳添加到文本文件中的空行中
- 如何使用C 根据当前时间自动生成新的CSV文件
- 我可以让QT到概要文件插槽执行持续时间吗?
- 当该应用程序中加速文件的最后一个修改时间发生更改时,如何重新启动应用程序
- C++:读取.BMP文件时出现问题;文件结束时间早于预期
- 如何从一段时间开始打开和关闭文件