vLLM v1/utils.py shutdown() and the engine-process shutdown-timeout helpers
Fields
sources/ops-vllm-process-shutdown-timeoutNotes
shutdown(procs, timeout=None) defaults to a 5.0s grace 'for best-effort cleanup paths that do not have a user-configured shutdown timeout', sends proc.terminate() (SIGTERM) to every live process, joins each against a single shared deadline, then logs '[shutdown] Process manager: force killing remaining processes count=%d' and calls kill_process_tree(pid) on the survivors. In vllm/v1/engine/utils.py, get_engine_process_shutdown_timeout() returns ROCM_ENGINE_PROCESS_SHUTDOWN_TIMEOUT_S = 15.0 only when BOTH the request timeout and the process timeout are zero on ROCm, with the comment 'ROCm teardown can take longer than the generic best-effort window, and force-killing during teardown can leave VRAM resident', and warns that 'a zero remaining budget for a positive request timeout must not receive a fresh grace period because EngineCore relies on that deadline to enforce request draining.'
Cross-references
This record references no other records.