uschindler commented on pull request #518: URL: https://github.com/apache/lucene/pull/518#issuecomment-999932159
Thanks Mike. It is mich more stable now (std dev) and on average 0%. We should figure out why it gets faster on some parts while slower on other parts. What is different: - some parts use direct access off-heap - some parts mainly copy byte arrays between mmap and heap and do the work on-heap From what I have learned, copy operations have high overhead because: - they are not hot, so aren't optimized so fast - when not optimized, the setup cost is high (lots of class checks to get array type, decision for swapping bytes). This is especially heavy for small arrays. When discussing with Robert it looks like it might be better to just have a simple copy-loop. This affects long[] arrays, as those are <64 entries. We can test this easily by commenting out the copy method for floats and longs, so it falls back to default impl in IndexInput. I just had no time to test this. -- 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