Desafío de mil millones de filas
- Se anunció el 'Desafío de mil millones de filas (1BRC)', que se llevará a cabo del 1 de enero de 2024 al 31 de enero.
- Los participantes deben escribir un programa en Java para buscar mediciones de temperatura en un archivo de texto y calcular la temperatura mínima, promedio y máxima de cada estación meteorológica.
- El archivo contiene mil millones de filas, y cada fila registra una medición.
Reglas del desafío
- Todas las entregas deben estar escritas en Java.
- Se puede usar cualquier distribución de Java disponible a través de SDKMan, así como los builds de acceso anticipado de openjdk.net.
- No se pueden usar dependencias externas.
Cómo participar
- Hay que clonar el repositorio 1brc en GitHub y seguir las instrucciones del archivo README.
- Se puede usar la implementación base para establecer una referencia de comparación y verificar que produzca resultados correctos.
- Cuando el trabajo esté listo, se puede abrir un pull request en el repositorio principal para participar en el desafío.
Evaluación y premios
- Todas las entregas se ejecutarán y evaluarán en una instancia Hetzner Cloud CCX33 (8 vCPU dedicadas, 32 GB de RAM).
- El tiempo de ejecución se medirá con el programa
time; se descartarán la ejecución más lenta y la más rápida, y el resultado será el promedio de las tres ejecuciones restantes.
- Como premio, se puede aprender algo nuevo, inspirar a otras personas y obtener el orgullo de ver tu nombre en la tabla de posiciones.
- Según los rumores, el ganador también podría recibir una peculiar camiseta de 1️⃣🐝🏎️.
Opinión de GN⁺
- Este desafío le da a la comunidad Java la oportunidad de explorar los límites de rendimiento del lenguaje y compartir técnicas de optimización.
- Puede ser una experiencia práctica para poner a prueba la capacidad de Java en el procesamiento de datos a gran escala y aplicar en la práctica funciones modernas del lenguaje y técnicas de mejora de rendimiento.
- Los participantes tienen la oportunidad de competir con el mundo, mejorar sus habilidades de desarrollo y aprender en un entorno de colaboración.
1 comentarios
El primer lugar lo hizo en 6 segundos... impresionante.