Skip to content
This repository has been archived by the owner on Mar 22, 2019. It is now read-only.

unable to debug OpenCL applciation #8

Open
pszi1ard opened this issue Mar 4, 2017 · 2 comments
Open

unable to debug OpenCL applciation #8

pszi1ard opened this issue Mar 4, 2017 · 2 comments

Comments

@pszi1ard
Copy link

pszi1ard commented Mar 4, 2017

I run ROCm release 1.4 (installed from the deb repos) on Ubuntu 14.04. I'm trying to debug an OpenCL application (GROMACS molecular simulation code). I passed -g to the kernel compilation, run in rocm-debugger and get the following:

(ROCm-gdb) i threads 
  Id   Target Id         Frame 
* 1    Thread 0x7ffff7fe07c0 (LWP 11152) "gmx" 0x00007ffff6a4efc9 in ?? () from /lib/x86_64-linux-gnu/libc.so.6
  2    Thread 0x7ffff45a3700 (LWP 11158) "gmx" 0x00007ffff6aa81e7 in ioctl () from /lib/x86_64-linux-gnu/libc.so.6
  3    Thread 0x7ffff29a4700 (LWP 11159) "gmx" 0x00007ffff79c07be in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
  4    Thread 0x7ffff103d700 (LWP 11180) "gmx" 0x00007ffff1f63496 in HwDbgAgent::AgentSegmentLoader::AddElfVAForEachSegmentDescriptor (this=0x7ffff103c730, pSegments=0x7fffeb08b008) at AgentSegmentLoader.cpp:181
(ROCm-gdb) thread 2
[Switching to thread 2 (Thread 0x7ffff45a3700 (LWP 11158))]
#0  0x00007ffff6aa81e7 in ioctl () from /lib/x86_64-linux-gnu/libc.so.6
(ROCm-gdb) bt 
#0  0x00007ffff6aa81e7 in ioctl () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007ffff4e06704 in kmtIoctl () from /opt/rocm/libhsakmt/lib/libhsakmt.so.1
#2  0x00007ffff4dfe50b in hsaKmtWaitOnMultipleEvents () from /opt/rocm/libhsakmt/lib/libhsakmt.so.1
#3  0x00007ffff5044d87 in ?? () from /opt/rocm/hsa/lib/libhsa-runtime64.so.1
#4  0x00007ffff5040a06 in ?? () from /opt/rocm/hsa/lib/libhsa-runtime64.so.1
#5  0x00007ffff501f107 in ?? () from /opt/rocm/hsa/lib/libhsa-runtime64.so.1
#6  0x00007ffff79bc184 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#7  0x00007ffff6ab137d in clone () from /lib/x86_64-linux-gnu/libc.so.6
(ROCm-gdb) thre 3
[Switching to thread 3 (Thread 0x7ffff29a4700 (LWP 11159))]
#0  0x00007ffff79c07be in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
(ROCm-gdb) bt 
#0  0x00007ffff79c07be in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib/x86_64-linux-gnu/libpthread.so.0
#1  0x00007ffff2bdb9c6 in ?? () from /opt/rocm/hsa/lib/libhsa-runtime-tools64.so.1
#2  0x00007ffff2b7a497 in ?? () from /opt/rocm/hsa/lib/libhsa-runtime-tools64.so.1
#3  0x00007ffff2bdb527 in ?? () from /opt/rocm/hsa/lib/libhsa-runtime-tools64.so.1
#4  0x00007ffff79bc184 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#5  0x00007ffff6ab137d in clone () from /lib/x86_64-linux-gnu/libc.so.6
(ROCm-gdb) thr 4
[Switching to thread 4 (Thread 0x7ffff103d700 (LWP 11180))]
#0  0x00007ffff1f63496 in HwDbgAgent::AgentSegmentLoader::AddElfVAForEachSegmentDescriptor (this=0x7ffff103c730, pSegments=0x7fffeb08b008) at AgentSegmentLoader.cpp:181
181	in AgentSegmentLoader.cpp
(ROCm-gdb) bt 
#0  0x00007ffff1f63496 in HwDbgAgent::AgentSegmentLoader::AddElfVAForEachSegmentDescriptor (this=0x7ffff103c730, pSegments=0x7fffeb08b008) at AgentSegmentLoader.cpp:181
#1  0x00007ffff1f632d5 in HwDbgAgent::AgentSegmentLoader::WriteToSharedMemory (this=0x7ffff103c730) at AgentSegmentLoader.cpp:140
#2  0x00007ffff1f62e72 in HwDbgAgent::AgentSegmentLoader::UpdateLoadedSegments (this=0x7ffff103c730) at AgentSegmentLoader.cpp:100
#3  0x00007ffff1f37ec3 in HwDbgAgent::PreDispatchCallback (pRTParam=0x7ffff103c900, pUserArgs=0x17f82a0) at PrePostDispatchCallback.cpp:143
#4  0x00007ffff2b72f48 in ?? () from /opt/rocm/hsa/lib/libhsa-runtime-tools64.so.1
#5  0x00007ffff2b76683 in ?? () from /opt/rocm/hsa/lib/libhsa-runtime-tools64.so.1
#6  0x00007ffff5418d3a in ?? () from /opt/rocm/opencl/lib/x86_64/libamdocl64.so
#7  0x00007ffff541b4aa in ?? () from /opt/rocm/opencl/lib/x86_64/libamdocl64.so
#8  0x00007ffff541ba5e in ?? () from /opt/rocm/opencl/lib/x86_64/libamdocl64.so
#9  0x00007ffff53f233d in ?? () from /opt/rocm/opencl/lib/x86_64/libamdocl64.so
#10 0x00007ffff53f26bd in ?? () from /opt/rocm/opencl/lib/x86_64/libamdocl64.so
#11 0x00007ffff53ba1af in ?? () from /opt/rocm/opencl/lib/x86_64/libamdocl64.so
#12 0x00007ffff54001ec in ?? () from /opt/rocm/opencl/lib/x86_64/libamdocl64.so
#13 0x00007ffff79bc184 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0
#14 0x00007ffff6ab137d in clone () from /lib/x86_64-linux-gnu/libc.so.6
(ROCm-gdb) 

Should this work at all? Is there a way to make it work?

@bpurnomo
Copy link
Contributor

bpurnomo commented Mar 4, 2017

Hi,
OpenCL debugging is currently not supported.

From the Overview:
Initially, the debugging support within the GPU kernels starts with the HSAIL 1.0 programming language. This support requires a kernel compilation path that goes through HSAIL kernel (such as through HCC-HSAIL or libHSAIL/HSAILAsm).

@pszi1ard
Copy link
Author

pszi1ard commented Mar 4, 2017

Too bad. ETA for OpenCL support?

Is there any way at all to debug OpenCL on AMD GPUs at the moment?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants