Commit 5a8d276
committed
[rocprofiler-sdk] On-demand GPU profile queue creation/destruction
Create and destroy GPU hardware profile queues per start_context/stop_context
cycle instead of permanently at SDK initialization. This eliminates ~70ms TTFT
overhead caused by 8 persistent GPU queues in the MES runlist.
Changes:
- agent_cache.hpp: Add destroy_device_counting_service_queue() declaration
- agent_cache.cpp: Defer queue creation from constructor to start_context;
implement destroy_device_counting_service_queue() with hsa_queue_destroy
- device_counting.cpp: Call init_device_counting_service_queue() in
start_agent_ctx before queue check; destroy signals, reset packet, and
destroy queue in stop_agent_ctx after completion
Test results (10 rounds, Qwen3-VL-235B on MI300X x8 with old in-process RDC):
- Baseline (no RDC): Mean TTFT 889.67ms
- Old RDC (permanent queues): Mean TTFT 972.63ms (+83ms, +9.3%)
- On-demand queues: Mean TTFT 854.60ms (-35ms, -3.9% vs baseline)1 parent 2ce7992 commit 5a8d276
File tree
3 files changed
+34
-1
lines changed- projects/rocprofiler-sdk/source/lib/rocprofiler-sdk
- counters
- hsa
3 files changed
+34
-1
lines changedLines changed: 16 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
432 | 432 | | |
433 | 433 | | |
434 | 434 | | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
435 | 438 | | |
436 | 439 | | |
437 | 440 | | |
| |||
603 | 606 | | |
604 | 607 | | |
605 | 608 | | |
| 609 | + | |
| 610 | + | |
| 611 | + | |
| 612 | + | |
| 613 | + | |
| 614 | + | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
| 621 | + | |
606 | 622 | | |
607 | 623 | | |
608 | 624 | | |
| |||
Lines changed: 17 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| 30 | + | |
30 | 31 | | |
31 | 32 | | |
32 | 33 | | |
| |||
171 | 172 | | |
172 | 173 | | |
173 | 174 | | |
174 | | - | |
| 175 | + | |
175 | 176 | | |
176 | 177 | | |
177 | 178 | | |
| |||
181 | 182 | | |
182 | 183 | | |
183 | 184 | | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
184 | 200 | | |
185 | 201 | | |
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
74 | 74 | | |
75 | 75 | | |
76 | 76 | | |
| 77 | + | |
77 | 78 | | |
78 | 79 | | |
79 | 80 | | |
| |||
0 commit comments