[ad_1]
Esta es una publicación invitada de AK Roy de Qualcomm AI.
Las instancias DL2q de Amazon Elastic Compute Cloud (Amazon EC2) basadas en aceleradores Qualcomm AI 100 Standard se pueden utilizar para implementar de manera rentable cargas de trabajo de aprendizaje profundo (DL) en la nube. También se pueden utilizar para desarrollar y validar el rendimiento y la precisión de las cargas de trabajo de DL implementadas en dispositivos Qualcomm. Las instancias DL2q son las primeras que llevan la inteligencia artificial (IA) de Qualcomm a la nube.
Con ocho aceleradores estándar Qualcomm AI 100 y una memoria de acelerador total de 128 GiB, los clientes también pueden usar instancias DL2q para ejecutar aplicaciones populares de IA generativa, como generación de contenido, resumen de texto y asistentes virtuales, así como aplicaciones clásicas de IA para procesamiento de lenguaje natural e informática. visión. Además, los aceleradores Qualcomm AI 100 cuentan con la misma tecnología de IA utilizada en teléfonos inteligentes, conducción autónoma, PC y cascos de realidad extendida, por lo que las instancias DL2q se utilizan para desarrollar y validar estas cargas de trabajo de IA antes de su implementación.
Aspectos destacados de la nueva instancia DL2q
Cada instancia DL2q incluye ocho aceleradores Qualcomm Cloud AI100 con un rendimiento total de más de 2,8 PetaOps de rendimiento de inferencia Int8 y 1,4 PetaFlops de rendimiento de inferencia FP16. La instancia tiene un total de 112 núcleos de IA, una capacidad de memoria del acelerador de 128 GB y un ancho de banda de memoria de 1,1 TB por segundo.
Cada instancia DL2q tiene 96 vCPU, 768 GB de capacidad de memoria del sistema y admite 100 Gbps de ancho de banda de red y 19 Gbps de almacenamiento de Amazon Elastic Block Store (Amazon EBS).
Nombre de instancia | vCPU | Acelerador de nube AI100 | Memoria del acelerador | Memoria del acelerador BW (agregada) | Almacenamiento de instancias | Redes de instancias | Ancho de banda de almacenamiento (Amazon EBS). |
DL2q.24xgrande | 96 | octavo | 128GB | 1.088 TB/s | 768GB | 100 Gbps | 19Gbps |
Innovación del acelerador Qualcomm Cloud AI100
El sistema en chip (SoC) acelerador Cloud AI100 es una arquitectura multinúcleo escalable y diseñada específicamente que admite una amplia gama de casos de uso de aprendizaje profundo que van desde el centro de datos hasta el borde. El SoC utiliza núcleos escalares, vectoriales y tensoriales con una capacidad SRAM integrada líder en la industria de 126 MB. Los núcleos están conectados a través de una red Network-on-Chip (NoC) de baja latencia y gran ancho de banda.
El acelerador AI100 admite una amplia y completa gama de modelos y casos de uso. La siguiente tabla muestra el alcance del soporte del modelo.
Categoría de modelo | Número de modelos | Ejemplos |
PNL | 157 | BERT, BART, FasterTransformer, T5, MOE de código Z |
IA generativa – PNL | 40 | LLaMA, CodeGen, GPT, OPT, BLOOM, Jais, Luminous, StarCoder, XGen |
IA generativa – Imagen | 3 | Distribución estable v1.5 y v2.1, OpenAI CLIP |
Currículum – Clasificación de imágenes | 45 | ViT, ResNet, ResNext, MobileNet, EfficientNet |
CV – Reconocimiento de objetos | 23 | YOLO v2, v3, v4, v5 y v7, SSD-ResNet, RetinaNet |
CV – Otro | 15 | LPRNet, súper resolución/SRGAN, ByteTrack |
Redes automotrices* | 53 | Percepción y detección LIDAR, de peatones, de carriles y de semáforos |
En total | >300 | |
* La mayoría de las redes automotrices son redes compuestas, que consisten en la fusión de redes individuales.
La gran SRAM integrada del acelerador DL2q permite la implementación eficiente de técnicas de rendimiento avanzadas, como la precisión de microexponente MX6 para el almacenamiento de peso y la precisión de microexponente MX9 para la comunicación entre aceleradores. La tecnología de microexponentes se describe en el siguiente anuncio de la industria Open Compute Project (OCP): AMD, Arm, Intel, Meta, Microsoft, NVIDIA y Qualcomm estandarizan formatos de datos de precisión estrecha de próxima generación para AI » Open Compute Project.
El usuario de la instancia puede utilizar la siguiente estrategia para maximizar el rendimiento por costo:
- Almacene pesos con precisión de microexponente MX6 en la memoria DDR en el acelerador. El uso de la precisión MX6 maximiza el uso de la capacidad de memoria disponible y el ancho de banda de la memoria para ofrecer el mejor rendimiento y latencia de su clase.
- Compute en FP16 para ofrecer la precisión requerida en el caso de uso, mientras aprovecha la SRAM superior en el chip y los TOP de repuesto integrados para implementar kernels MX6 a FP16 de alto rendimiento y baja latencia.
- Aproveche una estrategia de lotes optimizada y un mayor tamaño de lote aprovechando la gran SRAM disponible en el chip para maximizar la reutilización del peso y al mismo tiempo preservar las activaciones en el chip tanto como sea posible.
Pila de IA y cadena de herramientas de DL2q
La instancia DL2q está acompañada por Qualcomm AI Stack, que proporciona una experiencia de desarrollador consistente para Qualcomm AI en la nube y otros productos de Qualcomm. La misma pila de IA de Qualcomm y la misma tecnología de IA base se ejecutan en las instancias DL2q y los dispositivos Qualcomm Edge, lo que brinda a los clientes una experiencia de desarrollador consistente con una API unificada en su nube, automoción, computación personal, realidad extendida y teléfono inteligente.
La cadena de herramientas permite al usuario de la instancia integrar rápidamente un modelo previamente entrenado, compilar y optimizar el modelo para las funciones de la instancia y luego implementar los modelos compilados para casos de uso de inferencia de producción en tres pasos, como se muestra en la siguiente figura.
Para obtener más información sobre cómo optimizar el rendimiento de un modelo, consulte la documentación de los parámetros clave de rendimiento de Cloud AI 100.
Comience con instancias DL2q
En este ejemplo, compilará e implementará un modelo BERT de Hugging Face previamente entrenado en una instancia EC2 DL2q utilizando una AMI DL2q disponible previamente creada en cuatro pasos.
Puede utilizar una DLAMI de Qualcomm prediseñada en la instancia o comenzar con una AMI de Amazon Linux2 y crear su propia AMI DL2q utilizando la plataforma Cloud AI 100 y el SDK de aplicaciones disponibles en este depósito de Amazon Simple Storage Service (Amazon S3): s3://ec2-linux-qualcomm-ai100-sdks/latest/
.
Los siguientes pasos utilizan la AMI DL2q prediseñada. Base Qualcomm AL2 DLAMI.
Utilice SSH para acceder a su instancia DL2q mediante la AMI Qualcomm Base AL2 DLAMI y siga los pasos del 1 al 4.
Paso 1: configurar el entorno e instalar los paquetes necesarios
- Instale Python 3.8.
- Configure el entorno virtual Python 3.8.
- Habilite el entorno virtual Python 3.8.
- Instale los paquetes necesarios enumerados en el documento requisitos.txt disponible en el sitio público Github de Qualcomm.
- Importe las bibliotecas necesarias.
Paso 2. Importa el modelo
- Importe y tokenice el modelo.
- Definir una entrada de muestra y extraerla
inputIds
YattentionMask
. - Convierta el modelo a ONNX, que luego se puede pasar al compilador.
- Ejecutan el modelo con precisión FP16. Por lo tanto, es necesario comprobar si el modelo contiene constantes que van más allá del rango FP16. Pasar el modelo al
fix_onnx_fp16
Función para generar el nuevo archivo ONNX con las correcciones necesarias.
Paso 3. Compila el modelo.
El qaic-exec
La herramienta de compilación de la interfaz de línea de comandos (CLI) se utiliza para compilar el modelo. La entrada a este compilador es el archivo ONNX generado en el paso 2. El compilador produce un archivo binario (llamado QPCpara Contenedor del programa Qualcomm) en el camino definido por -aic-binary-dir
Disputar.
En el siguiente comando de compilación, utiliza cuatro núcleos de IA y un tamaño de lote de uno para compilar el modelo.
El QPC se genera en bert-base-cased/generatedModels/bert-base-cased_fix_outofrange_fp16_qpc
Carpeta.
Paso 4: ejecutar el modelo
Configure una sesión para ejecutar inferencia en un acelerador Qualcomm Cloud AI100 en la instancia DL2q.
La biblioteca Qaic Python de Qualcomm es un conjunto de API que brindan soporte para ejecutar inferencia en el acelerador Cloud AI100.
- Utilice la llamada a la API de sesión para crear una instancia de sesión. La llamada a la API de sesión es el punto de entrada para utilizar la biblioteca qaic de Python.
- Reestructurar los datos del buffer de salida con
output_shape
Youtput_type
. - Decodifica la salida generada.
Aquí están los resultados de la oración de entrada «El perro [MASK] en la estera.»
Eso es todo. En solo unos pocos pasos, tendrá un modelo de PyTorch compilado y ejecutándose en una instancia Amazon EC2 DL2q. Para obtener más información sobre la incorporación y compilación de modelos en la instancia DL2q, consulte la documentación del tutorial de Cloud AI100.
Para obtener más información sobre qué arquitecturas de modelos DL funcionan bien con instancias AWS DL2q y la matriz de soporte de modelos actual, consulte la documentación de Qualcomm Cloud AI100.
Ya disponible
Puede lanzar instancias DL2q hoy en las regiones de AWS de EE. UU. Oeste (Oregón) y Europa (Frankfurt) como instancias bajo demanda, de reserva y puntuales, o como parte de un plan de ahorro. Como es habitual con Amazon EC2, solo pagas por lo que usas. Para obtener más información, consulte Precios de Amazon EC2.
Las instancias DL2q se pueden implementar mediante AMI de aprendizaje profundo de AWS (DLAMI) y las imágenes de contenedor están disponibles a través de servicios administrados como Amazon SageMaker, Amazon Elastic Kubernetes Service (Amazon EKS), Amazon Elastic Container Service (Amazon ECS) y AWS ParallelCluster.
Para obtener más información, visite la página de la instancia DL2q de Amazon EC2 y envíe sus comentarios a AWS re:Post for EC2 o a sus contactos habituales de soporte de AWS.
Sobre los autores
AK Roy es director de gestión de productos en Qualcomm para productos y soluciones de inteligencia artificial para centros de datos y nube. Tiene más de 20 años de experiencia en estrategia y desarrollo de productos, con un enfoque actual en el mejor rendimiento de su clase y soluciones de rendimiento/$rendimiento de extremo a extremo para la inferencia de IA en la nube para una amplia gama de casos de uso. incluyendo GenAI, LLM, IA automática e híbrida.
Jianying Lang es arquitecto principal de soluciones en AWS Worldwide Specialist Organization (WWSO). Tiene más de 15 años de experiencia profesional en el sector HPC e IA. En AWS, se centra en ayudar a los clientes a implementar, optimizar y escalar sus cargas de trabajo de IA/ML en instancias informáticas aceleradas. Su pasión radica en combinar técnicas en las áreas de HPC e IA. Jianying tiene un doctorado en física computacional de la Universidad de Colorado en Boulder.
[ad_2]