Acerca del puesto
Evaluar la calidad, la corrección y la integridad de las tareas de desarrollo de kernels de GPU/aceleradores utilizadas para entrenar y evaluar los modelos de un laboratorio de IA de frontera. Usted evaluará la corrección numérica, la equidad del benchmarking de rendimiento, la delimitación del alcance de las tareas y la validez de compilación/ejecución en diversos tipos de tareas de kernels — y proporcionará comentarios escritos claros basados en rúbricas.
Cualificaciones básicas
- 3+ años de experiencia práctica desarrollando, optimizando o verificando kernels de GPU/aceleradores en al menos dos de los siguientes: CUDA, Triton, NKI o Pallas (JAX)
- Sólida comprensión de los criterios de corrección numérica para kernels (tolerancias absolutas/relativas/ULP, selección de la implementación de referencia)
- Experiencia demostrada en perfilado de rendimiento y benchmarking (nsight, ncu, análisis roofline o perfiladores nativos del framework)
- Familiaridad con los modos de fallo habituales de compilación y ejecución (incompatibilidades de controladores, OOM, errores de configuración de lanzamiento, incompatibilidades de forma/stride, fallos de autotuning)
- Experiencia con al menos tres tipos de tareas de kernels: generación a partir de especificación, traducción/lowering entre frameworks, migración entre destinos de hardware, depuración, optimización del rendimiento o fusión de operadores
Cualificaciones preferidas
- Experiencia en los ecosistemas tanto de GPU NVIDIA (CUDA/Triton) como de aceleradores personalizados (NKI/Pallas/TPU)
- Experiencia en ingeniería de compiladores, MLIR o lowering de representaciones intermedias
- Comprensión de la optimización de la jerarquía de memoria (tiling de memoria compartida, presión de registros, conflictos de banco, patrones de coalescencia)
- Contribuciones a bibliotecas de kernels (cuBLAS, cuDNN, kernels de la comunidad de Triton, llamadas personalizadas de JAX/XLA)