Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RLCSE: streaming SPMI mode #397

Merged
merged 1 commit into from
Feb 17, 2024
Merged

Conversation

AndyAyersMS
Copy link
Member

Add support to use streaming SPMI servers. When enabled, RLCSE will launch one SPMI server process per core. Work dispatched to servers picks an idle server from the pool of servers. This greatly reduces the overhead of doing single-method evaluations.

SPMI streaming mode requires the changes in dotnet/runtime#98440.

Update the main Policy graident work loop and the greedy status loop to use the streaming mode, if enabled. MCMC can leverage this too, but I haven't done that just yet.

Add the ability to track server status.

Add the ability to log the server activity. The intent is that these logs can be replayed by a server instance to diagnose problems. This was useful during bring-up.

Add a running log of the Policy Gradient parameter values, so we can see how they change over time.

Refactor out some of the code in the main Policy Gradient loops.

Add support to use streaming SPMI servers. When enabled, RLCSE will launch
one SPMI server process per core. Work dispatched to servers picks an idle
server from the pool of servers. This greatly reduces the overhead of doing
single-method evaluations.

SPMI streaming mode requires the changes in dotnet/runtime#98440.

Update the main Policy graident work loop and the greedy status loop to use
the streaming mode, if enabled. MCMC can leverage this too, but I haven't
done that just yet.

Add the ability to track server status.

Add the ability to log the server activity. The intent is that these logs
can be replayed by a server instance to diagnose problems. This was useful
during bring-up.

Add a running log of the Policy Gradient parameter values, so we can see how
they change over time.

Refactor out some of the code in the main Policy Gradient loops.
@AndyAyersMS
Copy link
Member Author

@EgorBo PTAL
cc @dotnet/jit-contrib

@AndyAyersMS AndyAyersMS merged commit 96aae83 into dotnet:main Feb 17, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants