Documentation
¶
Overview ¶
Package parcagpu reads GPU events from the eBPF profiler's cupti_events ringbuf, marries them with symbolized CUDA stack traces from the profiler's interpreter/gpu package, and reports the completed traces directly via a TraceReporter. It is wired into the profiler through processmanager.TraceInterceptor.
Every event in the ringbuf begins with a u32 event_type discriminator at offset 0; the reader loop dispatches by tag to handlers for kernel timing, cubin-loaded notifications, PC samples, stall-reason maps, and BPF errors.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Start ¶
func Start(ctx context.Context, tr *tracer.Tracer, rep reporter.TraceReporter, exeRep reporter.ExecutableReporter, ) processmanager.TraceInterceptor
Start starts a goroutine that reads GPU events from the cupti_events ringbuf and returns a TraceInterceptor that diverts CUDA traces (post-symbolization) into the GPU fixer. Completed CUDA traces are reported directly via rep. Cubin-loaded events are forwarded to exeRep for debug-file upload; if exeRep is nil the cubin is still cached locally for PC-sample symbolization.
Types ¶
This section is empty.