kaivalnp commented on PR #14874: URL: https://github.com/apache/lucene/pull/14874#issuecomment-3071054127
To look into compiler inlining, I added `-XX:CompileCommand=PrintInlining,*PanamaVectorUtilSupport.*` to the startup arguments and saw: ``` @ 113 jdk.incubator.vector.AbstractSpecies::loopBound (9 bytes) force inline by annotation @ 5 jdk.incubator.vector.VectorIntrinsics::roundDown (23 bytes) force inline by annotation @ 125 org.apache.lucene.internal.vectorization.PanamaVectorUtilSupport::dotProductBody256 (110 bytes) failed to inline: callee is too large ``` ..in a run _without_ `-reindex` However if I performed a run _with_ `-reindex`, I saw lines like: ``` @ 113 jdk.incubator.vector.AbstractSpecies::loopBound (9 bytes) force inline by annotation @ 5 jdk.incubator.vector.VectorIntrinsics::roundDown (23 bytes) force inline by annotation @ 125 org.apache.lucene.internal.vectorization.PanamaVectorUtilSupport::dotProductBody256 (110 bytes) inline (hot) ``` ..which means it is being inlined if the dot product function is hot enough --- So, I tried to turn on explicit inlining using `-XX:CompileCommand=inline,*PanamaVectorUtilSupport.*` in some runs: | recall | latency | inlining | reindex | | ------ | ------- | -------- | ------- | | 0.962 | 2.540 | no | no | | 0.962 | 1.210 | yes | no | | 0.962 | 1.829 | no | yes | | 0.962 | 1.808 | yes | yes | I was able to squeeze performance in the run _without_ `-reindex` but not if we create an index, I'll try to dig deeper on why this is happening.. -- 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