PaddlePaddle / Paddle

PArallel Distributed Deep LEarning: Machine Learning Framework from Industrial Practice (『飞桨』核心框架,深度学习&机器学习高性能单机、分布式训练和跨平台部署)
http://www.paddlepaddle.org/
Apache License 2.0
21.8k stars 5.47k forks source link

windows下python3.10编译cuda12.1版本的2.6.1paddle失败 #64980

Open xldistance opened 1 month ago

xldistance commented 1 month ago

bug描述 Describe the Bug

D:\workspace\Paddle\build>ninja [13/3064] Running utility command for pslib_py_proto 已复制 1 个文件。 [14/3064] Running utility command for ps_py_proto 已复制 1 个文件。 [19/3064] Running utility command for profiler_py_proto profiler_pb2.py init.py 已复制 2 个文件。 [27/3064] Running utility command for framework_py_proto data_feed_pb2.py distributed_strategy_pb2.py framework_pb2.py pass_desc_pb2.py trainer_desc_pb2.py init.py 已复制 6 个文件。 distributed_strategy_pb2.py 已复制 1 个文件。 [49/3064] Building CXX object paddle\pir\CMakeFiles\pir.dir\src\core\parser\ir_parser.cc.obj FAILED: paddle/pir/CMakeFiles/pir.dir/src/core/parser/ir_parser.cc.obj C:\PROGRA~1\MICROS~1\2022\COMMUN~1\VC\Tools\MSVC\1439~1.335\bin\Hostx64\x64\cl.exe /nologo /TP -DCUDA_TOOLKIT_ROOT_DIR="\"C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1\"" -DCUDA_VERSION_MAJOR=\"12\" -DCUDA_VERSION_MINOR=\"1\" -DCUDNN_MAJOR_VERSION=\"8\" -DEIGEN_STRONG_INLINE=inline -DEIGEN_USE_GPU -DGOOGLE_GLOG_DLL_DECL="" -DIR_LIBRARY -DLAPACK_FOUND -DNOMINMAX -DPADDLE_DISABLE_PROFILER -DPADDLE_DLL_EXPORT -DPADDLE_DLL_INFERENCE -DPADDLE_ON_INFERENCE -DPADDLE_VERSION=0.0.0 -DPADDLE_VERSION_INTEGER=0 -DPADDLE_WITH_AVX -DPADDLE_WITH_CRYPTO -DPADDLE_WITH_CUDA -DPADDLE_WITH_DNNL -DPADDLE_WITH_MKLML -DPADDLE_WITH_POCKETFFT -DPADDLE_WITH_SSE3 -DSTATIC_IR -DTRT_PLUGIN_FP16_AVALIABLE -DUTF8PROC_STATIC -DWIN32_LEAN_AND_MEAN -D_XKEYCHECK_H -ID:\workspace\Paddle\build -ID:\workspace\Paddle\paddle\fluid\framework\io -ID:\workspace\Paddle\build\third_party\install\zlib\include -ID:\workspace\Paddle\build\third_party\install -ID:\workspace\Paddle\build\third_party\install\gflags\include -ID:\workspace\Paddle\build\third_party\install\glog\include -ID:\workspace\Paddle\third_party\eigen3 -ID:\workspace\Paddle\third_party\threadpool -ID:\workspace\Paddle\third_party\dlpack\include -ID:\workspace\Paddle\build\third_party\install\xxhash\include -ID:\workspace\Paddle\build\third_party\install\warpctc\include -ID:\workspace\Paddle\build\third_party\install\warprnnt\include -ID:\workspace\Paddle\build\third_party\install\utf8proc\include -ID:\workspace\Paddle\build\third_party\install\mklml\include -ID:\workspace\Paddle\build\third_party\install\onednn\include -ID:\workspace\Paddle\build\third_party\install\protobuf\include -ID:\workspace\Paddle\build\third_party\nlohmann_json\include -IE:\Langchain-Chatchat\glut\include -IE:\Langchain-Chatchat\glut\Lib\site-packages\numpy\core\include -ID:\workspace\Paddle\build\third_party\pybind\src\extern_pybind\include -ID:\workspace\Paddle\build\third_party\install\cryptopp\include -ID:\workspace\Paddle\build\third_party\pocketfft\src -ID:\workspace\Paddle\build\third_party\dirent\src\extern_dirent\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\include" -ID:\workspace\Paddle -ID:\workspace\Paddle\build..\paddle\fluid\framework\io /DWIN32 /D_WINDOWS /W0 /GR /EHsc /w /wd4068 /wd4129 /wd4244 /wd4267 /wd4297 /wd4530 /wd4577 /wd4819 /wd4838 /arch:AVX /MT /O2 /Ob2 /DNDEBUG /bigobj /Zc:inline -std:c++17 /showIncludes /Fopaddle\pir\CMakeFiles\pir.dir\src\core\parser\ir_parser.cc.obj /Fdpaddle\pir\CMakeFiles\pir.dir\pir.pdb /FS -c D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): error C2039: "string": 不是 "std" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\set(22): note: 参见“std”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): error C2065: “string”: 未声明的标识符 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): error C2923: "std::unordered_map": "string" 不是参数 "_Kty" 的有效 模板 类型参数 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): note: 参见“string”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): error C2976: “std::unordered_map'”: 模板 参数太少 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(123): error C2039: "string": 不是 "std" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\set(22): note: 参见“std”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(123): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(123): error C2143: 语法错误: 缺少“,”(在“&”的前面) D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(128): error C2955: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(157): error C2039: "string": 不是 "std" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\set(22): note: 参见“std”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(157): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(157): error C2143: 语法错误: 缺少“,”(在“&”的前面) D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(174): error C2039: "string": 不是 "std" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\set(22): note: 参见“std”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(174): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(174): error C2143: 语法错误: 缺少“,”(在“&”的前面) D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(116): error C2664: “pir::Dialect pir::IrContext::GetRegisteredDialect(const int)”: 无法将参数 1 从“std::basic_string<char,std::char_traits,std::allocator>”转换为“const int” D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(116): note: 没有可用于执行该转换的用 户定义的转换运算符,或者无法调用该运算符 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(174): note: 参见“pir::IrContext::GetRegisteredDialect”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(183): note: 可能是“T pir::IrContext::GetRegisteredDialect(void)” D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(116): note: “T pir::IrContext::GetRegisteredDialect(void)”: 应输入 0 个参数,却提供了 1 个 D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(116): note: 尝试匹配参数列表“(std::basic_string<char,std::char_traits,std::allocator>)”时 D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(181): error C2664: “pir::Dialect pir::IrContext::GetRegisteredDialect(const int)”: 无法将参数 1 从“std::basic_string<char,std::char_traits,std::allocator>”转换为“const int” D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(181): note: 没有可用于执行该转换的用 户定义的转换运算符,或者无法调用该运算符 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(174): note: 参见“pir::IrContext::GetRegisteredDialect”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(183): note: 可能是“T pir::IrContext::GetRegisteredDialect(void)” D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(181): note: “T pir::IrContext::GetRegisteredDialect(void)”: 应输入 0 个参数,却提供了 1 个 D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(181): note: 尝试匹配参数列表“(std::basic_string<char,std::char_traits,std::allocator>)”时 D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(272): error C2664: “pir::OpInfo pir::IrContext::GetRegisteredOpInfo(const int)”: 无法将参数 1 从“std::string”转换为“const int” D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(272): note: 没有可用于执行该转换的用 户定义的转换运算符,或者无法调用该运算符 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(123): note: 参见“pir::IrContext::GetRegisteredOpInfo”的声明 D:\workspace\Paddle\paddle\pir\src\core\parser\ir_parser.cc(272): note: 尝试匹配参数列表“(std::string)”时 [50/3064] Building CXX object paddle\pir\CMakeFiles\pir.dir\src\core\ir_context.cc.obj FAILED: paddle/pir/CMakeFiles/pir.dir/src/core/ir_context.cc.obj C:\PROGRA~1\MICROS~1\2022\COMMUN~1\VC\Tools\MSVC\1439~1.335\bin\Hostx64\x64\cl.exe /nologo /TP -DCUDA_TOOLKIT_ROOT_DIR="\"C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v12.1\"" -DCUDA_VERSION_MAJOR=\"12\" -DCUDA_VERSION_MINOR=\"1\" -DCUDNN_MAJOR_VERSION=\"8\" -DEIGEN_STRONG_INLINE=inline -DEIGEN_USE_GPU -DGOOGLE_GLOG_DLL_DECL="" -DIR_LIBRARY -DLAPACK_FOUND -DNOMINMAX -DPADDLE_DISABLE_PROFILER -DPADDLE_DLL_EXPORT -DPADDLE_DLL_INFERENCE -DPADDLE_ON_INFERENCE -DPADDLE_VERSION=0.0.0 -DPADDLE_VERSION_INTEGER=0 -DPADDLE_WITH_AVX -DPADDLE_WITH_CRYPTO -DPADDLE_WITH_CUDA -DPADDLE_WITH_DNNL -DPADDLE_WITH_MKLML -DPADDLE_WITH_POCKETFFT -DPADDLE_WITH_SSE3 -DSTATIC_IR -DTRT_PLUGIN_FP16_AVALIABLE -DUTF8PROC_STATIC -DWIN32_LEAN_AND_MEAN -D_XKEYCHECK_H -ID:\workspace\Paddle\build -ID:\workspace\Paddle\paddle\fluid\framework\io -ID:\workspace\Paddle\build\third_party\install\zlib\include -ID:\workspace\Paddle\build\third_party\install -ID:\workspace\Paddle\build\third_party\install\gflags\include -ID:\workspace\Paddle\build\third_party\install\glog\include -ID:\workspace\Paddle\third_party\eigen3 -ID:\workspace\Paddle\third_party\threadpool -ID:\workspace\Paddle\third_party\dlpack\include -ID:\workspace\Paddle\build\third_party\install\xxhash\include -ID:\workspace\Paddle\build\third_party\install\warpctc\include -ID:\workspace\Paddle\build\third_party\install\warprnnt\include -ID:\workspace\Paddle\build\third_party\install\utf8proc\include -ID:\workspace\Paddle\build\third_party\install\mklml\include -ID:\workspace\Paddle\build\third_party\install\onednn\include -ID:\workspace\Paddle\build\third_party\install\protobuf\include -ID:\workspace\Paddle\build\third_party\nlohmann_json\include -IE:\Langchain-Chatchat\glut\include -IE:\Langchain-Chatchat\glut\Lib\site-packages\numpy\core\include -ID:\workspace\Paddle\build\third_party\pybind\src\extern_pybind\include -ID:\workspace\Paddle\build\third_party\install\cryptopp\include -ID:\workspace\Paddle\build\third_party\pocketfft\src -ID:\workspace\Paddle\build\third_party\dirent\src\extern_dirent\include -I"C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v12.1\include" -ID:\workspace\Paddle -ID:\workspace\Paddle\build..\paddle\fluid\framework\io /DWIN32 /D_WINDOWS /W0 /GR /EHsc /w /wd4068 /wd4129 /wd4244 /wd4267 /wd4297 /wd4530 /wd4577 /wd4819 /wd4838 /arch:AVX /MT /O2 /Ob2 /DNDEBUG /bigobj /Zc:inline -std:c++17 /showIncludes /Fopaddle\pir\CMakeFiles\pir.dir\src\core\ir_context.cc.obj /Fdpaddle\pir\CMakeFiles\pir.dir\pir.pdb /FS -c D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): error C2039: "string": 不是 "std" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\set(22): note: 参见“std”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): error C2065: “string”: 未声明的标识符 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): error C2923: "std::unordered_map": "string" 不是参数 "_Kty" 的有效 模板 类型参数 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): note: 参见“string”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(38): error C2976: “std::unordered_map'”: 模板 参数太少 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(123): error C2039: "string": 不是 "std" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\set(22): note: 参见“std”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(123): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(123): error C2143: 语法错误: 缺少“,”(在“&”的前面) D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(128): error C2955: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(157): error C2039: "string": 不是 "std" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\set(22): note: 参见“std”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(157): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(157): error C2143: 语法错误: 缺少“,”(在“&”的前面) D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(174): error C2039: "string": 不是 "std" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\set(22): note: 参见“std”的声明 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(174): error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不支持默认 int D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(174): error C2143: 语法错误: 缺少“,”(在“&”的前面) D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(125): error C2955: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(181): error C2955: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): error C2672: “begin”: 未找到匹配的重载函数 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1834): note: 可能是“_Ty std::begin(_Ty (&)[_Size]) noexcept” D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: “_Ty std::begin(_Ty (&)[_Size]) noexcept”: 无法从“pir::OpInfoMap”推导出“_Ty (&)[_Size]”的 模板 参数 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1816): note: 或 “unknown-type std::begin(const _Container &) noexcept()” D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: 未能使函数模板“unknown-type std::begin(const _Container &) noexcept()”专用化 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: 用下列模板参数: D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: “_Container=pir::OpInfoMap” C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1816): note: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1816): note: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1817): note: "begin": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1810): note: 或 “unknown-type std::begin(_Container &) noexcept()” D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: 未能使函数模板“unknown-type std::begin(_Container &) noexcept()”专用化 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: 用下列模板参数: D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: “_Container=pir::OpInfoMap” C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1810): note: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1810): note: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1811): note: "begin": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\initializer_list(54): note: 或 “const _Elem std::begin(std::initializer_list<_Elem>) noexcept” D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: “const _Elem std::begin(std::initializer_list<_Elem>) noexcept”: 无法从“pir::OpInfoMap”推导出“std::initializer_list<_Elem>”的 模板 参数 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): error C2672: “end”: 未找到匹配的重载函数 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1839): note: 可能是“_Ty std::end(_Ty (&)[_Size]) noexcept” D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: “_Ty std::end(_Ty (&)[_Size]) noexcept”: 无法从“pir::OpInfoMap”推导出“_Ty (&)[_Size]”的 模板 参数 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1828): note: 或 “unknown-type std::end(const _Container &) noexcept()” D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: 未能使函数模板“unknown-type std::end(const _Container &) noexcept()”专用化 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: 用下列模板参数: D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: “_Container=pir::OpInfoMap” C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1828): note: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1828): note: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1829): note: "end": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1822): note: 或 “unknown-type std::end(_Container &) noexcept()” D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: 未能使函数模板“unknown-type std::end(_Container &) noexcept()”专用化 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: 用下列模板参数: D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: “_Container=pir::OpInfoMap” C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1822): note: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1822): note: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\xutility(1823): note: "end": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\initializer_list(59): note: 或 “const _Elem std::end(std::initializer_list<_Elem>) noexcept” D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): note: “const _Elem std::end(std::initializer_list<_Elem>) noexcept”: 无法从“pir::OpInfoMap”推导出“std::initializer_list<_Elem>”的 模板 参数 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): error C3536: “$L3”: 初始化之前 无法使用 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): error C3536: “$L3”: 初始化之前无 法使用 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(52): error C2100: 无法取消引用类型为“int”的操作数 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(55): error C2039: "clear": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(104): error C2039: "find": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(104): error C2039: "end": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(111): error C2039: "emplace": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(116): error C2039: "find": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(117): error C3536: “iter”: 初始化之前无法使用 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(117): error C2039: "end": 不是 "std::unordered_map" 的成员 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(33): error C2512: “std::unordered_map”: 没 有合适的默认构造函数可用 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(194): note: 参见对函数 "pir::IrContextImpl::IrContextImpl(void)" 的引用 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(249): error C2511: “pir::Dialect pir::IrContext::GetOrRegisterDialect(const std::string &,std::function<pir::Dialect (void)>)”:“pir::IrContext”中没有找到重载的成员函数 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(44): note: 参见“pir::IrContext”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(253): error C2352: “pir::IrContext::impl”: 调用非静态成员函数需要一个对象 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(60): note: 参见“pir::IrContext::impl”的 声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(256): error C2352: “pir::IrContext::impl”: 调用非静态成员函数需要一个对象 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(60): note: 参见“pir::IrContext::impl”的 声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(258): error C2352: “pir::IrContext::impl”: 调用非静态成员函数需要一个对象 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(60): note: 参见“pir::IrContext::impl”的 声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(269): error C2511: “pir::Dialect *pir::IrContext::GetRegisteredDialect(const std::string &)”:“pir::IrContext”中没有找到重载的成员函数 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(44): note: 参见“pir::IrContext”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(270): error C2352: “pir::IrContext::impl”: 调用非静态成员函数需要一个对象 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(60): note: 参见“pir::IrContext::impl”的 声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(270): error C2530: “dialect_map”: 必须初始 化引用 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(270): error C3531: “dialect_map”: 类型包含“auto”的符号必须具有初始值设定项 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(270): error C2143: 语法错误: 缺少“;”(在“:” 的前面) D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(270): error C2352: “pir::IrContext::impl”: 调用非静态成员函数需要一个对象 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(60): note: 参见“pir::IrContext::impl”的 声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(270): error C2143: 语法错误: 缺少“;”(在“)” 的前面) D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(314): error C2511: “pir::OpInfo pir::IrContext::GetRegisteredOpInfo(const std::string &)”:“pir::IrContext”中没有找到重载的成员函数 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(44): note: 参见“pir::IrContext”的声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(315): error C2352: “pir::IrContext::impl”: 调用非静态成员函数需要一个对象 D:\workspace\Paddle\paddle/pir/include/core/ir_context.h(60): note: 参见“pir::IrContext::impl”的 声明 D:\workspace\Paddle\paddle\pir\src\core\ir_context.cc(318): error C2955: “std::unordered_map”: 使用 类 模板 需要 模板 参数列表 C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\unordered_map(66): note: 参见“std::unordered_map”的声明 [64/3064] Building CXX object paddle\fluid\fram...version_registry.dir\op_version_registry.cc.ob ninja: build stopped: subcommand failed.

