4

我目前正在尝试将 GPUJPEG(在 sourceforge 上)库(基于 CUDA)从 Unix 移植到 Windows。

现在我被卡住了-我不知道发生了什么或为什么会发生,但是当我运行测试项目时,控制台卡在了闪烁...

您可以在此处找到整个 Visual Studio 2010 项目(您需要 CUDA 5): wingpujpeg.zip

如果有人可以检查一下并帮助我将这个东西移植到 Windows,我会非常高兴。

提前致谢。

编辑:我想使用/创建一个高性能库来转换实时数据(将 60 fps bmp 文件转换为 jpeg)。这就是为什么“通用”库没有多大用处的原因。这是关于在大约 10 毫秒内将高清图像转换为 jpeg ......如果有人有其他想法,我当然想听听。

4

2 回答 2

3

我认为问题在于您正在从 Visual Studio 运行它以进行调试(F5)。如果您只是运行它(Ctrl+F5),它应该会完成。

起初我认为这是其他问题(删除了我的答案),但它太慢了。缓慢是由于 CUDA 驱动程序调用 malloc/free 方式过多,导致调试运行时分配器变慢了很多。

默认情况下,此分配器在您执行 F5 时启动。如果您想禁用它,请放入您的环境设置(属性 -> 调试 -> 环境 this_NO_DEBUG_HEAP=1)。

也看这里设置_NO_DEBUG_HEAP

于 2012-11-29T00:09:25.653 回答
2

这不完全是一个答案,但因为我还不能评论:如果您正在寻找在 CUDA 上运行的 JPEG 的实现,NPP 库支持标准 JPEG 编解码器管道的各种部分,它包含在CUDA。查看 CUDA SDK 中的“jpegNPP”示例:http: //docs.nvidia.com/cuda/cuda-samples/

于 2014-02-25T16:29:32.547 回答