logo de l'entreprise zoox

Zoox utilise AWS pour le calcul haute performance évolutif afin de tester rapidement les véhicules autonomes

2021

Zoox, filiale indépendante d'Amazon et entreprise de véhicules autonomes, a dû prévoir plus loin que ses infrastructures sur site pour effectuer des simulations pouvant certifier la sécurité de ses véhicules. Ses charges de travail de simulation étaient sujettes à des crashs, ce qui signifiait que Zoox était soumis à une demande de puissance de calcul supérieure à ce que ses machines pouvaient gérer. L'entreprise a choisi de créer un modèle d'infrastructure hybride, en se tournant vers Amazon Web Services (AWS) pour le calcul à haute performance afin de compléter son cluster de superordinateurs interne. 

En tirant parti d'Amazon Elastic Compute Cloud (Amazon EC2), qui offre une solution de calcul étendue avec un choix de processeur, de stockage, de mise en réseau, de système d'exploitation et de modèle d'achat, parallèlement au gestionnaire de charges de travail open source Slurm du partenaire AWS SchedMD, Zoox a accéléré les tests et le développement pour de grandes quantités de données et a accéléré la commercialisation. D'ici fin 2024, Zoox prévoit d'utiliser des centaines de pétaoctets de données sur AWS.

Zoox Fully Autonomous Vehicle at Coit Tower San Francsico
kr_quotemark

Nous pouvons faire tourner jusqu'à 1 000 nœuds dans une seule région AWS et exécuter une tâche en quelques heures pour obtenir rapidement des résultats sur des expériences critiques de recherche et développement. »

Conrad Herrmann
Ingénieur logiciel, Zoox

Étendre l'efficacité de la puissance de calcul

Fondée en 2014, Zoox construit une flotte de véhicules autonomes électriques et symétriques prévus pour être utilisés par des services de covoiturages, pensés pour réduire les embouteillages et la pollution dans les environnements urbains. Ses véhicules privilégient l'expérience du passager par rapport à celle du conducteur ; les sièges des voitures favorisent les interactions sociales, car les passagers se font face. Chaque véhicule bidirectionnel peut se garer sur une place de stationnement, déposer ses passagers, puis repartir en arrière comme s'il avançait.  La simulation de scénarios de conduite divers et variés est cruciale pour le développement et la production de ces véhicules afin de certifier leur sécurité.

Zoox dispose d'un cluster sur site qui fournit la majeure partie de la puissance de calcul requise pour diverses charges de travail, c'est-à-dire principalement de la simulation, mais aussi du machine learning pour améliorer la capacité de perception, ainsi que l'ingestion et le traitement des données. Cependant, au fur et à mesure que l'entreprise s'est développée, ses charges de travail ont fluctué drastiquement, dépassant parfois la capacité de son cluster sur site, qui est difficile à mettre à l'échelle efficacement. Zoox doit étendre le nombre de ses machines pour pouvoir gérer ses volumes de calcul.

Zoox a choisi AWS parce que cela lui donnait une capacité de mise à l'échelle et une flexibilité permettant d'utiliser et de payer le strict nécessaire en matière de puissance de calcul. Zoox serait alors en mesure de réorienter ses ressources vers de nouveaux projets innovants pour résoudre des défis techniques complexes. « Nous utilisons AWS pour gérer des charges de travail spécialisées qui doivent être proches des données », explique Conrad Herrmann, ingénieur logiciel chez Zoox. Slurm, le gestionnaire de charges de travail de SchedMD, utilise également AWS pour optimiser la vitesse, le débit et la consommation de ressources des charges de travail essentielles pour le calcul haute performance et l'intelligence artificielle. « Dans le monde du calcul à haute performance, seule une poignée de contrôleurs de tâches est utilisée, et Slurm est une vieille référence », dit Herrmann. « Nous étions convaincus qu'AWS nous conviendrait. »

Utilisation d'un modèle hybride pour accroître la rapidité, la collaboration et les économies

Pour commencer, Zoox a commencé à tester une charge de travail sur AWS qui extrait des données à partir d'Amazon Simple Storage Service (Amazon S3) que les clients peuvent utiliser pour stocker et protéger n'importe quelle quantité de données pour toute une série de cas d'utilisation et a commencé à les indexer pour détecter les problèmes qui pourraient survenir. Ensuite, Zoox a construit des versions expérimentales de son logiciel, comme une tâche de machine learning conçue pour fonctionner sur AWS, en l'associant à une instance Amazon EC2 pour mesurer ses performances. Ensuite, Zoox a créé des charges de travail de production et les a exécutées sur AWS pour tester si elles pouvaient être terminées dans un temps donné. « Nous utilisons AWS pour ces situations, car il nous permet d'obtenir des résultats plus rapidement, ce qui nous permet d'accélérer le développement », explique Herrmann. « Si le véhicule ne fait pas ce qu'il doit faire dans les simulations de sécurité, nous modifions le comportement du système de conduite et réessayons jusqu'à ce que nous obtenions le bon comportement dans des millions de situations différentes. »

En s'appuyant sur AWS pour sa puissance de calcul, Zoox peut sélectionner les instances Amazon EC2 qui répondent à ses besoins en matière de prix, de fiabilité et de disponibilité, avec différentes échelles de machines, de mémoire et d'accès au réseau. « Nous devons déterminer la meilleure architecture de l'environnement en termes de coûts et de résultats », explique Herrmann. « Si vous réduisez tous les autres coûts, mais que vous devez ensuite attendre vos résultats, cela augmente le coût total pour l'entreprise. Sur AWS, nous pouvons trouver un moyen efficace de développer le véhicule sans délai. » Cette flexibilité aide également les équipes de Zoox à collaborer plus efficacement : « Il existe un ensemble complexe d'interactions entre les coûts, l'architecture et les tâches », nous dit Herrmann. « Nous devons travailler en étroite collaboration avec de nombreuses disciplines pour tout équilibrer. L'utilisation d'AWS nous aide à assembler toutes les pièces du puzzle pour exécuter ces tâches efficacement. »

