# vLLM 0.20.1, Radeon AI 9700, 1 CPU core at 100%

**URL:** <https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621>\
**Category:** General\
**Created:** [May 6, 2026, 5:52pm UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621 "2026-05-06T17:52:43Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![dramallama](https://avatars.discourse-cdn.com/v4/letter/d/e9c0ed/32.png) [@dramallama](https://discuss.vllm.ai/u/dramallama)\
**Post date:** [May 6, 2026, 5:52pm UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621/1 "2026-05-06T17:52:43Z")

</div>

Hello there,

I’m serving a FP8-quant of gemma-4 E4B on a Radeon AI Pro 9700 with vLLM and I find that things perform and scale wonderfully, so thanks a lot to the vLLM team!

However, even when no requests are processed, one CPU core is at 100% busy all the time (kept busy by a `VLLM:EngineCore` thread, apparently).

The setup of my test environment:

- Ryzen 1600AF (basically a 2600), 6 cores/12 threads with 16 GB of RAM
- Linux Mint 22.4 (Ubuntu 24.04 based)
- one Radeon AI Pro 9700
- ROCm 7.2.2

Installed vLLM 0.20.1 in a Python venv:

pip install vllm==0.20.1+rocm721 --extra-index-url [https://wheels.vllm.ai/rocm/0.20.1/rocm721](https://wheels.vllm.ai/rocm/0.20.1/rocm721)

Now, there are old reports that on the surface read related (issue #1698), however, this should have been solved first by pull #16226 which introduced `VLLM_SLEEP_WHEN_IDLE=1`, and then by another overhaul via pull #28053 which superseded that earlier patch as far as I can tell.

I wonder if this is a Radeon AI Pro 9700 specific issue, there seems to be other problems regarding vLLM and ROCm regarding that GPU, e.g., issues #40980 (albeit that issue is the GPU being at 100%, not the CPU, so I assume it’s unrelated).

(as a new user I can’t post more than two links, I’m sorry the issues and pull requests are not proper links)

Any ideas on how to resolve this? Thanks!

---

<div class="post-metadata">

**Author:** ![RunLLM](https://yyz2.discourse-cdn.com/flex036/user_avatar/discuss.vllm.ai/runllm/32/233_2.png) [@RunLLM](https://discuss.vllm.ai/u/RunLLM)\
**Post date:** [May 6, 2026, 5:53pm UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621/2 "2026-05-06T17:53:08Z")

</div>

The persistent 100% CPU usage by a vLLM:EngineCore thread when idle was previously addressed by introducing the VLLM\_SLEEP\_WHEN\_IDLE=1 environment variable (see [issue #16968](https://github.com/vllm-project/vllm/issues/16968) and [PR #16226](https://github.com/vllm-project/vllm/pull/16226)). However, this workaround was later superseded by a more comprehensive fix in [PR #28053](https://github.com/vllm-project/vllm/pull/28053), which should be included in vLLM 0.20.1 and newer, making the environment variable unnecessary. If you are still seeing high CPU usage on vLLM 0.20.1+rocm721, this may indicate a regression or a hardware/ROCm-specific issue with the Radeon AI Pro 9700.

There are no reports in the provided data sources of this issue persisting on supported NVIDIA or AMD platforms after the aforementioned fixes. For further troubleshooting, ensure you are not running with legacy environment variables, and consider opening a new issue with detailed logs and system information, as recommended in the [troubleshooting guide](https://docs.vllm.ai/en/latest/usage/troubleshooting/). Would you like a step-by-step breakdown of how to collect and submit diagnostic information for the vLLM team?

Sources:

- [vLLM issue #16968](https://github.com/vllm-project/vllm/issues/16968)
- [vLLM PR #16226](https://github.com/vllm-project/vllm/pull/16226)
- [troubleshooting guide](https://docs.vllm.ai/en/latest/usage/troubleshooting/)

Hint: Mention @RunLLM in the post for followups.

---

<div class="post-metadata">

**Author:** ![dramallama](https://avatars.discourse-cdn.com/v4/letter/d/e9c0ed/32.png) [@dramallama](https://discuss.vllm.ai/u/dramallama)\
**Post date:** [May 6, 2026, 5:56pm UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621/3 "2026-05-06T17:56:45Z")

</div>

Hi @RunLLM ,

it appears your response matches with my research. If you can provide a guide on how to determine what the busy CPU core does and provide proper debugging information to the vLLM team, that’d be appreciated. Thanks!

---

<div class="post-metadata">

**Author:** ![RunLLM](https://yyz2.discourse-cdn.com/flex036/user_avatar/discuss.vllm.ai/runllm/32/233_2.png) [@RunLLM](https://discuss.vllm.ai/u/RunLLM)\
**Post date:** [May 6, 2026, 5:57pm UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621/4 "2026-05-06T17:57:08Z")

</div>

To determine what the busy CPU core is doing and provide actionable debugging info to the vLLM team, you should (1) identify the process/thread responsible, (2) collect stack traces, and (3) gather environment and log details. According to the [troubleshooting guide](https://docs.vllm.ai/en/latest/usage/troubleshooting/), you can use tools like `htop` or `top` to find the PID, then use `strace -p <PID>` or `gdb -p <PID>` to capture what the thread is executing. For Python-level insight, `py-spy top -p <PID>` or `py-spy dump -p <PID>` can show which Python functions are consuming CPU.

Additionally, collect the output of `python collect_env.py` (from the vLLM repo), your vLLM command line, and any relevant logs (especially with `export VLLM_LOGGING_LEVEL=DEBUG`). Attach these, along with stack traces, to a new [GitHub issue](https://github.com/vllm-project/vllm/issues/new/choose) as recommended in the [troubleshooting docs](https://docs.vllm.ai/en/latest/usage/troubleshooting/). Would you like a step-by-step example of these commands?

Sources:

- [vLLM Troubleshooting Guide](https://docs.vllm.ai/en/latest/usage/troubleshooting/)
- [vLLM Troubleshooting GitHub](https://github.com/vllm-project/vllm/blob/main/docs/usage/troubleshooting.md)

Hint: Mention @RunLLM in the post for followups.

---

<div class="post-metadata">

**Author:** ![dramallama](https://avatars.discourse-cdn.com/v4/letter/d/e9c0ed/32.png) [@dramallama](https://discuss.vllm.ai/u/dramallama)\
**Post date:** [May 6, 2026, 7:01pm UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621/5 "2026-05-06T19:01:30Z")

</div>

@RunLLM

When looking into the process that keeps the CPU core busy 100%, the output consists of endless repeats of

`ioctl(12, AMDKFD_IOC_WAIT_EVENTS, 0x7527a97fed00) = 0`

This looks like this system call is immediately returning, instead of waiting for an appreciable amount of time, which perhaps introduces busy-wait-alike behavior by accident.

(edit: utilizing `strace -p <PID>`)

---

<div class="post-metadata">

**Author:** ![RunLLM](https://yyz2.discourse-cdn.com/flex036/user_avatar/discuss.vllm.ai/runllm/32/233_2.png) [@RunLLM](https://discuss.vllm.ai/u/RunLLM)\
**Post date:** [May 6, 2026, 7:02pm UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621/6 "2026-05-06T19:02:05Z")

</div>

Your analysis is correct: if ioctl(AMDKFD\_IOC\_WAIT\_EVENTS) returns immediately in a tight loop, it causes busy-waiting and high CPU usage. This suggests the ROCm driver or vLLM’s interaction with it is not blocking as intended, leading to the observed 100% CPU utilization. This behavior is not expected after the vLLM fixes for idle CPU usage, and appears to be specific to the AMD ROCm stack or the Radeon AI Pro 9700.

This detail—especially the exact syscall pattern—should be included in a new GitHub issue for the vLLM team, as recommended in the [troubleshooting guide](https://docs.vllm.ai/en/latest/usage/troubleshooting/). There is no explicit mention of this ioctl behavior in the vLLM data sources, so it may be a new or hardware-specific bug.

Sources:

- [troubleshooting guide](https://docs.vllm.ai/en/latest/usage/troubleshooting/)

Hint: Mention @RunLLM in the post for followups.

---

<div class="post-metadata">

**Author:** ![AnttiK](https://avatars.discourse-cdn.com/v4/letter/a/e79b87/32.png) [@AnttiK](https://discuss.vllm.ai/u/AnttiK)\
**Post date:** [September 13, 2026, 12:23am UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621/7 "2026-09-13T00:23:29Z")

</div>

Having same issue with AMD HX 370 890M igpu and vLLM 0.29 docker rocm openai image

@RunLLM

---

<div class="post-metadata">

**Author:** ![dramallama](https://avatars.discourse-cdn.com/v4/letter/d/e9c0ed/32.png) [@dramallama](https://discuss.vllm.ai/u/dramallama)\
**Post date:** [October 20, 2026, 2:38pm UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621/8 "2026-10-20T14:38:07Z")

</div>

I’m also seeing one CPU core being at 100% when idle. This looks very much like [[Bug]: VLLM:EngineCore thread consumes 100% CPU idle on ROCm/Radeon AI Pro 9700 · Issue #41964 · vllm-project/vllm · GitHub](https://github.com/vllm-project/vllm/issues/41964) again, which was resolved in May.

“Somehow, that bug returned.”

---

<div class="post-metadata">

**Author:** ![dramallama](https://avatars.discourse-cdn.com/v4/letter/d/e9c0ed/32.png) [@dramallama](https://discuss.vllm.ai/u/dramallama)\
**Post date:** [October 21, 2026, 11:38am UTC](https://discuss.vllm.ai/t/vllm-0-20-1-radeon-ai-9700-1-cpu-core-at-100/2621/9 "2026-10-21T11:38:05Z")

</div>

I found a solution that works for me over at [[gfx1201] Persistent 100% CPU spin in InterruptSignal::WaitRelaxed on ROCm 10 userland — survives idle, survives HSA\_WAIT\_STATE\_BLOCKED force · Issue #12431 · ROCm/rocm-systems · GitHub](https://github.com/ROCm/rocm-systems/issues/12431#issuecomment-5890936838)

When setting the environment variable `HSA_TOOLS_DISABLE_REGISTER=1`, then ROCm won’t keep a CPU core busy and I see normal CPU usage again.
