gpt4 book ai didi

c++ - 使用 Intel 编译器和 -std=c++11 标志时 NVCC 不工作

转载 作者:行者123 更新时间:2023-11-30 02:30:37 30 4
gpt4 key购买 nike

我正在尝试使用英特尔编译器作为主机编译器来编译 cuda 程序。 cuda 程序是用 C++ 编写的,使用了 C++11 的特性。如果我使用默认的主机编译器 g++,那么它运行良好。但我想尝试使用 Intel 编译器,因为 g++ 中可能存在性能问题。

我使用的编译器是CUDA 7.5和Intel 16.0.3。它们是最新的编译器,因此它们都支持 c++11 特性。

这是我用一个小测试文件尝试的结果:

nvcc -std=c++11 -ccbin=icpc -Xcompiler=-std=c++11 test.cu -o test

这是输出:

nvcc warning : The -c++11 flag is not supported with the configured host compiler. Flag will be ignored.
/usr/local/gcc-4.8.2/include/c++/4.8.2/x86_64-unknown-linux-gnu/bits/c++config.h(190): error: identifier "nullptr" is undefined

/usr/local/gcc-4.8.2/include/c++/4.8.2/x86_64-unknown-linux-gnu/bits/c++config.h(190): error: expected a ";"

/usr/local/gcc-4.8.2/include/c++/4.8.2/exception(63): error: expected a ";"

有没有人遇到同样的问题,如何解决?谢谢。

最佳答案

CUDA 7.5 不支持您尝试执行的操作。在 CUDA 7.5 中使用 icc 作为主机编译器目前不支持 C++11 语法,CUDA 7.5 不支持 icc 16。

CUDA 8.0RC 支持使用 ICC 作为带有 std=c++11 标志的主机编译器(也支持 ICC 16.0)

关于c++ - 使用 Intel 编译器和 -std=c++11 标志时 NVCC 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38401725/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com