Conversation
1f27e25 to
acccda7
Compare
|
Hello @RagnarGrootKoerkamp, |
|
Just out of curiousity, did you measure a performance improvement from the inline annotations? I think it's fine to have them, but I assumed that the compiler already does is it, at least for the smaller functions where it makes a significant difference. Or is there another technical reason for the inlining? |
|
They're not always necessary, but one non-inline function can massively (10-20%) impact perf. Just yesterday I had an Also, inlining constructors and such allows the compiler to see into the actual data structure which can help optimizing the querying as well. |
9859347 to
5ccd4b3
Compare
This adds the ability to prefetch the cacheline required to answer a
rankquery.I'm not quite sure I did it correctly though...should be fixed nowIn my evals (https://curiouscoding.nl/posts/quadrank/#evals), the data points (the black plusses) get better when going from
fortostreamwith prefetch.My wrapping code is here: https://github.com/RagnarGrootKoerkamp/quadrank/blob/master/src/genedex.rs