jkone27 / 1brc

1οΈβƒ£πŸπŸŽοΈ The One Billion Row Challenge - .NET Edition

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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

# Result (m:s.ms) Implementation SDK Submitter
1. 00:02.92 buybackoff/1brc 8.0.100 Victor Baybekov
2. 00:30.81 F0b0s/1brc 8.0.100 Sergey Popov
3. 00:51.76 LexedAndHashed.fs 8.0.100 Frank Krueger
4. 03:18.31 Baseline.fs 8.0.100 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

About

1οΈβƒ£πŸπŸŽοΈ The One Billion Row Challenge - .NET Edition


Languages

Language:F# 100.0%