Descripción del trabajo
La posición está enfocada en la reducción de gráficos de aprendizaje profundo, desde marcos comunes como PyTorch, TensorFlow, Keras, entre otros, a una representación intermedia para entrenamiento e inferencia. Se presta especial atención a garantizar la reproducibilidad en todo el proceso.
Responsabilidades:
- Escribir algoritmos novedosos para transformar representaciones intermedias de gráficos de cálculo entre diferentes representaciones de operadores.
- Poseer experiencia en al menos dos de las siguientes áreas del compilador:
- Interfaz: Gestionar la comunicación entre marcos de aprendizaje profundo comunes y el IR de Gensyn para uso interno. Escribir pases de transformación en ONNX para modificar el IR para el consumo intermedio.
- Extremo medio: Escribir pases de compilación para gráficos de cómputo basados en entrenamiento, integrar núcleos de aprendizaje profundo reproducibles en la etapa de generación de código y depurar pases de compilación y transformaciones durante el proceso.
- Back-end: Reducir el IR desde el extremo medio hasta el código máquina de destino en GPU.
Requisitos:
- Comprensión básica de compiladores tradicionales (LLVM, GCC) y recorridos de gráficos necesarios para escribir código para dichos compiladores.
- Experiencia como ingeniero de software, con contribuciones significativas y código enviado en producción.
- Comprensión de programación paralela, especialmente en relación con GPUs.
- Capacidad para operar en:
- IR/Clang/LLVM de alto nivel hasta optimización de gama media; y/o
- Objetivos IR/LLVM de bajo nivel y optimizaciones específicas de objetivos, particularmente optimizaciones específicas de GPU.
- Excelentes habilidades de comunicación verbal y escrita.
- Capacidad para trabajar en un entorno de investigación aplicada con alta autonomía.
- Comprensión completa de arquitecturas informáticas especializadas para entrenamiento de redes neuronales (CPU Intel Xeon, GPU, TPU, aceleradores personalizados).
- Comprensión de compilación para una o más arquitecturas informáticas de alto rendimiento (CPU, GPU, aceleradores personalizados o sistemas heterogéneos).
- Base técnica demostrada en arquitecturas CPU y GPU, bibliotecas numéricas y diseño de software modular.
- Comprensión del aprendizaje profundo, incluyendo tendencias recientes, fundamentos del entrenamiento y experiencia con marcos de aprendizaje automático y sus componentes internos (PyTorch, TensorFlow, scikit-learn, etc.).
- Experiencia con marcos de compiladores de aprendizaje profundo, como TVM, MLIR, TensorComprehensions, Triton o JAX.
- Experiencia en escritura y optimización de kernels de GPU de alto rendimiento.
Salario a percibir
A convenir
Regístrate o identifícate
- Debes estar registrado para solicitar una oferta.
- El tener un perfil completo en Remotojob.com garantiza que tu currículum tendrá mayor exposición.
- Estar registrado nos ayuda a prevenir el spam y los convocantes fantasma.
- Las empresas otorgan mayor credibilidad a los perfiles con descripciones e imágenes completas.
Para ver el contacto directo del empleo, debes tener una cuenta regístrate ahora.




