expani commented on PR #13521: URL: https://github.com/apache/lucene/pull/13521#issuecomment-2317985648
Thanks for taking the time to review @msfroh and @mikemccand I had enabled JVM Options to check what is going on with JIT C2 Compiler for the different encoder variations. ``` -Xbatch -XX:-TieredCompilation -XX:+UnlockDiagnosticVMOptions -XX:+LogCompilation -XX:+PrintAssembly -XX:+PrintInlining -XX:+PrintCompilation ``` Used [JITWatch](https://github.com/AdoptOpenJDK/jitwatch) to analyse the generated compiler log files. Inlining wise both `Bit21With2StepsEncoder` and `Bit21With3StepsEncoder` seemed to be the same. Didn't fully analyse the assembly code for them yet which might shed some light into the difference in behaviour. For now, I have migrated `Bit21With3StepsEncoder` to DocIdsWriter and also added `Bit32Encoder` as part of the JMH benchmark which as expected performs the worst amongst all the encoders. >I wonder what mechanism we could use to remind ourselves when performance of aarch64 catches up? Maybe some form of Nightly Runs can be done to assert that the version being used in DocIdsWriter is the most optimal one across different architectures and different Java versions. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: issues-unsubscr...@lucene.apache.org For additional commands, e-mail: issues-h...@lucene.apache.org