Défi du milliard de lignes
- Le « défi du milliard de lignes (1BRC) » a été annoncé et se déroulera du 1er janvier 2024 au 31 janvier 2024.
- Les participants doivent écrire un programme Java pour parcourir un fichier texte contenant des relevés de température et calculer, pour chaque station météo, les températures minimale, moyenne et maximale.
- Le fichier contient un milliard de lignes, chaque ligne enregistrant une mesure.
Règles du défi
- Toutes les soumissions doivent être écrites en Java.
- Toutes les distributions Java disponibles via SDKMan ainsi que les builds en accès anticipé d'openjdk.net peuvent être utilisées.
- Aucune dépendance externe ne peut être utilisée.
Comment participer
- Il faut cloner le dépôt 1brc sur GitHub et suivre les instructions du fichier README.
- Il est possible d'utiliser l'implémentation de base comme référence de comparaison et pour vérifier que les résultats sont corrects.
- Une fois satisfait de son travail, il est possible d'ouvrir une pull request sur le dépôt principal pour participer au défi.
Évaluation et récompenses
- Toutes les soumissions sont exécutées et évaluées sur une instance Hetzner Cloud CCX33 (8 vCPU dédiés, 32 Go de RAM).
- Le temps d'exécution est mesuré avec le programme
time ; l'exécution la plus lente et la plus rapide sont exclues, puis la moyenne des trois exécutions restantes est utilisée comme résultat.
- Les récompenses consistent à apprendre quelque chose de nouveau, à inspirer les autres et à avoir la fierté de voir son nom figurer au classement.
- D'après la rumeur, le gagnant pourrait aussi recevoir un t-shirt 1️⃣🐝🏎️ unique.
L'avis de GN⁺
- Ce défi offre à la communauté Java l'occasion d'explorer les limites des performances de Java et de partager des techniques d'optimisation.
- Cela peut constituer une expérience pratique pour tester les capacités de Java en traitement de données à grande échelle et appliquer concrètement les fonctionnalités récentes de Java ainsi que les techniques d'amélioration des performances.
- Les participants ont l'occasion de mesurer leurs compétences au monde entier et de renforcer leurs capacités de développement dans un cadre d'apprentissage et de collaboration.
1 commentaires
Le premier est à 6 secondes… impressionnant.