Skip to content

Conversation

@robertgshaw2-redhat
Copy link
Collaborator

@robertgshaw2-redhat robertgshaw2-redhat commented Jan 3, 2025

SUMMARY:

  • handle exception in multiproc worker busy loop (currently, we hang if this happens)

This is what the stack trace looks like after this PR:

INFO:     Started server process [4028321]
INFO:     Waiting for application startup.
INFO:     Application startup complete.
INFO:     Uvicorn running on http://0.0.0.0:8001 (Press CTRL+C to quit)
INFO:     127.0.0.1:58610 - "GET /v1/models HTTP/1.1" 200 OK
INFO 01-03 16:21:03 logger.py:37] Received request cmpl-ac2ac919986b405fb3528f1a0e8e1613-0: prompt: 'Hello my name is', params: SamplingParams(n=1, presence_penalty=0.0, frequency_penalty=0.0, repetition_penalty=1.0, temperature=1.0, top_p=1.0, top_k=-1, min_p=0.0, seed=None, stop=[], stop_token_ids=[], bad_words=[], include_stop_str_in_output=False, ignore_eos=False, max_tokens=100, min_tokens=0, logprobs=None, prompt_logprobs=None, skip_special_tokens=True, spaces_between_special_tokens=True, truncate_prompt_tokens=None, guided_decoding=None), prompt_token_ids: [128000, 9906, 856, 836, 374], lora_request: None, prompt_adapter_request: None.
INFO:     127.0.0.1:58610 - "POST /v1/completions HTTP/1.1" 200 OK
INFO 01-03 16:21:04 async_llm.py:191] Added request cmpl-ac2ac919986b405fb3528f1a0e8e1613-0.
ERROR 01-03 16:21:05 core.py:200] EngineCore hit an exception: Traceback (most recent call last):
ERROR 01-03 16:21:05 core.py:200]   File "/home/rshaw/vllm/vllm/v1/engine/core.py", line 193, in run_engine_core
ERROR 01-03 16:21:05 core.py:200]     engine_core.run_busy_loop()
ERROR 01-03 16:21:05 core.py:200]   File "/home/rshaw/vllm/vllm/v1/engine/core.py", line 231, in run_busy_loop
ERROR 01-03 16:21:05 core.py:200]     outputs = self.step()
ERROR 01-03 16:21:05 core.py:200]               ^^^^^^^^^^^
ERROR 01-03 16:21:05 core.py:200]   File "/home/rshaw/vllm/vllm/v1/engine/core.py", line 124, in step
ERROR 01-03 16:21:05 core.py:200]     output = self.model_executor.execute_model(scheduler_output)
ERROR 01-03 16:21:05 core.py:200]              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ERROR 01-03 16:21:05 core.py:200]   File "/home/rshaw/vllm/vllm/v1/executor/multiproc_executor.py", line 163, in execute_model
ERROR 01-03 16:21:05 core.py:200]     model_output = self.collective_rpc("execute_model",
ERROR 01-03 16:21:05 core.py:200]                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ERROR 01-03 16:21:05 core.py:200]   File "/home/rshaw/vllm/vllm/v1/executor/multiproc_executor.py", line 157, in collective_rpc
ERROR 01-03 16:21:05 core.py:200]     raise e
ERROR 01-03 16:21:05 core.py:200]   File "/home/rshaw/vllm/vllm/v1/executor/multiproc_executor.py", line 146, in collective_rpc
ERROR 01-03 16:21:05 core.py:200]     raise result
ERROR 01-03 16:21:05 core.py:200] ValueError: SIMULATE CUDA EXCEPTION
ERROR 01-03 16:21:05 core.py:200] 
CRITICAL 01-03 16:21:05 async_llm.py:53] AsyncLLM got SIGQUIT from worker processes, shutting down. See stack trace above for root cause issue.
Killed

ywang96 and others added 23 commits December 31, 2024 21:17
…11632)

Signed-off-by: Roger Wang <[email protected]>
Signed-off-by: DarkLight1337 <[email protected]>
Signed-off-by: Isotr0py <[email protected]>
Co-authored-by: DarkLight1337 <[email protected]>
Co-authored-by: Isotr0py <[email protected]>
Signed-off-by: Kazuhiro Serizawa <[email protected]>
…essor (vllm-project#11669)

Signed-off-by: DarkLight1337 <[email protected]>
Signed-off-by: Isotr0py <[email protected]>
Co-authored-by: Isotr0py <[email protected]>
@github-actions
Copy link

github-actions bot commented Jan 3, 2025

👋 Hi! Thank you for contributing to the vLLM project.
Just a reminder: PRs would not trigger full CI run by default. Instead, it would only run fastcheck CI which starts running only a small and essential subset of CI tests to quickly catch errors. You can run other CI tests on top of those by going to your fastcheck build on Buildkite UI (linked in the PR checks section) and unblock them. If you do not have permission to unblock, ping simon-mo or khluu to add you in our Buildkite org.

Once the PR is approved and ready to go, your PR reviewer(s) can run CI to test the changes comprehensively before merging.

To run CI, PR reviewers can do one of these:

  • Add ready label to the PR
  • Enable auto-merge.

🚀

class MultiprocExecutor(Executor):

def __init__(self, vllm_config: VllmConfig) -> None:
# Call self.shutdown at exit to clean up
Copy link
Collaborator Author

@robertgshaw2-redhat robertgshaw2-redhat Jan 3, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

NOTE: removed this because this creates a circular reference that can prevent us from being gced (finalizer shutdown function cannot be a bound method of self + EngineCore calls already calls executor.shutdown() at its exit.

@github-actions
Copy link

github-actions bot commented Apr 4, 2025

This pull request has been automatically marked as stale because it has not had any activity within 90 days. It will be automatically closed if no further activity occurs within 30 days. Leave a comment if you feel this pull request should remain open. Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.