其他补充信息 Additional Supplementary Information

No response

xldistance commented 1 month ago

运行cmake命令时还出现了一个错误, parse op yamls:

zbt78 commented 2 weeks ago

请问问题解决了吗

xldistance commented 2 weeks ago

请问问题解决了吗

没有

lishuai-97 commented 1 week ago

运行cmake命令时还出现了一个错误, parse op yamls:

  • D:/workspace/Paddle/paddle/phi/ops/yaml/ops.yaml
  • D:/workspace/Paddle/paddle/phi/ops/yaml/inconsistent/dygraph_ops.yaml
  • D:/workspace/Paddle/paddle/phi/ops/yaml/backward.yaml
  • D:/workspace/Paddle/paddle/phi/ops/yaml/inconsistent/dygraph_backward.yaml
  • D:/workspace/Paddle/paddle/phi/ops/yaml/fused_ops.yaml
  • D:/workspace/Paddle/paddle/phi/ops/yaml/legacy/static_ops.yaml validate op yaml:
  • D:/workspace/Paddle/build/paddle/phi/ops/yaml/ops.parsed.yaml
  • D:/workspace/Paddle/build/paddle/phi/ops/yaml/backward.parsed.yaml Something Wrong here, this backward op (global_gather_grad)'s forward op (global_gather) does not exist. Something Wrong here, this backward op (global_scatter_grad)'s forward op (global_scatter) does not exist. Something Wrong here, this backward op (pull_sparse_v2_grad)'s forward op (pull_sparse_v2) does not exist. Something Wrong here, this backward op (push_gpups_sparse)'s forward op (pull_gpups_sparse) does not exist. create or remove auto-generated operators: generated_op(1-4).cc.tmp create or remove auto-generated argument mappings: D:/workspace/Paddle/paddle/fluid/operators/ops_signature/generated_sig.cc.tmp

