Random fully async agent example - #1062
Conversation
…(hicache, disaggregated setup, EP, etc)
There was a problem hiding this comment.
Code Review
This pull request introduces a new 'random fully-async' example designed to stress-test agent infrastructure by simulating multi-turn rollouts with random tokens and rewards, bypassing the need for real datasets. It includes a suite of temporary SGLang patches to resolve issues with attention backends, synchronization, and memory management, alongside a multi-node runner script and configuration. Feedback focuses on improving the efficiency of the asynchronous worker loop by addressing blocking queue operations and slow concurrency ramp-up. Additionally, it is recommended to avoid hardcoding model dimensions like vocabulary size and absolute file paths to improve the portability and flexibility of the example.
|
Purpose of patches:
Fixed in sgl-project/sglang#20114
Should be fixed in sgl-project/sglang#24462 (haven't verified)
Fixed in:
Needs upstream fix? |
This turns out to be a rare bug in glibc, which we have produced a repro using only dlopen: https://gist.github.com/lawrence-harmonic/995d2ef964e2f40af1d81205d7285355 LD_PRELOAD is not the real fix, it only avoids the issue since the issue is sensitive to load order (dlopen must fail at multiple of 62). We will report the issue to glibc mailing list. Remaining issues with this test script:
|
|
I removed the patches. All patches are solved in sgl-project/sglang#25201 and additionally for R3 in sgl-project/sglang#24908 |
Zhichenzzz
left a comment
There was a problem hiding this comment.
Most LGTM! Just a small nit here! Thanks @jthomy!
Co-authored-by: Zhichen Zeng <zczeng@uw.edu>
Co-authored-by: Zhichen Zeng <zczeng@uw.edu>
Random fully async agent example as a minimal example for agentic RL(hicache, disaggregated setup, EP, etc).
EDIT: The patches are temporary necessary fixes, I believe they should be commited to Miles' SGLang branch instead.
Expected throughput:
