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 entorno 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 admitidas.
- Gestión de memoria y estrategia de teselado (tiling) en TIK.
- Creación, compilación y registro de un operador personalizado con CANN.
Pruebas y Validación de Operadores Personalizados
- Pruebas unitarias e integración de operadores dentro del grafo.
- Depuración de problemas de rendimiento a nivel de kernel.
- Visualización de la ejecución del operador y el comportamiento de los buffers.
Agendamiento y Optimización Basados en TVM
- Visión general de TVM como compilador para operaciones de tensores.
- Escritura de un plan de ejecución (schedule) para un operador personalizado en TVM.
- Ajuste (tuning), benchmarking y generación de código de TVM para Ascend.
Integración con Marcos de Trabajo y Modelos
- Registro de operadores personalizados para MindSpore y ONNX.
- Verificación de la integridad del modelo y el comportamiento de respaldo (fallback).
- Soporte para grafos de múltiples operadores con precisión mixta.
Estudios de Caso y Optimizaciones Especializadas
- Estudio de caso: convoluciones de alta eficiencia para formas de entrada pequeñas.
- Estudio de caso: optimización de operadores de atención con conciencia de memoria.
- Mejores prácticas en la implementación de operadores personalizados en diferentes dispositivos.
Resumen y Próximos Pasos
Requerimientos
- Sólido conocimiento de la arquitectura interna de los modelos de IA y los cálculos a nivel de operador.
- Experiencia con entornos de desarrollo en Python y Linux.
- Familiaridad con compiladores de redes neuronales u optimizadores a nivel de grafo.
Público Objetivo
- Ingenieros de compiladores que trabajen en cadenas de herramientas (toolchains) de IA.
- Desarrolladores de sistemas enfocados en la optimización de IA a bajo nivel.
- Desarrolladores que construyan operadores personalizados o que se enfoquen en cargas de trabajo de IA novedosas.