请问问题解决了吗?

zbt78 commented 1 week ago

在ir_context.h文件中加上#include<iostream>可以编译通过

lishuai-97 commented 1 week ago

在ir_context.h文件中加上#include<iostream>可以编译通过

请问paddle/cinn/pybind/ir/ir_context.hpaddle/pir/include/core/ir_context.h两个文件都要添加嘛,还是说只需要添加其中的一个?

zbt78 commented 1 week ago

在ir_context.h文件中加上#include<iostream>可以编译通过

请问paddle/cinn/pybind/ir/ir_context.hpaddle/pir/include/core/ir_context.h两个文件都要添加嘛,还是说只需要添加其中的一个?

我记得是加了一个,不过可以都加上试一下,没啥影响

lishuai-97 commented 1 week ago

在ir_context.h文件中加上#include<iostream>可以编译通过

请问paddle/cinn/pybind/ir/ir_context.hpaddle/pir/include/core/ir_context.h两个文件都要添加嘛,还是说只需要添加其中的一个?

我记得是加了一个,不过可以都加上试一下,没啥影响

好的,我试一下,非常感谢!

xldistance commented 1 week ago

@lishuai-97 加了#include编译还是失败

[602/3329] Building CUDA object paddle\phi\CMak...phi_core.dir\kernels\funcs\math_function.cu.ob
math_function.cu
tmpxft_0000499c_00000000-10_math_function.cudafe1.cpp
[603/3329] Building CUDA object paddle\phi\CMak...i_core.dir\kernels\funcs\eigen\broadcast.cu.ob
broadcast.cu
tmpxft_0000bd04_00000000-10_broadcast.cudafe1.cpp
ninja: build stopped: subcommand failed.
lishuai-97 commented 1 week ago

