On Tue, 28 Nov 2023 19:31:14 GMT, Brian Burkhalter <b...@openjdk.org> wrote:
>> Do you have any actual benchmark measurements that you could share? > >> @bplb I have not yet made benchmark measurements, but I can produce them. > > @fabioromano1 I think it would be good to measure and report the benefit, if > you don't mind. @bplb I have done some tests, these are the results: Older implementation: JVM: Java HotSpot(TM) 64-Bit Server VM 21.0.1+12-LTS-29 OS: Linux 5.5.0-kali2-amd64 Test 1: numBits=1, execution time=PT0.000699157S numBits=2, execution time=PT0.000023952S numBits=4, execution time=PT0.000009588S numBits=8, execution time=PT0.000008189S numBits=16, execution time=PT0.000010701S numBits=32, execution time=PT0.000011743S numBits=64, execution time=PT0.000018907S numBits=128, execution time=PT0.000021929S numBits=256, execution time=PT0.000045141S numBits=512, execution time=PT0.000069789S numBits=1024, execution time=PT0.000438628S numBits=2048, execution time=PT0.000619775S numBits=4096, execution time=PT0.007964754S numBits=8192, execution time=PT0.00092404S numBits=16384, execution time=PT0.010798554S numBits=32768, execution time=PT0.009661368S numBits=65536, execution time=PT0.015757106S numBits=131072, execution time=PT0.043498597S numBits=262144, execution time=PT0.049676326S numBits=524288, execution time=PT0.01529584S numBits=1048576, execution time=PT0.002818203S numBits=2097152, execution time=PT0.013192936S numBits=4194304, execution time=PT0.026337619S numBits=8388608, execution time=PT0.059158393S numBits=16777216, execution time=PT0.093313405S numBits=33554432, execution time=PT0.123457485S numBits=67108864, execution time=PT0.089361357S numBits=134217728, execution time=PT0.219089575S numBits=268435456, execution time=PT0.683150564S numBits=536870912, execution time=PT1.580409429S numBits=1073741824, execution time=PT2.517073472S Test 2: numBits=1, execution time=PT0.000927963S numBits=2, execution time=PT0.000081967S numBits=4, execution time=PT0.000020935S numBits=8, execution time=PT0.000016594S numBits=16, execution time=PT0.000018655S numBits=32, execution time=PT0.00001965S numBits=64, execution time=PT0.000015891S numBits=128, execution time=PT0.000035207S numBits=256, execution time=PT0.000047545S numBits=512, execution time=PT0.00010469S numBits=1024, execution time=PT0.000148356S numBits=2048, execution time=PT0.000400422S numBits=4096, execution time=PT0.000678288S numBits=8192, execution time=PT0.001286059S numBits=16384, execution time=PT0.0033047S numBits=32768, execution time=PT0.003497816S numBits=65536, execution time=PT0.008359785S numBits=131072, execution time=PT0.02874995S numBits=262144, execution time=PT0.033667068S numBits=524288, execution time=PT0.001652314S numBits=1048576, execution time=PT0.003623258S numBits=2097152, execution time=PT0.004878528S numBits=4194304, execution time=PT0.012982859S numBits=8388608, execution time=PT0.024819597S numBits=16777216, execution time=PT0.040988123S numBits=33554432, execution time=PT0.117394044S numBits=67108864, execution time=PT0.155300788S numBits=134217728, execution time=PT0.312046375S numBits=268435456, execution time=PT0.489544424S numBits=536870912, execution time=PT0.648922766S numBits=1073741824, execution time=PT1.694348228S Newer implementation: JVM: OpenJDK 64-Bit Server VM 22-internal-adhoc.kali.jdk OS: Linux 5.5.0-kali2-amd64 Test 1: numBits=1, execution time=PT0.000931361S numBits=2, execution time=PT0.000009131S numBits=4, execution time=PT0.000005598S numBits=8, execution time=PT0.000005079S numBits=16, execution time=PT0.000005173S numBits=32, execution time=PT0.00000528S numBits=64, execution time=PT0.000007437S numBits=128, execution time=PT0.000008283S numBits=256, execution time=PT0.000012538S numBits=512, execution time=PT0.000020438S numBits=1024, execution time=PT0.000036785S numBits=2048, execution time=PT0.000185241S numBits=4096, execution time=PT0.000197063S numBits=8192, execution time=PT0.000223476S numBits=16384, execution time=PT0.000257176S numBits=32768, execution time=PT0.000243897S numBits=65536, execution time=PT0.000510034S numBits=131072, execution time=PT0.00097546S numBits=262144, execution time=PT0.010734387S numBits=524288, execution time=PT0.003521437S numBits=1048576, execution time=PT0.019798445S numBits=2097152, execution time=PT0.002221943S numBits=4194304, execution time=PT0.003967343S numBits=8388608, execution time=PT0.012686879S numBits=16777216, execution time=PT0.020487223S numBits=33554432, execution time=PT0.059377121S numBits=67108864, execution time=PT0.057220115S numBits=134217728, execution time=PT0.116699493S numBits=268435456, execution time=PT0.259903987S numBits=536870912, execution time=PT0.389077171S numBits=1073741824, execution time=PT0.700334039S Test 2: numBits=1, execution time=PT0.000784538S numBits=2, execution time=PT0.000011703S numBits=4, execution time=PT0.000008531S numBits=8, execution time=PT0.000005882S numBits=16, execution time=PT0.00000598S numBits=32, execution time=PT0.00000988S numBits=64, execution time=PT0.000009407S numBits=128, execution time=PT0.00001319S numBits=256, execution time=PT0.000013505S numBits=512, execution time=PT0.000021383S numBits=1024, execution time=PT0.000058492S numBits=2048, execution time=PT0.000482897S numBits=4096, execution time=PT0.001244931S numBits=8192, execution time=PT0.001768842S numBits=16384, execution time=PT0.000231889S numBits=32768, execution time=PT0.001336978S numBits=65536, execution time=PT0.000591514S numBits=131072, execution time=PT0.005367744S numBits=262144, execution time=PT0.002301247S numBits=524288, execution time=PT0.006544409S numBits=1048576, execution time=PT0.010711628S numBits=2097152, execution time=PT0.012067186S numBits=4194304, execution time=PT0.002592803S numBits=8388608, execution time=PT0.005091683S numBits=16777216, execution time=PT0.023796749S numBits=33554432, execution time=PT0.020254963S numBits=67108864, execution time=PT0.055511959S numBits=134217728, execution time=PT0.0909186S numBits=268435456, execution time=PT0.158207744S numBits=536870912, execution time=PT0.422297073S numBits=1073741824, execution time=PT0.615943347S ------------- PR Comment: https://git.openjdk.org/jdk/pull/16817#issuecomment-1830839416