richardstartin removed a comment on pull request #7487: URL: https://github.com/apache/pinot/pull/7487#issuecomment-928305819
Here are some numbers from `BenchmarkStringDictionary` which hits `ByteArray.compare` twice on the write path but not on the read path. I threw away the number for the off-heap dictionary because they are noisy, and used a fixed seed so subsequent runs are comparable - this change looks worthwhile. ``` Benchmark (_maxValueLength) (_seed) Mode Cnt Score Error Units BenchmarkStringDictionary.onHeapStringDictionaryRead 8 2021 avgt 15 39.954 ± 2.446 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 16 2021 avgt 15 49.021 ± 10.705 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 32 2021 avgt 15 48.543 ± 12.200 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 64 2021 avgt 15 53.494 ± 7.755 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 128 2021 avgt 15 68.075 ± 15.418 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 256 2021 avgt 15 66.177 ± 5.318 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 512 2021 avgt 15 68.576 ± 1.738 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 1024 2021 avgt 15 70.257 ± 7.173 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 8 2021 avgt 15 117.377 ± 5.491 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 16 2021 avgt 15 115.491 ± 8.360 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 32 2021 avgt 15 116.254 ± 14.534 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 64 2021 avgt 15 120.159 ± 8.665 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 128 2021 avgt 15 142.495 ± 12.102 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 256 2021 avgt 15 196.842 ± 12.584 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 512 2021 avgt 15 210.740 ± 16.198 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 1024 2021 avgt 15 229.852 ± 16.526 ms/op Benchmark (_maxValueLength) (_seed) Mode Cnt Score Error Units BenchmarkStringDictionary.onHeapStringDictionaryRead 8 2021 avgt 15 38.390 ± 2.110 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 16 2021 avgt 15 39.827 ± 7.020 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 32 2021 avgt 15 46.284 ± 12.710 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 64 2021 avgt 15 58.891 ± 11.733 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 128 2021 avgt 15 56.999 ± 3.481 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 256 2021 avgt 15 68.284 ± 3.805 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 512 2021 avgt 15 68.878 ± 1.086 ms/op BenchmarkStringDictionary.onHeapStringDictionaryRead 1024 2021 avgt 15 75.076 ± 1.144 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 8 2021 avgt 15 100.520 ± 5.884 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 16 2021 avgt 15 108.455 ± 4.986 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 32 2021 avgt 15 107.341 ± 5.383 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 64 2021 avgt 15 113.251 ± 4.794 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 128 2021 avgt 15 122.947 ± 5.376 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 256 2021 avgt 15 154.681 ± 4.031 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 512 2021 avgt 15 152.651 ± 6.078 ms/op BenchmarkStringDictionary.onHeapStringDictionaryWrite 1024 2021 avgt 15 151.176 ± 5.072 ms/op ``` -- 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: commits-unsubscr...@pinot.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org For additional commands, e-mail: commits-h...@pinot.apache.org