@lishuai-97 加了#include编译还是失败

[602/3329] Building CUDA object paddle\phi\CMak...phi_core.dir\kernels\funcs\math_function.cu.ob
math_function.cu
tmpxft_0000499c_00000000-10_math_function.cudafe1.cpp
[603/3329] Building CUDA object paddle\phi\CMak...i_core.dir\kernels\funcs\eigen\broadcast.cu.ob
broadcast.cu
tmpxft_0000bd04_00000000-10_broadcast.cudafe1.cpp
ninja: build stopped: subcommand failed.

我目前也还没有解决这个问题,我是在Ubuntu 20.04上遇到的,不管是添加了#include 还是拉最新的代码都解决不了cmake时遇到的问题:

Something Wrong here, this backward op (global_gather_grad)'s forward op (global_gather) does not exist.
Something Wrong here, this backward op (global_scatter_grad)'s forward op (global_scatter) does not exist.
Something Wrong here, this backward op (pull_sparse_v2_grad)'s forward op (pull_sparse_v2) does not exist.
Something Wrong here, this backward op (push_gpups_sparse)'s forward op (pull_gpups_sparse) does not exist.

@will-jl944 开发大佬有时间看一下这个bug

xldistance commented 1 week ago

@lishuai-97 我是windows装的是cuda12.1,然后安装最新的的paddle3.0版本cuda12.3可以正常运行, python -m pip install paddlepaddle-gpu==3.0.0b0 -i https://www.paddlepaddle.org.cn/packages/stable/cu123/,就不折腾自己编译了

lishuai-97 commented 1 week ago

@lishuai-97 我是windows装的是cuda12.1,然后安装最新的的paddle3.0版本cuda12.3可以正常运行, python -m pip install paddlepaddle-gpu==3.0.0b0 -i https://www.paddlepaddle.org.cn/packages/stable/cu123/,就不折腾自己编译了

感谢你提供的信息,不过我是进行dev,还是得源码编译