10億行チャレンジ
- 2024年1月1日から1月31日まで開催される「10億行チャレンジ(1BRC)」が発表された。
- 参加者はJavaプログラムを作成し、テキストファイルから気温の測定値を検索して、各気象観測所ごとの最小・平均・最大気温を計算しなければならない。
- ファイルには10億件の行があり、各行には1つの測定値が記録されている。
チャレンジのルール
- すべての提出物はJavaで作成されていなければならない。
- SDKManで利用可能なすべてのJavaディストリビューションと、openjdk.netの早期アクセスビルドを使用できる。
- 外部依存関係は使用できない。
参加方法
- GitHubで1brcリポジトリをクローンし、READMEファイルの指示に従う必要がある。
- 基本実装を使って比較基準を用意し、正しい結果が出るかを確認できる。
- 作業に満足したら、上位リポジトリにプルリクエストを作成してチャレンジに参加できる。
評価と賞
- すべての提出物はHetzner Cloud CCX33インスタンス(専用vCPU 8基、32GB RAM)で実行され、評価される。
- 実行時間は
timeプログラムを使って測定され、最も遅い実行と最も速い実行は除外され、残る3回の実行の平均値が結果として使われる。
- 賞として、新しいことを学び、他の人に刺激を与え、スコアボードに名前を載せる誇りを得ることができる。
- うわさによれば、優勝者にはユニークな1️⃣🐝🏎️Tシャツが贈られるかもしれない。
GN⁺の意見
- このチャレンジは、JavaコミュニティにとってJavaの性能限界を探り、最適化技術を共有する機会を提供する。
- 大規模データ処理におけるJavaの能力を試し、最新のJava機能や性能向上技術を実際に適用してみる実践的な経験になり得る。
- 参加者は自分の技術を世界中と競い合い、学習と協力の場を通じて開発力を高める機会を得られる。
1件のコメント
1位が6秒なんですね……驚きです