Repolode
microsoft

microsoft/antares

AutoRT es una herramienta de compilación que ayuda a los desarrolladores a crear, evaluar y optimizar operadores de PyTorch para sus propios aceleradores.

Estrellas
470
Forks
51
Issues abiertos
12
Último commit
hace 14 días

¿Qué es?

AutoRT, la siguiente generación del proyecto Antares de Microsoft, es una solución de compilación para usuarios del runtime que quieren escribir, evaluar y ajustar operadores de PyTorch para sus propios aceleradores. Los kernels se escriben como cuerpos de funciones en CUDA o HIP C++, con una pequeña cabecera que declara las formas de los tensores de entrada y salida y las vinculaciones de lanzamiento.

El proyecto ofrece una herramienta de línea de comandos llamada autort. Un kernel básico se define en línea con una firma de función, vinculaciones de formas y un cuerpo que usa blockIdx y threadIdx; AutoRT lo compila y ejecuta. El repositorio también incluye una guía SKILLS.md dirigida a agentes de IA que necesiten escribir estos kernels.

Los entornos recomendados son imágenes de Docker para CUDA (Ubuntu 24.04 con CUDA 12.8) y ROCm (Ubuntu 24.04 con ROCm 7.2.4). La documentación manual anterior y la documentación heredada se conservan como referencia, pero están marcadas como obsoletas.

Funciones clave

  • 01Permite escribir kernels de operadores de PyTorch con sintaxis de CUDA o HIP C++.
  • 02Ofrece una herramienta de línea de comandos llamada autort que compila y ejecuta definiciones de kernels en línea.
  • 03Permite declarar las formas de los tensores y las vinculaciones de lanzamiento en una cabecera breve.
  • 04Incluye una guía SKILLS.md para agentes de IA que escriben kernels.
  • 05Ofrece configuraciones de Docker para entornos CUDA y ROCm.

Casos de uso

  • Crear prototipos de un operador personalizado de PyTorch en GPU NVIDIA.
  • Adaptar o ajustar operadores para GPU AMD con ROCm.
  • Permitir que un agente de IA genere y pruebe kernels para aceleradores.

Inicio rápido

  1. 1

    Configura la imagen de Docker recomendada para CUDA o ROCm

  2. 2

    Ejecuta el ejemplo Hello World con el comando autort

    autort -n hello_world_example --source=' @DEF_FUNC: input:float32[B, M] -> output:float32[B, M] @DEF_BIND: ~B~:1, ~%~:1024 void main() { if (int(blockIdx.x) == 0 && int(threadIdx.x) == 0) printf("(autort) Hello World!\n"); }'

Antes de usarlo

  • El README no incluye un comando de instalación con un gestor de paquetes, por lo que la configuración depende de las imágenes de Docker recomendadas.
  • Se requiere un entorno con acelerador CUDA o ROCm.
  • El README remite a un manual obsoleto y a documentación heredada de versiones anteriores.

En colecciones

Temas

#compiler#pytorch#cuda#rocm#gpu#kernel-generation#operator-optimization

Preguntas frecuentes

¿Qué es antares?
AutoRT es una herramienta de compilación que ayuda a los desarrolladores a crear, evaluar y optimizar operadores de PyTorch para sus propios aceleradores. AutoRT, la siguiente generación del proyecto Antares de Microsoft, es una solución de compilación para usuarios del runtime que quieren escribir, evaluar y ajustar operadores de PyTorch para sus propios aceleradores. Los kernels se escriben como cuerpos de funciones en CUDA o HIP C++, con una pequeña cabecera que declara las formas de los tensores de entrada y salida y las vinculaciones de lanzamiento.
¿antares es gratuito? ¿Qué licencia tiene?
antares es open source bajo la licencia Other. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿antares sigue mantenido?
Mantenimiento activo. El último commit de antares fue el 23 oct 2026.
¿Para qué puedo usar antares?
Crear prototipos de un operador personalizado de PyTorch en GPU NVIDIA. Adaptar o ajustar operadores para GPU AMD con ROCm. Permitir que un agente de IA genere y pruebe kernels para aceleradores.
¿Cómo se instala antares?
Configura la imagen de Docker recomendada para CUDA o ROCm Ejecuta el ejemplo Hello World con el comando autort: autort -n hello_world_example --source=' @DEF_FUNC: input:float32[B, M] -> output:float32[B, M] @DEF_BIND: ~B~:1, ~%~:1024 void main() { if (int(blockIdx.x) == 0 && int(threadIdx.x) == 0) printf("(autort) Hello World!\n"); }'
¿Dónde consigo antares?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/microsoft/antares

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados