-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
Make scheduling benchmark more realistic #5410
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Love the constants, love the strategy for defining the graphs, love the increased realism. Eventually I'd be interested in a follow-up PR that adds a method to compute these key statistics on Schedules
so we can ask users for usage data.
I think we can make this nicer with code generation macros, and strongly feel that this needs to be explicitly seeded.
Should be great!
} | ||
|
||
fn my_system<const P: usize, const I: usize>() {} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would like the number of plugins and systems to be pulled out into constants here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The problem with this is that, afaik, every single const generic type needs to be explicitly named somewhere. You can't loop over const generics. I can make it prettier with macros, but I don't think it's possible to extract everything into constants.
I can think of a few potential solutions, but they will require re-architecting.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hmm, that's surprising 🤔 I'm not familiar enough with the details of macros to know if what I'm asking for is possible. We should see if we can get more expert opinions.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This has my approval now :) I'd still like to be able to extract out the number of systems / plugins into constants, but I won't block on it in this PR if you can't get it working.
So here's what I've gathered so far.
|
Sounds good. We can clean this up more later. |
This reverts commit 8bf7503.
Closing this since it's very out of date. If someone wants to update or replicate this, feel free. |
Objective
Solution
Model the benchmarks around plugins, forming groups of systems.
TypeId
.