Re: ROCm (Rocgdb debugger) use queues to pass debug commands?
It's Me via Gdb <[email protected]>
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Message-ID | <[email protected]> |
Hi Tony , I appreciate the reply , thanks . So just to confirm the commands are not encapsulated in a packet and pushed into queues in HSA AQL queues . Can you please give a high level path for setting a breakpoint from user land to the GPU ( how the flow happen through the software stack ) Also if there is not much trouble can you also provide any APIs for passing a breakpoint . I looked through rocgdb / rocgdb driver code / ROCm API .. and the clear path is not clear for me .. Again thanks a lot for the help and the reply . Appreciated > On Feb 1, 2021, at 12:24 PM, Tye, Tony <[email protected]> wrote: > > [AMD Official Use Only - Internal Distribution Only] > > rocgdb uses a driver that provides an ioctl interface that is similar in concept to what the ptrace and waitpid do for a CPU. There is a Debugger API library that uses the ioctl interface to provide an general way to control the GPU threads. There is a rocm target that is part of gdb that uses the Debugger ABI to allow GPU threads to be controlled just like CPU threads. All the code is open source. > > Thanks, > -Tony > > -----Original Message----- > From: Gdb <[email protected]> On Behalf Of It's Me via Gdb > Sent: Monday, February 1, 2021 3:18 PM > To: [email protected] > Subject: ROCm (Rocgdb debugger) use queues to pass debug commands? > > [CAUTION: External Email] > > Hi , > > In a heterogenous environment , how ROCm / rocgdb pass its debug commands ( example : breakpoint command) to the target ( Example a GPU) . Does the debugger queue it’s debug commands using HSA queues ? If that’s not that case how ? > > What is the role of the driver in this case . > > Thanks