1brc
1️⃣🐝🏎️ The One Billion Row Challenge - .NET Edition
Install / Use
/learn @praeclarum/1brcREADME
1️⃣🐝🏎️ The One Billion Row Challenge - .NET Edition
The One Billion Row Challenge (1BRC Original Java Challenge) is a fun exploration of how far modern .NET can be pushed for aggregating one billion rows from a text file. Grab all your (virtual) threads, reach out to SIMD, optimize your GC, or pull any other trick, and create the fastest implementation for solving this task!
Results
Tested on a 3GHz 10-core Xeon W iMac Pro 2017.
| # | Result (m:s.ms) | Language | Implementation | Runtime | Submitter | |----|-----------------|----------|---------------------------------------------------------------------------------------------------------------------------|--------------|---------------| | 1. | 00:02.68 | F# | Multithreaded.fs | net8/osx-x64 | Frank Krueger| | 2. | 00:02.69 | C# | buybackoff/1brc | net8/osx-x64 | Victor Baybekov| | 3. | 00:03.62 | C# | pedrosakuma/1brc | net8/osx-x64 | Pedro Travi| | 4. | 00:04.80 | C# | Vake93/1brc | net8/osx-x64 | Vishvaka Ranasinghe| | 5. | 00:06.04 | C# | hexawyz/OneBillionRows | net8/osx-x64 | Fabien Barbier| | 6. | 00:06.55 | C# | bbronisz/1brc | net8/osx-x64 | Beniamin| | 7. | 00:30.81 | C# | F0b0s/1brc | net8/osx-x64 | Sergey Popov| | 8. | 00:51.76 | F# | LexedAndHashed.fs | net8/osx-x64 | Frank Krueger| | 9. | 02:53.86 | C# | KristofferStrube/Blazor1brc | net8/wasm | Kristoffer Strube| | 10.| 03:17.70 | Java | Java Baseline | java21 | Gunnar Morling| | 11.| 03:18.26 | F# | Baseline.fs | net8/osx-x64 | Frank Krueger|
Running
dotnet run measurements-20.txt
macOS Intel 64-bit Optimized
dotnet publish -c Release -r osx-x64 --self-contained
time bin/Release/net8.0/osx-x64/publish/1brc measurements.txt
Profiling
dotnet-trace collect --duration 00:00:10 -- bin/Release/net8.0/osx-x64/publish/1brc measurements.txt
dotnet-trace convert 1brc_yyyymmdd_hhmmss.nettrace --format Speedscope
Drag the resulting json file on to https://www.speedscope.app
Related Skills
node-connect
342.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
84.7kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
342.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
84.7kCommit, push, and open a PR
