Paddle Inappropriate cuda (arch flags) for the third-party libraries

vvppvyoh  于 2022-12-31  发布在  其他
关注(0)|答案(7)|浏览(149)

问题描述 Issue Description

I see there are many nvcc warnings reporting The 'compute_35', 'compute_37', 'sm_35', and 'sm_37' architectures are deprecated even when I explict configure the SM_80 flag ( -DCUDA_ARCH_NAME=Manual -DCUDA_ARCH_BIN="80" ).

Paddle should pass the configured NVCC_FLAGS_EXTRA or CMAKE_CUDA_FLAGS to those third-party libraries to avoid redundant arch compilation.

The following are part of the building log:

debug: /workspace/paddle/latest/build/third_party/dgc/src/extern_dgc/build/obj/./csc.cu.o <-- csc.cu
nvcc warning : The 'compute_35', 'compute_37', 'sm_35', and 'sm_37' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).
nvcc warning : The 'compute_35', 'compute_37', 'sm_35', and 'sm_37' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).
nvcc warning : The 'compute_35', 'compute_37', 'sm_35', and 'sm_37' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).

-- Installing: /workspace/paddle/latest/build/third_party/install/libmct/include/mct/impl/serialization.hpp
nvcc warning : The 'compute_35', 'compute_37', 'sm_35', and 'sm_37' architectures are deprecated, and may be removed in a future release (Use -Wno-deprecated-gpu-targets to suppress warning).

版本&环境信息 Version & Environment Information

Paddle version: None
Paddle With CUDA: None

OS: Ubuntu 20.04
Python version: 3.8.10

CUDA version: 11.8.89
Build cuda_11.8.r11.8/compiler.31833905_0
cuDNN version: None.None.None
Nvidia driver version: 525.33

oprakyz7

oprakyz71#

您好,我们已经收到了您的问题,会安排技术人员尽快解答您的问题,请耐心等待。请您再次检查是否提供了清晰的问题描述、复现代码、环境&版本、报错信息等。同时,您也可以通过查看 官网API文档常见问题历史IssueAI社区 来寻求解答。祝您生活愉快~

Hi! We've received your issue and please be patient to get responded. We will arrange technicians to answer your questions as soon as possible. Please make sure that you have posted enough message to demo your request. You may also check out the APIFAQGithub Issue and AI community to get the answer.Have a nice day!

nhhxz33t

nhhxz33t2#

Thanks for your suggestions. We will seriously consider them.

bxpogfeg

bxpogfeg4#

@wuhuachaocoding,
Please help revise the makefile as the following logic:

CUDA >= 11.8: add sm_90
CUDA >= 12.0: deprecate sm_35

Besides, I am wondering why dgc is shipped by tgz but other third-party is shipped by GitHub repo, e.g. warp-ctc?

bfrts1fy

bfrts1fy5#

@zlsh80826
the dgc tgz has been modified according to your needs, like this: https://github.com/PaddlePaddle/PaddleFleetX/pull/983/files
(this pr just show some content modified for you)
we will move dgc package into PaddlePaddle framewark, the GitHub repo branch will be deprecated.
the dgc tgz has been modified according to your needs, you can use it directly. https://github.com/PaddlePaddle/Paddle/pull/48700/files

yxyvkwin

yxyvkwin6#

Thank you @wuhuachaocoding,
I will try it later! However, I have some advice for dgc CUDA_ARCH . The dgc/collective.tgz is only for PaddlePaddle, and Paddle already has the corresponding logic to handle this stuff. It would be better if we pass the processed NVCC_FLAGS_EXTRA to dgc so that the dgc arch can match Paddle's configuration, instead of compiling all available architectures. Besides, we don't need to handle such complicated logic on each dependency.

kuarbcqp

kuarbcqp7#

OK, thank you for your suggestion @zlsh80826
we will make the dgc upgraded, and move it into paddle framework. thank you again.

相关问题