【问题标题】:CUDA with C++ Builder带有 C++ 生成器的 CUDA
【发布时间】:2013-04-29 12:01:10
【问题描述】:

如何将 CUDA 与 C++ builder 一起使用?我是否必须使用包装器来进行基本的 CUDA 计算?我搜索了一下,没有关于如何设置 CUDA SDK for C++ builder 的信息。

【问题讨论】:

    标签: c++ cuda c++builder


    【解决方案1】:

    NVIDIA 的 API 是 C 兼容的,并且 C++ builder 编译为原生,它们还 happen to support C 的常规调用约定。

    CUDA 有一个内核编译器,允许您将 C/C++ 代码与 CUDA 代码混合在同一个文件中……但我认为它们在工具包中嵌入了 gcc 版本。我有一个项目,我正在混合另一个 gcc 版本生成的代码,最简单的方法是将 CUDA coda 隔离在我用他们的 nvcc 编译的库中,然后与我的 gcc 版本生成的代码链接。就我而言,这很简单:C++ 编译器有共同的调用和名称修改约定。

    所以,你基本上有三个选择:

    1. 使用 CUDA 的 nvcc 和 gcc 生成可以从 C++ builder 链接的 C 库。

    2. 欺骗 nvcc 生成 C 代码并尝试使用 C++ builder 编译它。然而我没有成功。

    3. 抛弃 C++ builder,您仍然可以使用 QT-creator 和 gcc/visual-studio 获得漂亮的多平台图形用户界面

    【讨论】:

    • 那么你能详细解释一下你在编译时失败的地方吗?个人不能放弃它。 C++就是C++。不能不在乎多平台。
    • @t0xic 查看 nvcc 手册,从那以后它已经改进了。特别是,检查 -cuda 选项,它可能是你想要的。 C++ 就是 C++,但是尽管他们现在这么说,C++ builder 已经建立了不是 C++ 的名声 ;-)。开个玩笑,但请检查herehere
    • 我希望 Embarcadero 对此有所作为……现在不是在 2030 年。
    • 他们已经并且正在尝试使用最新版本。 XE4 刚刚发布。这两个相关的问题也有点不准确,IMO - 我现在很高兴每天都在使用 C++ Builder 2010。
    • @DavidM 很高兴知道。虽然它们的价格很高,但没有列 here,而这又是从 here 引用的……我认为商业 C++ 编译器的实现者应该更认真地对待这个页面……
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-23
    • 1970-01-01
    • 2010-10-24
    • 1970-01-01
    • 2017-01-13
    • 2012-03-26
    • 2015-01-21
    相关资源
    最近更新 更多