-
Notifications
You must be signed in to change notification settings - Fork 30
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
Add tool to identify candidates for super-instructions #192
Conversation
// fetch the top CONSIDER_TOP_CONTEXTS activation contexts | ||
// and construct a candidate for each of them. | ||
List<ActivationContext> sorted = | ||
contexts.keySet().stream().filter(context -> context.getNumberOfClasses() == 3) |
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.
@fredreichbier here I was wondering why that's a three. The comment above talks about 2, I believe.
cba0712
to
53561a5
Compare
- add TypeCountingNode/TypeCounter that records types - write activation patterns to a file - exclude eager nodes, and SequenceNode - try to find children type combinations. - write superinstruction report to metrics/ - update dym tests to account for AnyTag
Having it in DynamicMetrics is problematic, because DM disables a number of optimized nodes to get metrics relative to the source text. For super-instructions, we want knowledge about the actual execution behavior, and possibly even already enabled super-instructions. Thus, it’s better to have to separate tools. Signed-off-by: Stefan Marr <[email protected]>
53561a5
to
707d402
Compare
Signed-off-by: Stefan Marr <[email protected]>
Signed-off-by: Stefan Marr <[email protected]>
Signed-off-by: Stefan Marr <[email protected]>
This can happen, when there are fewer context levels than requested. Signed-off-by: Stefan Marr <[email protected]>
Signed-off-by: Stefan Marr <[email protected]>
Signed-off-by: Stefan Marr <[email protected]>
Signed-off-by: Stefan Marr <[email protected]>
- make some fields final Signed-off-by: Stefan Marr <[email protected]>
Signed-off-by: Stefan Marr <[email protected]>
…rn out to be equivalent Signed-off-by: Stefan Marr <[email protected]>
5586bf9
to
14aa09a
Compare
This PR was blocked by failing tests on Linux. Cutting off at that point could result in slightly different reports being generated. |
This PR adds a new Truffle tool to instrument all nodes, track their execution, and determine node configurations that are frequently used together.
These node configurations might benefit from being converted into a single node that reduces the interpretation overhead.
This is work by @fredreichbier.
@fredreichbier, could you please review the PR, and check whether everything looks ok for you?
This is a first version, I might still do some more cosmetic changes.