Gracias por enviar su consulta! Uno de los miembros de nuestro equipo se pondrá en contacto con usted en breve.
Gracias por enviar su reserva! Uno de los miembros de nuestro equipo se pondrá en contacto con usted en breve.
Duración 14 horas
Temario del curso
Introducción al desarrollo de operadores personalizados
- ¿Por qué construir operadores personalizados? Casos de uso y restricciones
- Estructura del tiempo de ejecución de CANN y puntos de integración de operadores
- Visión general de TBE, TIK y TVM en el ecosistema de IA de Huawei
Uso de TIK para la programación de operadores a bajo nivel
- Comprensión del modelo de programación de TIK y las APIs soportadas
- Gestión de memoria y estrategia de particionado (tiling) en TIK
- Creación, compilación y registro de una operación personalizada con CANN
Pruebas y validación de operaciones personalizadas
- Pruebas unitarias e integración de operaciones en el grafo
- Depuración de problemas de rendimiento a nivel de kernel
- Visualización de la ejecución de operaciones y el comportamiento de los buffers
Planificación y optimización basadas en TVM
- Visión general de TVM como compilador para operaciones de tensores
- Escritura de una planificación (schedule) para una operación personalizada en TVM
- Ajuste (tuning), benchmarking y generación de código para Ascend en TVM
Integración con frameworks y modelos
- Registro de operaciones personalizadas para MindSpore y ONNX
- Verificación de la integridad del modelo y el comportamiento de respaldo (fallback)
- Soporte para grafos con múltiples operadores y precisión mixta
Estudios de caso y optimizaciones especializadas
- Estudio de caso: convolución de alta eficiencia para formas de entrada pequeñas
- Estudio de caso: optimización de operador de atención consciente de la memoria
- Mejores prácticas en la implementación de operaciones personalizadas entre dispositivos
Resumen y próximos pasos
Requerimientos
- Conocimiento sólido de los componentes internos de modelos de IA y del cálculo a nivel de operadores
- Experiencia con Python y entornos de desarrollo en Linux
- Familiaridad con compiladores de redes neuronales u optimizadores a nivel de grafo
Público objetivo
- Ingenieros de compiladores que trabajen en herramientas para IA
- Desarrolladores de sistemas enfocados en la optimización de IA a bajo nivel
- Desarrolladores que creen operaciones personalizadas o busquen abordar nuevas cargas de trabajo de IA