

# PERF02-BP06 Uso de aceleradores de computación optimizados basados en hardware
<a name="perf_compute_hardware_compute_accelerators"></a>

 Use aceleradores de hardware para llevar a cabo ciertas funciones de manera más eficiente que con las alternativas basadas en CPU. 

 **Patrones comunes de uso no recomendados:** 
+  En su carga de trabajo, no ha comparado una instancia de uso general con una instancia personalizada que pueda ofrecer mayor rendimiento y costos más reducidos. 
+  Utiliza aceleradores de computación basados en hardware para tareas en las que pueda ser más eficiente utilizar alternativas basadas en CPU. 
+  No supervisa el uso de GPU. 

**Beneficios de establecer esta práctica recomendada:** al utilizar aceleradores basados en hardware, como unidades de procesamiento gráfico (GPU) y matrices de puertas programables en campo (FPGA), puede poner en marcha determinadas funciones de procesamiento de manera más eficiente. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Las instancias de computación acelerada proporcionan acceso a aceleradores de computación basados en hardware, como las GPU y las FPGA. Estos aceleradores de hardware llevan a cabo ciertas funciones, como el procesamiento gráfico o la concordancia de patrones de datos, de forma más eficiente que las alternativas basadas en CPU. Muchas cargas de trabajo aceleradas, como el renderizado, la transcodificación y el machine learning, son muy variables en cuanto al uso de recursos. Ejecute este hardware solo durante el tiempo que sea necesario y retírelo mediante automatización cuando no se requiera para mejorar la eficiencia del rendimiento general. 

### Pasos para la implementación
<a name="implementation-steps"></a>
+  Identifique qué [instancias de computación acelerada](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/accelerated-computing-instances.html) pueden satisfacer sus requisitos. 
+  Para las cargas de trabajo de machine learning, utilice hardware personalizado específico para la carga de trabajo, como [AWS Trainium](https://aws.amazon.com/machine-learning/trainium/), [AWS Inferentia](https://aws.amazon.com/machine-learning/inferentia/) y [Amazon EC2 DL1](https://aws.amazon.com/ec2/instance-types/dl1/). AWS Las instancias de Inferentia, como las instancias Inf2, [ofrecen hasta un 50 % más de rendimiento por vatio que las instancias de Amazon EC2 comparables](https://aws.amazon.com/machine-learning/inferentia/). 
+  Recopile las métricas de uso de las instancias de computación acelerada. Por ejemplo, puede usar el agente de CloudWatch para recopilar métricas como `utilization_gpu` y `utilization_memory` para sus GPU, como se muestra en [Recopilación de métricas de GPU NVIDIA con Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-NVIDIA-GPU.html). 
+  Optimice el código, el funcionamiento de la red y la configuración de los aceleradores de hardware para asegurarse de que se aprovecha al máximo el hardware subyacente. 
  +  [Optimización de las configuraciones de GPU](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/optimize_gpu.html) 
  +  [GPU Monitoring and Optimization in the Deep Learning AMI](https://docs.aws.amazon.com/dlami/latest/devguide/tutorial-gpu.html) 
  +  [Optimizing I/O for GPU performance tuning of deep learning training in Amazon SageMaker AI](https://aws.amazon.com/blogs/machine-learning/optimizing-i-o-for-gpu-performance-tuning-of-deep-learning-training-in-amazon-sagemaker/) 
+  Utilice las bibliotecas de alto rendimiento y los controladores de GPU más recientes. 
+  Use la automatización para liberar instancias de GPU cuando no se estén usando. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [Uso de GPU en Amazon Elastic Container Service](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-gpu.html) 
+  [instancias de GPU](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/accelerated-computing-instances.html#gpu-instances) 
+  [Instances with AWS Trainium](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/accelerated-computing-instances.html#aws-trainium-instances) 
+  [Instances with AWS Inferentia](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/accelerated-computing-instances.html#aws-inferentia-instances) 
+  [Let’s Architect\$1 Architecting with custom chips and accelerators](https://aws.amazon.com/blogs/architecture/lets-architect-custom-chips-and-accelerators/) 
+  [Computación acelerada](https://aws.amazon.com/ec2/instance-types/#Accelerated_Computing) 
+  [Amazon EC2 VT1 Instances](https://aws.amazon.com/ec2/instance-types/vt1/) 
+  [¿Cómo elijo el tipo de instancia de Amazon EC2 apropiado para mi carga de trabajo?](https://aws.amazon.com/premiumsupport/knowledge-center/ec2-instance-choose-type-for-workload/) 
+  [Choose the best AI accelerator and model compilation for computer vision inference with Amazon SageMaker AI](https://aws.amazon.com/blogs/machine-learning/choose-the-best-ai-accelerator-and-model-compilation-for-computer-vision-inference-with-amazon-sagemaker/) 

 **Videos relacionados:** 
+  AWS re:Invent 2021 - [How to select Amazon Elastic Compute Cloud GPU instances for deep learning](https://www.youtube.com/watch?v=4bVrIbgGWEA&ab_channel=AWSEvents) 
+  [AWS re:Invent 2022 - [NEW LAUNCH\$1] Introducing AWS Inferentia2-based Amazon EC2 Inf2 instances](https://www.youtube.com/watch?v=jpqiG02Y2H4&ab_channel=AWSEvents) 
+  [AWS re:Invent 2022 - Accelerate deep learning and innovate faster with AWS Trainium](https://www.youtube.com/watch?v=YRqvfNwqUIA&ab_channel=AWSEvents) 
+  [AWS re:Invent 2022 - Deep learning on AWS with NVIDIA: From training to deployment](https://www.youtube.com/watch?v=l8AFfaCkp0E&ab_channel=AWSEvents) 

 **Ejemplos relacionados:** 
+  [Amazon SageMaker AI y NVIDIA GPU Cloud (NGC)](https://github.com/aws-samples/amazon-sagemaker-nvidia-ngc-examples) 
+  [Uso de SageMaker AI con Trainium e Inferentia para optimizar las cargas de trabajo de aprendizaje profundo, entrenamiento e inferencia](https://github.com/aws-samples/sagemaker-trainium-inferentia) 
+  [Optimización de modelos de NLP con instancias Inf1 de Amazon Elastic Compute Cloud en Amazon SageMaker AI](https://github.com/aws-samples/aws-inferentia-huggingface-workshop) 