Pour faire court, la seule façon pour une IOMMU de vous aider est de commencer à affecter des ressources matérielles directement à la machine virtuelle. Le simple fait de ne pas accélérer les choses.
Il serait utile de savoir exactement quelle carte mère / CPU annonce cette fonctionnalité. IOMMU est un mécanisme de mappage d'E / S spécifique au système et peut être utilisé avec la plupart des appareils.
IOMMU ressemble à un nom générique pour Intel VT-d et AMD IOV. Dans ce cas, je ne pense pas que vous puissiez multiplexer des périphériques, c'est un peu comme le passthrough PCI avant que toutes ces instructions de virtualisation sophistiquées n'existent :). SR-IOV est différent, le périphérique lui-même doit porter le support. Le HW sait qu'il est virtualisé et peut déléguer une tranche HW de lui-même à la VM. De nombreuses machines virtuelles peuvent communiquer avec un périphérique SR-IOV en même temps que les frais généraux sont très faibles.
La seule chose plus rapide que SR-IOV est le relais PCI bien que dans ce cas, une seule machine virtuelle puisse utiliser ce périphérique, même le système d'exploitation hôte ne peut pas l'utiliser. Le passthrough PCI serait utile pour, disons, une machine virtuelle qui exécute une base de données intense qui gagnerait à être attachée à un SAN FibreChannel.
Se rapprocher du matériel HW a cependant des limites, il rend vos machines virtuelles moins portables pour les déploiements qui nécessitent une migration en direct par exemple. Cela s'applique à la fois au SR-IOV et au passthrough PCI.
Les déploiements Linux virtualisés par défaut utilisent généralement VirtIO qui est assez rapide pour commencer.