Closed jerrinot closed 5 months ago
Very nice improvement! Thank you so much for the nice words and for particpating in 1BRC, @jerrinot! Congrats for creating one of the top entries, really cool to see all the amazing tricks you brought to the table.
Benchmark 1: timeout -v 300 ./calculate_average_jerrinot.sh 2>&1
Time (mean ± σ): 1.609 s ± 0.012 s [User: 0.003 s, System: 0.003 s]
Range (min … max): 1.589 s … 1.633 s 10 runs
Summary
jerrinot: trimmed mean 1.6081975965600002, raw times 1.58892183156,1.61404948556,1.61037620956,1.6329010565600002,1.61700875656,1.60569608156,1.60031932156,1.60174426556,1.6044052875600001,1.61198136456
Leaderboard
| # | Result (m:s.ms) | Implementation | JDK | Submitter | Notes |
|---|-----------------|--------------------|-----|---------------|-----------|
| | 00:01.608 | [link](https://github.com/gunnarmorling/1brc/blob/main/src/main/java/dev/morling/onebrc/CalculateAverage_jerrinot.java)| 21.0.2-graal | [Jaromir Hamala](https://github.com/jerrinot) | GraalVM native binary, uses Unsafe |
@gunnarmorling thank you so much for doing all this! with 550+ PR closed, most of you reviewed by you only. you put in way more effort than anyone else. thank you!
Hey @jerrinot!
Congrats again on being in the Top 3 of the One Billion Row Challenge!
To celebrate this amazing achievement, I would like to send you a 1BRC t-shirt and coffee mug. To claim your prize, fill out this form by Feb 18. After submitting the form, please provide a comment with the random value you've specified in the form, so that I know it is you who submitted it.
All data entered will solely be used in relation to processing this shipment. Shipments can be sent to any country listed here. A big thank you to Decodable for sponsoring these prizes!
Thanks a lot for participating in 1BRC,
--Gunnar
@gunnarmorling once more thanks to both you personally and Decodable!
The two totally random numbers are: 27427
and 20503
.
Check List:
[x] You have run
./mvnw verify
and the project builds successfully[x] Tests pass (
./test.sh <username>
shows no differences between expected and actual outputs)[x] All formatting changes by the build are committed
[x] Your launch script is named
calculate_average_<username>.sh
(make sure to match casing of your GH user name) and is executable[x] Output matches that of
calculate_average_baseline.sh
[x] For new entries, or after substantial changes: When implementing custom hash structures, please point to where you deal with hash collisions (line number)
Execution time: 1.7s
Execution time of reference implementation: looong
I wasn't planning any further changes after https://github.com/gunnarmorling/1brc/pull/690. But I couldn't resist trying at least something after @thomaswue sent this beauty: https://github.com/gunnarmorling/1brc/pull/702 This PR is not really introducing anything new, just optimizing existing codepaths. It yields a small improvement on my box, but it's hard to predict if this translates to performance improvements on THE box.
In any case: @gunnarmorling, massive Thank you for organising this challenge, I had a blast!