

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Options d'architecture sans serveur Amazon EMR
<a name="architecture"></a>

L'architecture du jeu d'instructions de votre application Amazon EMR Serverless détermine le type de processeurs que l'application utilise pour exécuter la tâche. **Amazon EMR propose deux options d'architecture pour votre application : **x86\$164** et arm64.** EMR Serverless est automatiquement mis à jour vers la dernière génération d'instances dès qu'elles sont disponibles, afin que vos applications puissent utiliser les nouvelles instances sans que vous ayez besoin d'efforts supplémentaires.

**Topics**
+ [Utilisation de l'architecture x86\$164](#x86)
+ [Utilisation de l'architecture arm64 (Graviton)](#arm64)
+ [Lancement de nouvelles applications avec le support de Graviton](#arm64-new)
+ [Configuration des applications existantes pour utiliser Graviton](#arm64-existing)
+ [Considérations relatives à l'utilisation de Graviton](#arm64-considerations)

## Utilisation de l'architecture x86\$164
<a name="x86"></a>

L'architecture **x86\$164** est également connue sous le nom de x86 64 bits ou x64. **x86\$164** est l'option par défaut pour les applications EMR sans serveur. Cette architecture utilise des processeurs x86 et est compatible avec la plupart des outils et bibliothèques tiers.

La plupart des applications sont compatibles avec la plate-forme matérielle x86 et peuvent fonctionner correctement sur l'architecture **x86\$164** par défaut. Toutefois, si votre application est compatible avec ARM 64 bits, passez à **arm64** pour utiliser les processeurs Graviton afin d'améliorer les performances, la puissance de calcul et la mémoire. Exécuter des instances sur une architecture arm64 coûte moins cher que lorsque vous exécutez des instances de taille égale sur une architecture x86. 

## Utilisation de l'architecture arm64 (Graviton)
<a name="arm64"></a>

AWS Les processeurs Graviton sont conçus sur mesure AWS avec des cœurs ARM Neoverse 64 bits et tirent parti de l'architecture arm64 (également connue sous le nom d'Arch64 ou ARM 64 bits). La gamme de processeurs AWS Graviton disponible sur EMR Serverless inclut les processeurs Graviton3 et Graviton2. Ces processeurs offrent un rapport prix/performances supérieur pour les charges de travail Spark et Hive par rapport aux charges de travail équivalentes exécutées sur l'architecture x86\$164. EMR Serverless utilise automatiquement la dernière génération de processeurs lorsqu'elle est disponible, sans aucun effort de votre part pour passer à la dernière génération de processeurs.

## Lancement de nouvelles applications avec le support de Graviton
<a name="arm64-new"></a>

Utilisez l'une des méthodes suivantes pour lancer une application utilisant l'architecture **arm64**.

------
#### [ AWS CLI ]

Pour lancer une application à l'aide de processeurs Graviton depuis AWS CLI, `ARM64` spécifiez-le comme `architecture` paramètre dans l'`create-application`API. Indiquez les valeurs appropriées pour votre application dans les autres paramètres.

```
aws emr-serverless create-application \
 --name my-graviton-app \
 --release-label emr-6.8.0 \
 --type "SPARK" \
 --architecture "ARM64" \
 --region us-west-2
```

------
#### [ EMR Studio ]

**Pour lancer une application à l'aide des processeurs Graviton d'EMR Studio, **choisissez** arm64 comme option Architecture lorsque vous créez ou mettez à jour une application.**

------

## Configuration des applications existantes pour utiliser Graviton
<a name="arm64-existing"></a>

Vous pouvez configurer vos applications Amazon EMR Serverless existantes pour utiliser l'architecture Graviton (arm64) avec le SDK ou EMR Studio. AWS CLI

**Pour convertir une application existante de x86 en arm64**

1. Vérifiez que vous utilisez la dernière version majeure du [AWS CLI/SDK](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/emr-serverless/index.html#cli-aws-emr-serverless) qui prend en charge le `architecture` paramètre.

1. Vérifiez qu'aucune tâche n'est en cours d'exécution, puis arrêtez l'application.

   ```
   aws emr-serverless stop-application \
    --application-id application-id \
    --region us-west-2
   ```

1.  Pour mettre à jour l'application afin d'utiliser Graviton, spécifiez `ARM64` le `architecture` paramètre dans l'`update-application`API.

   ```
   aws emr-serverless update-application \
    --application-id application-id \
    --architecture 'ARM64' \
    --region us-west-2
   ```

1. Pour vérifier que l'architecture du processeur de l'application est correcte ARM64, utilisez l'`get-application`API.

   ```
   aws emr-serverless get-application \
    --application-id application-id \
    --region us-west-2
   ```

1. Lorsque vous êtes prêt, redémarrez l'application.

   ```
   aws emr-serverless start-application \
    --application-id application-id \
    --region us-west-2
   ```

## Considérations relatives à l'utilisation de Graviton
<a name="arm64-considerations"></a>

Avant de lancer une application EMR sans serveur utilisant arm64 pour le support de Graviton, vérifiez les points suivants.

### Compatibilité avec les bibliothèques
<a name="arm64-prereqs-library"></a>

Lorsque vous sélectionnez Graviton (arm64) comme option d'architecture, assurez-vous que les packages et bibliothèques tiers sont compatibles avec l'architecture ARM 64 bits. Pour plus d'informations sur la façon d'empaqueter des bibliothèques Python dans un environnement virtuel Python compatible avec l'architecture que vous avez sélectionnée, reportez-vous à[Utilisation de bibliothèques Python avec EMR Serverless](using-python-libraries.md).

Pour en savoir plus, consultez le référentiel [AWS Graviton Getting Started](https://github.com/aws/aws-graviton-getting-started) sur GitHub. Ce référentiel contient des ressources essentielles qui peuvent vous aider à démarrer avec le Graviton basé sur ARM.