<div class='slidealt'>Expérimentez des extensions de <a title='virtualisation pour plateformes hétérogènes à base de processeurs ARM' href='/fr/produits/'>virtualisation KVM</a></div> <div class='slidealt'>Faites appelle à des <a title='services de full virtualisation pour kvm sur coeur ARM' href='/fr/services/'>services de virtualisation sur mesure</a></div> <div class='slidealt'>Virtualisation KVM des E/S's pour coeurs ARMv7, ARMv8 <a title='extensions de virtualisation de plateforme VFIO des E/S par kvm sur arm en logiciel libre' href='/fr/solutions/guides/vfio-sur-arm/'>par extensions VFIO/IOMMU</a></div> <div class='slidealt'>Projets de recherche de virtualisation <a title='kvm en logiciel libre pour ARM multicoeur' href='/fr/innovation/'>pour les systèmes embarqués et le cloud</a></div> <div class='slidealt'>Solutions de virtualisation pour systèmes <a title='solutions en logiciels libres de virtualisation pour ARMv7-ARMv8' href='/fr/solutions/'>hétérogènes multicoeur ARM</a></div>

Virtual Open Systems - Publications scientifiques

Aperçu technique et Évaluation des performances de Virtio-loopback

Aperçu technique et évaluation des performances de Virtio-loopback - conférence ICAI2024

Évènement

La 2024e Conférence Internationale sur l'Automatique et l'Informatique (ICAI2024).

Mots-clés

virtio, Vhost, vhost-user, virtio-loopback, vduse, hal, virtualisation, paravirtualisation.

Auteurs

Timos Ampelikiotis, Alvise Rigo, Daniel Raho (Virtual Open Systems SAS).

Résumé

La complexité croissante et la nature propriétaire des solutions matérielles modernes nécessitent le maintien de fourches locales du noyau Linux avec les pilotes correspondants, ce qui entraîne des défis importants en matière de maintenabilité. Les pilotes de l'espace utilisateur sont apparus comme une solution prometteuse, car ils offrent une plus grande portabilité et une moindre dépendance à l'égard des révisions du noyau. Toutefois, ces pilotes posent également leurs propres problèmes, tels que les API spécifiques aux fournisseurs et l'absence de compatibilité ascendante, qui peuvent alourdir la charge de maintenance.

Pour relever ces défis, une couche d'abstraction matérielle (HAL) conçue pour les environnements sans hyperviseur est nécessaire. S'appuyant sur les technologies virtio et vhost-user bien établies, Virtio-loopback fournit une interface normalisée qui garantit la compatibilité et la stabilité des performances. Ce HAL vise à atténuer les problèmes associés aux pilotes de l'espace utilisateur et à soutenir le développement d'applications sans modifications importantes.

La principale contribution de ce document est la présentation technique et l'évaluation des performances de la technologie Virtio-loopback sur différentes architectures matérielles, notamment RISC-V, ARM64 et x86. Grâce à ce processus, nous évaluons la conception de Virtio-loopback par rapport aux normes actuelles et comparons ses performances avec des solutions telles que vDUSE. Nos résultats indiquent que Virtio-loopback répond aux normes de performance actuelles, ce qui en fait un candidat viable pour fonctionner en tant que HAL dans des scénarios sans hyperviseur.

Introduction

Ces dernières années, l'industrie s'appuie sur un nombre croissant de solutions matérielles propriétaires qui visent à améliorer les niveaux de performance des systèmes existants. Pour éviter d'exposer les détails de l'implémentation de ces solutions, les OEM (Original Equipment Manufacturer) sont généralement contraints de maintenir une version locale du noyau Linux, où sont intégrés les pilotes correspondants pour ce matériel. Étant donné que le nombre de ces pilotes augmente, leur portage fréquent vers des versions plus récentes du noyau introduit une charge de travail considérable en termes de maintenabilité, qui devient de plus en plus complexe à mesure que le noyau Linux évolue à un rythme soutenu.

Le développement de pilotes en espace utilisateur a été présenté comme une approche prometteuse susceptible d'alléger les exigences en matière de maintenabilité. En pratique, les pilotes utilisateur sont beaucoup plus portables que les modules du noyau, car ils dépendent moins du noyau et les révisions sont donc moins fréquentes. Sur cette base, les équipementiers pourraient limiter l'effort de maintenabilité et réaffecter leurs ressources ailleurs.

En réalité, les pilotes de l'espace utilisateur posent également leur propre série de problèmes qu'il convient de résoudre, tels que des API distinctes et spécifiques au fournisseur, l'absence de compatibilité ascendante, etc. En l'absence de réglementation et de convention, les nouvelles API présentées par les pilotes de l'espace utilisateur des équipementiers risquent d'imposer à l'application un code supplémentaire pour les prendre en charge, sans garantie de rétrocompatibilité, ce qui entraînera des efforts de maintenance supplémentaires et des mises à jour fréquentes.

La création d'une nouvelle couche d'abstraction matérielle (HAL) est essentielle pour résoudre les problèmes potentiels susmentionnés, protéger les développeurs d'applications contre de nouvelles dérives et aider l'industrie à répondre à ses besoins exigeants. Baser cette couche d'abstraction matérielle sur des technologies bien établies qui ont été testées et utilisées à grande échelle pourrait également permettre de porter les applications existantes avec un effort mineur et de garantir leur performance et leur stabilité. En accord avec les critères ci-dessus, Virtio-loopback représente un HAL pour un environnement sans hyperviseur basé sur les technologies virtio et vhost-user.

La contribution de cet article est un aperçu technique et une évaluation des performances de la technologie Virtio-loopback sur différentes architectures HW (RISC-V, ARM64, x86). Notre objectif est d'explorer et éventuellement de prouver qu'en termes de performances, par rapport aux solutions déjà existantes (vDUSE), Virtio-loopback pourrait répondre aux normes de performances actuelles et être un candidat considérable pour fonctionner comme un HAL dans des scénarios sans hyperviseur.

Accès complet à cette article scientifique

Identifiant ou inscription pour visualiser l'information complète