[llvm-dev] Debug info for CUDA code

Alexey Bataev via llvm-dev llvm-dev at lists.llvm.org
Wed Jan 23 11:01:18 PST 2019


Hi Char, I found the problem, for some reason the last patch was applied
correctly. Just committed the fixed version. Tried to compile axpy.cu,
everything works.

-------------
Best regards,
Alexey Bataev

23.01.2019 13:37, treinz пишет:
> Hi Alexey,
>
> I tried the b7195a6 from the llvm github mirror, which does include
> your commit D46189 <https://reviews.llvm.org/D46189> (see below). But
> it can't compile the example program
> on https://llvm.org/docs/CompileCudaWithLLVM.html#invoking-clang
> <https://llvm.org/docs/CompileCudaWithLLVM.html#invoking-clang.> --
> the error is:
>
> [aznb at asp testcuda]$ clang++ axpy.cu -g -o axpy --cuda-gpu-arch=sm_61
> -lcudart_static -ldl -lrt -pthread -v
> clang version 9.0.0 (https://git.llvm.org/git/clang.git
> 4566ed0d7c076ad061168f7c6cb5fa3a793614a8)
> (https://git.llvm.org/git/llvm.git
> b7195a6d8d9064c4fac6a7b91826de80df394f69)
> Target: x86_64-unknown-linux-gnu
> Thread model: posix
> InstalledDir: /home/aznb/.linuxbrew/bin
> Found candidate GCC installation:
> /home/aznb/.linuxbrew/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.5.0
> Found candidate GCC installation: /usr/lib/gcc/x86_64-redhat-linux/4.4.4
> Found candidate GCC installation: /usr/lib/gcc/x86_64-redhat-linux/4.4.7
> Selected GCC installation:
> /home/aznb/.linuxbrew/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.5.0
> Candidate multilib: .;@m64
> Selected multilib: .;@m64
> Found CUDA installation:
> /net/vol3/software/modules-sw/cuda/10.0/Linux/RHEL6/x86_64, version 10.0
>  "/home/aznb/mycodes/testcuda -ferror-limit 19 -fmessage-length 0
> -pthread -fobjc-runtime=gcc -fcxx-exceptions -fexceptions
> -fdiagnostics-show-option -o /tmp/59224042.1.login.q/axpy-560f45.s -x
> cuda axpy.cu
> clang -cc1 version 9.0.0 based upon LLVM 9.0.0svn default target
> x86_64-unknown-linux-gnu
> ignoring nonexistent directory "/include"
> ignoring nonexistent directory "/include"
> ignoring duplicate directory
> "/home/aznb/.linuxbrew/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../../../include/c++/5.5.0"
> ignoring duplicate directory
> "/home/aznb/.linuxbrew/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../../../include/c++/5.5.0/x86_64-unknown-linux-gnu"
> ignoring duplicate directory
> "/home/aznb/.linuxbrew/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../../../include/c++/5.5.0/backward"
> ignoring duplicate directory "/usr/local/include"
> ignoring duplicate directory
> "/home/aznb/.linuxbrew/Cellar/llvm/HEAD-b7195a6/lib/clang/9.0.0/include"
> ignoring duplicate directory "/usr/include"
> #include "..." search starts here:
> #include <...> search starts here:
>  /home/aznb/.linuxbrew/Cellar/llvm/HEAD-b7195a6/lib/clang/9.0.0/include/cuda_wrappers
>  /net/vol3/software/modules-sw/cuda/10.0/Linux/RHEL6/x86_64/include
>  /home/aznb/.linuxbrew/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../../../include/c++/5.5.0
>  /home/aznb/.linuxbrew/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../../../include/c++/5.5.0/x86_64-unknown-linux-gnu
>  /home/aznb/.linuxbrew/bin/../lib/gcc/x86_64-unknown-linux-gnu/5.5.0/../../../../include/c++/5.5.0/backward
>  /usr/local/include
>  /home/aznb/.linuxbrew/Cellar/llvm/HEAD-b7195a6/lib/clang/9.0.0/include
>  /usr/include
> End of search list.
>  "/net/vol3/software/modules-sw/cuda/10.0/Linux/RHEL6/x86_64/bin/ptxas"
> -m64 -g --dont-merge-basicblocks --return-at-end -v --gpu-name sm_61
> --output-file /tmp/59224042.1.login.q/axpy-1ebb06.o
> /tmp/59224042.1.login.q/axpy-560f45.s
> ptxas /tmp/59224042.1.login.q/axpy-560f45.s, line 290; fatal   :
> Parsing error near '{': syntax error
> ptxas fatal   : Ptx assembly aborted due to errors
> clang-9: error: ptxas command failed with exit code 255 (use -v to see
> invocation)
>
> Maybe it's related to the illegal assembly code mentioned
> in https://reviews.llvm.org/D46189 Any idea what's going on? I'm
> including other people to see if they have any
> suggestion. https://reviews.llvm.org/D46189 also mentioned that this
> is fixed but has the fixed been merged in the trunk yet?
>
> BTW, github mirror's b7195a6 does include your commit about the debug
> info on nvptx:
>
> commit d77902a49a06890b97e33515d346c6e4df6b756b
> Author: Alexey Bataev <a.bataev at hotmail.com>
> Date:   Tue Jan 22 17:43:37 2019 +0000
>
>     [DEBUGINFO, NVPTX] Enable support for the debug info on NVPTX target.
>
>     Summary: Enable full support for the debug info.
>
>     Reviewers: echristo
>
>     Subscribers: jholewinski, aprantl, JDevlieghere, llvm-commits
>
>     Differential Revision: https://reviews.llvm.org/D46189
>
>     git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@351846
> 91177308-0d34-0410-b5e6-96231b3b80d8
>
> Thanks,
> Char
>
> 在 2019-01-23 07:59:12,"Alexey Bataev" <a.bataev at outlook.com> 写道:
>
>     Hi Char, I don't know how often it is updated, but most probably
>     it is already updated.
>
>     Best regards,
>     Alexey Bataev
>
>     22 янв. 2019 г., в 17:46, treinz <treinz at 163.com
>     <mailto:treinz at 163.com>> написал(а):
>
>>
>>     Hi Alexey,
>>
>>     Thank you for letting me know. Can I assume the the github mirror
>>     is bumped to 9.0 and should contain the commit you mentioned?
>>     Just want to make sure I'm looking at the right repo.
>>
>>     Thanks,
>>     Char
>>
>>
>>     在 2019-01-23 01:46:44,"Alexey Bataev" <a.bataev at outlook.com
>>     <mailto:a.bataev at outlook.com>> 写道:
>>
>>         Hi, debug info for the NVPTX is committed. It is not a part
>>         of 8.0 RC1, unfortunately, only in 9.0 trunk.
>>
>>         -------------
>>         Best regards,
>>         Alexey Bataev
>>
>>         14.12.2018 17:08, Alexey Bataev пишет:
>>>         Actually, we need to commit just 2 more patches to enable
>>>         basic debug info support for NVPTX. So, I hope, it is going
>>>         to be the part of the next 8.0 release. It won't be
>>>         backported to 7.0 definitely.
>>>         Sure, I will let you know when the patches are committed to
>>>         the trunk, no problems.
>>>
>>>         Best regards,
>>>         Alexey Bataev
>>>
>>>         14 дек. 2018 г., в 16:55, treinz <treinz at 163.com
>>>         <mailto:treinz at 163.com>> написал(а):
>>>
>>>>         Are you planning to release this as soon as it's ready or
>>>>         you want to make it into a major release? Is it possible to
>>>>         let me know (maybe by replying to this thread) once the
>>>>         code is ready? I know sometimes it takes a while to get
>>>>         things in the major release. I greatly appreciate your work
>>>>         on this!
>>>>
>>>>         Thanks,
>>>>         Char
>>>>
>>>>         在 2018-12-15 05:19:50,"Alexey Bataev" <a.bataev at outlook.com
>>>>         <mailto:a.bataev at outlook.com>> 写道:
>>>>
>>>>             Hi Char, sorry, you need to wait a little bit. It is
>>>>             almost ready, but not yet. For now, use nvcc if you
>>>>             need debug info for Cuda.
>>>>
>>>>             -------------
>>>>             Best regards,
>>>>             Alexey Bataev
>>>>
>>>>             14.12.2018 14:33, treinz пишет:
>>>>>             Hi Alex, Eric and Valentin,
>>>>>
>>>>>             Thanks for the information. I don't mean to push this
>>>>>             but I'm in desperate need of debugging some cuda code.
>>>>>             I'm not familiar with the llvm internal but it sounds
>>>>>             like there's at least line info now, right? If so, can
>>>>>             you point me to a branch of llvm that can help tracing
>>>>>             the bug down to certain line of code. I believe my bug
>>>>>             is simply a write/read out of array boundary.
>>>>>
>>>>>             Thanks,
>>>>>             Char
>>>>>
>>>>>             在 2018-12-05 07:15:28,"Alexey Bataev"
>>>>>             <a.bataev at hotmail.com> 写道:
>>>>>
>>>>>                 Hi, yes, these patches are required to have tne
>>>>>                 basic debug info support. At least 2 more patches
>>>>>                 are required to be able to get values of the
>>>>>                 variables without additional manual data type
>>>>>                 casting in cuda-gdb. 
>>>>>
>>>>>                 Best regards,
>>>>>                 Alexey Bataev
>>>>>
>>>>>                 4 дек. 2018 г., в 18:06, Eric Christopher
>>>>>                 <echristo at gmail.com <mailto:echristo at gmail.com>>
>>>>>                 написал(а):
>>>>>
>>>>>>                 Adding Alexey here who has been driving this
>>>>>>                 effort in llvm.
>>>>>>
>>>>>>                 There are about 5 patches waiting on my review:
>>>>>>
>>>>>>                    -: https://reviews.llvm.org/D54320
>>>>>>                    -: https://reviews.llvm.org/D46189
>>>>>>                    -: https://reviews.llvm.org/D51554
>>>>>>                    -: https://reviews.llvm.org/D46061
>>>>>>                    -: https://reviews.llvm.org/D45784
>>>>>>
>>>>>>                 After which I think we're good.
>>>>>>
>>>>>>                 -eric
>>>>>>
>>>>>>                 On Mon, Dec 3, 2018 at 6:29 PM Valentin Churavy
>>>>>>                 via llvm-dev <llvm-dev at lists.llvm.org
>>>>>>                 <mailto:llvm-dev at lists.llvm.org>> wrote:
>>>>>>
>>>>>>                     AFAIK there is work under way from IBM
>>>>>>                     (couple of PRs open), but yes Clang 7.0
>>>>>>                     doesn't produce the necessary information.
>>>>>>
>>>>>>                     -V
>>>>>>
>>>>>>                     On Fri, Nov 30, 2018, 14:58 treinz via
>>>>>>                     llvm-dev <llvm-dev at lists.llvm.org
>>>>>>                     <mailto:llvm-dev at lists.llvm.org> wrote:
>>>>>>
>>>>>>                         Hi all,
>>>>>>                         I found this
>>>>>>                         http://lists.llvm.org/pipermail/llvm-dev/2017-November/118871.html
>>>>>>                         when googling about compiling CUDA code
>>>>>>                         using llvm. Is it still the case that one
>>>>>>                         can't step into CUDA kernel code compiled
>>>>>>                         by llvm in cuda-gdb? I'm using clang 7.0.
>>>>>>
>>>>>>                         Thanks,
>>>>>>                         Char
>>>>>>
>>>>>>
>>>>>>                          
>>>>>>
>>>>>>                         _______________________________________________
>>>>>>                         LLVM Developers mailing list
>>>>>>                         llvm-dev at lists.llvm.org
>>>>>>                         <mailto:llvm-dev at lists.llvm.org>
>>>>>>                         http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>>>>>
>>>>>>                     _______________________________________________
>>>>>>                     LLVM Developers mailing list
>>>>>>                     llvm-dev at lists.llvm.org
>>>>>>                     <mailto:llvm-dev at lists.llvm.org>
>>>>>>                     http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
>>>>>>
>>>>>
>>>>>
>>>>>              
>>>>>
>>>>
>>>>
>>>>          
>>>>
>>
>>
>>      
>>
>
>
>  
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190123/9006edc9/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20190123/9006edc9/attachment.sig>


More information about the llvm-dev mailing list