En outre, Zoox utilise AWS pour l'aider à gérer les périodes de calcul intensif. « Lorsque les ingénieurs chargés de la conception des véhicules apportent une modification au système de contrôle de la conduite, cette modification doit être validée en utilisant des centaines d'heures de CPU et de GPU », explique Herrmann. « Grâce à Slurm et AWS, notre cluster est en mesure de doubler au minimum le nombre de CPU et de GPU disponibles pour les tâches de calcul. Cette capacité de rafale accélère la perception des capteurs, le machine learning et les scénarios de conduite simulée qui sont les éléments clés pour réaliser un système de conduite autonome agréable et sécurisé. »

Pour gérer les instances Amazon EC2 pour les services à long terme et les tâches occasionnelles, Zoox utilise Amazon Elastic Kubernetes Service (Amazon EKS) qui aide les entreprises à gérer leurs clusters et applications Kubernetes dans des environnements hybrides. Slurm utilise des clouds privés virtuels contenant des instances Amazon EC2 allouées de manière dynamique en fonction de la demande. Lorsque quelqu'un soumet une tâche au contrôleur Slurm, ce dernier peut choisir de l'exécuter dans le cloud et sélectionner le nombre d'instances à utiliser. « Nous pouvons faire tourner 1 000 nœuds dans une seule région AWS et exécuter une tâche en quelques heures pour obtenir rapidement des résultats sur des expériences critiques de recherche et de développement, sans attendre que ces nœuds soient disponibles dans notre centre de données sur site ou sans avoir à construire un autre centre de données », explique Herrmann.

Zoox stockes des dizaines de pétaoctets de données dans Amazon S3. « Notre stockage doit être mis à l'échelle très rapidement vers des volumes en pétaoctets de données à mesure que nous augmentons le nombre de véhicules, les calculs et les simulations que nous effectuons », déclare Herrmann. Slurm lance des instances Amazon EC2 qui peuvent accéder rapidement aux données et effectuer des calculs de manière efficace. Zoox gère les données dans Amazon S3 à l'aide d'Amazon CloudWatch, qui collecte des données de surveillance et d'exploitation. Amazon CloudWatch offre une vue unifiée des ressources, des applications et des services AWS qui fonctionnent sur des serveurs sur site et AWS. « L'utilisation d'Amazon CloudWatch nous aide à comprendre ce qui se passe et ce qui fonctionne », explique Herrmann.

Mise à l'échelle pour stocker et simuler des centaines de pétaoctets de données sur AWS

Au cours des prochaines années, Zoox fera passer ses charges de travail de la phase expérimentale à la phase de production, qui devrait utiliser des centaines de pétaoctets de données. Sur AWS, Zoox a créé une infrastructure hybride qui ingère rapidement et à moindre coût une énorme quantité de données et exécute de grandes simulations, accélérant ainsi les tests et le développement de ses véhicules autonomes. « Grâce aux services AWS gérés, nous pouvons créer des systèmes complexes qui nous permettent de nous concentrer sur notre mission, sans nous préoccuper de tous les autres systèmes », explique Herrmann. « Si nous avons un problème, AWS le résout pour nous. »


À propos de Zoox

Fondée en 2014, Zoox est une entreprise qui produit une flotte de véhicules autonomes, symétriques, électriques à fonctionnement bidirectionnel prévus pour être utilisés par des services de covoiturages, pensés pour réduire les embouteillages et la pollution dans les environnements urbains.

Les avantages d'AWS

  • Stockage et traitement de dizaines de pétaoctets de données
  • Exécution rapide de 1 000 nœuds maximum
  • Facilitation de l'infrastructure hybride
  • Rationalisation de la collaboration entre équipes
  • Optimisation des charges de travail à l'aide d'instances Amazon EC2
  • Possibilité d'utiliser des centaines de pétaoctets de données dans les prochaines années

Services AWS utilisés

Amazon EC2

Amazon Elastic Compute Cloud (Amazon EC2) est un service Web qui fournit une capacité de calcul sécurisée et redimensionnable dans le cloud. Destiné aux développeurs, il est conçu pour faciliter l'accès aux ressources de cloud computing à l'échelle du Web.

En savoir plus »

Amazon S3

Amazon Simple Storage Service (Amazon S3) est un service de stockage d'objets qui offre une capacité de mise à l'échelle, une disponibilité des données, une sécurité et des performances de pointe.

En savoir plus »

Amazon EKS

Amazon Elastic Kubernetes Service (Amazon EKS) est un service de conteneurs géré pour exécuter et mettre à l'échelle des applications Kubernetes dans le cloud ou sur site.

En savoir plus »

Amazon CloudWatch

Amazon CloudWatch est un service de surveillance et d'observabilité conçu pour les ingénieurs DevOps, les développeurs, les ingénieurs en fiabilité de sites (SRE) et les responsables informatiques.

En savoir plus »


Démarrer

Les organisations de toutes tailles et de tous secteurs transforment leur activité et exécutent leurs missions au quotidien à l'aide d'AWS. Contactez nos experts et démarrez votre transition vers AWS dès aujourd'hui.