AMD Extending DWARF To Better Handle GPU Debugging, Continues Collaborating With GCC & LLVM
In addition to AMD's increasing Linux kernel contributions, they are also contributing more improvements in user-space too thanks to their super-computing wins and other big enterprise deployments that are Linux-based. One of the areas talked about this week at the Linux Plumbers Conference with the GNU Tools track is how they are working to extend the DWARF debug format to better handle GPU debugging.
AMD engineers have been working on extensions to the DWARF debugging data format to cater to SIMT/SIMD debugging with a particular focus on GPUs/accelerators. They are ultimately hoping these improvements will make it into the DWARF Version 6 format to come in the future.
This work comes as part of AMD's effort to bring GPU compute debugging to the GNU Debugger, GDB. AMD has been developing rocGDB as part of their Radeon Open eCosystem (ROCm) and this has driven their planned contributions for DWARF 6 while also engaging with the LLVM community too.
Those interested in all the technical details for how AMD engineers want to improve the DWARF debug format for benefiting GPUs and other targets can find the LPC2021 video embedded below along with this slide deck. AMD's debugging code as part of the ROCm itself is also all open-source and available through GitHub along with planning for upstream the relevant LLVM and GNU/GCC portions as well.