Performance Optimizations targeting to reduce CPU churn#73
Performance Optimizations targeting to reduce CPU churn#73prateek merged 13 commits intouber-java:masterfrom
Conversation
|
Currently failing test |
prateek
left a comment
There was a problem hiding this comment.
few questions, mainly looking fine
core/build.gradle
Outdated
There was a problem hiding this comment.
why comment this out? i'd prefer if you either add in or remove entirely.
There was a problem hiding this comment.
am I missing something or is this an unused import?
There was a problem hiding this comment.
I don't live in Java code so this more a curiosity: why override this method if you're going to only call the parent's method? Is it required by the Java type system?
There was a problem hiding this comment.
This is a refactoring aberration, cleaned up in #74
There was a problem hiding this comment.
Can remove the TODO, it needs the concurrency because metrics can be both created concurrently, and created and reported upon concurrently
m3/build.gradle
Outdated
There was a problem hiding this comment.
why remove this? does the m3 module inherit the jmh settings from the parent?
There was a problem hiding this comment.
There's no benchmarks in this project
There was a problem hiding this comment.
Tally client already has heavy memory footprint, what's the memory impact of the additional queue?
Also how much cpu reduction does switching from traversing the hashmaps to traversing the queue? It is also not clear to me why that would reduce cpu usage.
There was a problem hiding this comment.
To reduce the traversal scope to only those metrics that had actually changed. This is leveraged in #74.
… formatting on the hot-path
89c516d to
64dca6c
Compare
Rationale for the change could be found in T6248475.
In a nutshell: