[Bugfix][ROCm][Build] fix profiler hang due to queue interposition bug - #54171
Conversation
Signed-off-by: simondanielsson <simon.danielsson99@hotmail.com>
Signed-off-by: simondanielsson <simon.danielsson99@hotmail.com>
Signed-off-by: simondanielsson <simon.danielsson99@hotmail.com>
…-hang Signed-off-by: simondanielsson <simon.danielsson99@hotmail.com>
|
✅ @simondanielsson, CI is now available for this PR.
|
dllehr-amd
left a comment
There was a problem hiding this comment.
Whelp...we carrying this one around a little longer. I'm good merging.
|
/ci run |
|
✅ Triggered Buildkite CI #86091 for commit |
|
/ci retry |
|
✅ Queued 1 failed job(s) for retry in Buildkite CI #86091. |
|
/ci retry |
|
✅ Queued 1 failed job(s) for retry in Buildkite CI #86091. |
|
/ci retry |
|
✅ Queued 1 failed job(s) for retry in Buildkite CI #86091. |
|
/ci run |
|
✅ Triggered Buildkite CI #86165 for commit |
|
@simondanielsson Please don't use excessive retries without any particular evidence that the failed test group is fixed |
|
/ci retry |
|
✅ Queued 1 failed job(s) for retry in Buildkite CI #86165. |
|
Now that the 7.14 docker image is merged in #49925, we should probably copy this over in a follow-up to that dockerfile as well |
|
/ci run |
|
✅ Triggered Buildkite CI #86680 for commit |
|
/ci run |
|
✅ Triggered Buildkite CI #86767 for commit |
|
/ci retry |
|
✅ Queued 2 failed job(s) for retry in Buildkite CI #86767. |
vllm-project#54171) Signed-off-by: simondanielsson <simon.danielsson99@hotmail.com> Co-authored-by: Andreas Karatzas <akaratza@amd.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
vllm-project#54171) Signed-off-by: simondanielsson <simon.danielsson99@hotmail.com> Co-authored-by: Andreas Karatzas <akaratza@amd.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
Purpose
Fixes #54087.
Applies two bug fixes that are not part of the rocprofiler-sdk commit we're on (as they were not part of the therock-7.14 release):
Alternative: We could also bump to rocprofiler-sdk 1.3.5 but that will be a larger change that ver is on the therock-10.0 line.
Test Plan
Test Result
1. Build succeeds e2e. Here's the part where the patch is applied:
2. Profiling no longer hangs
(built base and final image as vllm/vllm-openai-rocm:qi-fix):
(APIServer pid=1) INFO 08-28 10:54:43 [api_utils.py:347] (APIServer pid=1) INFO 08-28 10:54:43 [api_utils.py:347] █ █ █▄ ▄█ (APIServer pid=1) INFO 08-28 10:54:43 [api_utils.py:347] ▄▄ ▄█ █ █ █ ▀▄▀ █ version 0.28.1rc1.dev53+gab1ba6c31 (APIServer pid=1) INFO 08-28 10:54:43 [api_utils.py:347] █▄█▀ █ █ █ █ model RedHatAI/gemma-4-31B-it-FP8-block (APIServer pid=1) INFO 08-28 10:54:43 [api_utils.py:347] ▀▀ ▀▀▀▀▀ ▀▀▀▀▀ ▀ ▀ (APIServer pid=1) INFO 08-28 10:54:43 [api_utils.py:347] (APIServer pid=1) INFO 08-28 10:54:43 [api_utils.py:286] non-default args: {'model_tag': 'RedHatAI/gemma-4-31B-it-FP8-block', 'port': 8200, 'model': 'RedHatAI/gemma-4-31B-it-FP8-block', 'load_format': 'dummy', 'profiler_config': ProfilerConfig(profiler='torch', torch_profiler_dir='/tmp/traces/1318414', proton_profiler_dir='', proton_context='shadow', proton_data='tree', proton_backend=None, proton_mode=None, proton_hook=None, proton_output_format=None, torch_profiler_with_stack=False, torch_profiler_with_flops=False, torch_profiler_use_gzip=True, torch_profiler_dump_cuda_time_total=True, torch_profiler_record_shapes=False, torch_profiler_with_memory=False, capture_torch_profiler=False, detailed_trace_annotation=False, ignore_frontend=False, delay_iterations=0, max_iterations=0, warmup_iterations=0, active_iterations=5, wait_iterations=0)} ... USDT:2026-08-28 11:00:04 1:1404 ActivityProfilerController.cpp:415] profiler_start (APIServer pid=1) INFO 08-28 11:00:04 [api_router.py:25] Profiler started. (APIServer pid=1) INFO: 127.0.0.1:46248 - "POST /start_profile HTTP/1.1" 200 OK (APIServer pid=1) INFO: 127.0.0.1:46386 - "GET /metrics HTTP/1.1" 200 OK (APIServer pid=1) INFO: 127.0.0.1:46488 - "GET /metrics HTTP/1.1" 200 OK (APIServer pid=1) INFO: 127.0.0.1:46274 - "POST /v1/completions HTTP/1.1" 200 OK (APIServer pid=1) INFO: 127.0.0.1:46398 - "POST /v1/completions HTTP/1.1" 200 OK (APIServer pid=1) INFO: 127.0.0.1:46466 - "POST /v1/completions HTTP/1.1" 200 OK (APIServer pid=1) INFO: 127.0.0.1:46484 - "POST /v1/completions HTTP/1.1" 200 OK ... (APIServer pid=1) INFO 08-28 11:02:24 [api_router.py:31] Stopping profiler... USDT:2026-08-28 11:02:24 1:1404 ActivityProfilerController.cpp:455] profiler_stop USDT:2026-08-28 11:02:24 603:603 ActivityProfilerController.cpp:455] profiler_stop [rank0]:[W828 11:02:26.720282776 collection.cpp:1182] Warning: ROCTracer produced duplicate flow start: 3 (function operator()) (APIServer pid=1) INFO 08-28 11:02:33 [loggers.py:310] Engine 000: Avg prompt throughput: 0.0 tokens/s, Avg generation throughput: 125.0 tokens/s, Running: 0 reqs, Waiting: 0 reqs, GPU KV cache usage: 0.0%, Prefix cache hit rate: 11.0% (APIServer pid=1) INFO 08-28 11:02:43 [loggers.py:310] Engine 000: Avg prompt throughput: 0.0 tokens/s, Avg generation throughput: 0.0 tokens/s, Running: 0 reqs, Waiting: 0 reqs, GPU KV cache usage: 0.0%, Prefix cache hit rate: 11.0% (EngineCore pid=603) ------------------------------------------------------- ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ (EngineCore pid=603) Name Self CPU % Self CPU CPU total % CPU total CPU time avg Self CUDA Self CUDA % CUDA total CUDA time avg # of Calls (EngineCore pid=603) ------------------------------------------------------- ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ ------------ (EngineCore pid=603) _w8a8_triton_block_scaled_mm.kd 0.00% 0.000us 0.00% 0.000us 0.000us 89.466s 64.09% 89.466sEssential Elements of an Effective PR Description Checklist
supported_models.mdandexamplesfor a new model.