gunnarmorling / 1brc

1️⃣🐝🏎️ The One Billion Row Challenge -- A fun exploration of how quickly 1B rows from a text file can be aggregated with Java
https://www.morling.dev/blog/one-billion-row-challenge/
Apache License 2.0
6.08k stars 1.83k forks source link

Small improvements #576

Closed artsiomkorzun closed 7 months ago

artsiomkorzun commented 7 months ago

Check List:

gunnarmorling commented 7 months ago

Comes in a bit slower actually:

Benchmark 1: timeout -v 300 ./calculate_average_artsiomkorzun.sh 2>&1
  Time (mean ± σ):      2.060 s ±  0.010 s    [User: 0.002 s, System: 0.004 s]
  Range (min … max):    2.034 s …  2.066 s    10 runs

Summary
  artsiomkorzun: trimmed mean 2.0625630242949997, raw times 2.0336724294199997,2.06647070542,2.06597330042,2.0661385814199997,2.05878286342,2.06480267942,2.0643172384199997,2.0615065864199997,2.0622090584199997,2.05677388642

Leaderboard

| # | Result (m:s.ms) | Implementation     | JDK | Submitter     | Notes     |
|---|-----------------|--------------------|-----|---------------|-----------|
|   | 00:02.062 | [link](https://github.com/gunnarmorling/1brc/blob/main/src/main/java/dev/morling/onebrc/CalculateAverage_artsiomkorzun.java)| 21.0.2-graal | [Artsiom Korzun](https://github.com/artsiomkorzun) | GraalVM native binary, uses Unsafe |
artsiomkorzun commented 7 months ago

@gunnarmorling reverted some changes. Please try once more.

gunnarmorling commented 7 months ago

Almost the same now as the current entry:

Benchmark 1: timeout -v 300 ./calculate_average_artsiomkorzun.sh 2>&1
  Time (mean ± σ):      2.022 s ±  0.015 s    [User: 0.001 s, System: 0.004 s]
  Range (min … max):    1.996 s …  2.036 s    5 runs

Summary
  artsiomkorzun: trimmed mean 2.0264423235666666, raw times 1.9956557839,2.0358313169000004,2.0279398379,2.0246280749000003,2.0267590579

Leaderboard

| # | Result (m:s.ms) | Implementation     | JDK | Submitter     | Notes     |
|---|-----------------|--------------------|-----|---------------|-----------|
|   | 00:02.026 | [link](https://github.com/gunnarmorling/1brc/blob/main/src/main/java/dev/morling/onebrc/CalculateAverage_artsiomkorzun.java)| 21.0.2-graal | [Artsiom Korzun](https://github.com/artsiomkorzun) | GraalVM native binary, uses Unsafe |