web-dev-qa-db-fra.com

Comment utiliser NVIDIA GeForce M310 sur Ubuntu 12.10 s’exécutant en tant qu’invité dans VirtualBox?

Les dernières semaines ont joué avec Ubuntu 12.10. Cela fonctionne en tant qu'invité sur Virtualbox hébergé sur Windows 7. Il y a eu quelques problèmes avec le logiciel Unity 3D. Particulièrement pour ne pas supporter la version 1.1 de X11 jusqu'à tout récemment. Depuis aujourd'hui, nous sommes en mesure de télécharger la version 4.2.2 de Virtualbox, qui prend également en charge, par le biais d'invités, la version 1.1 de X11. SO C'est un excellent travail pour tout le monde.

Comme Unity ne fonctionne maintenant qu'en mode 3D, il serait agréable d’accéder à la carte graphique directement à partir de Virtualbox. lshw -c display affiche: VGA compatible controller; product: VirtualBox Graphics Adapter.

QUESTION: comment obtenir la 3D et autres graphiques directement pris en charge par le matériel, à savoir Nvidia GeForce M310

9
huub

Passthrough PCI

Le passthrough PCI est expérimentalement pris en charge dans les versions récentes Virtual Box ) (PUEL) versions. Cependant, il existe plusieurs limitations, c’est-à-dire qu’une carte graphique peut être lue à partir du Manuel de l'utilisateur de Virtual Box :

AGP et certaines cartes PCI Express ne sont pas prises en charge pour le moment si elles reposent sur GART

Je ne peux pas dire si c'est le cas avec le Nvidia M310, vous devrez d'abord le comprendre avant d'essayer.

Pour que la liaison PCI fonctionne, nous avons également besoin d’une carte mère avec les paramètres BIOS IOMMU activés (c’est-à-dire VT-d pour Intel, AMD-Vi pour AMD).

Il existe plusieurs conditions préalables supplémentaires à remplir (voir Manuel Virtual Box pour plus de détails):

  • Votre carte mère a une unité IOMMU.
  • Votre CPU prend en charge l'IOMMU.
  • L'IOMMU est activé dans le BIOS.
  • La VM doit être exécutée avec VT-x/AMD-V et la pagination imbriquée activée.
  • Votre noyau Linux a été compilé avec le support IOMMU, le remappage DMA et le pilote de stub PCI.
  • Votre noyau Linux reconnaît et utilise l'unité IOMMU.

Nous pouvons ensuite attacher un périphérique PCI avec ses propriétés bus:device.function lues à partir de lspci sur notre machine virtuelle en utilisant:

VBoxManage modifyvm "VM name" --pciattach <Host-bus>:<Host-device>.<Host-function>@<guest-bus>:<guest-device>.<guest-function>.

Voir l'invité avec lspci si le périphérique a été connecté correctement avant d'installer les pilotes pour ce périphérique.

Veuillez également vous référer au Manuel Virtual Box pour d'autres limitations.

15
Takkat

À partir de 2016, il est entièrement mis en œuvre, mais pour les invités Linux expérimental.

Le module de relais PCI est livré sous forme de package d'extension VirtualBox, qui doit être installé séparément. Voir Section 1.5, "Installation de VirtualBox et des packs d'extension" pour plus d'informations.

En gros, cette fonctionnalité permet d’utiliser directement des périphériques physiques PCI sur l’hôte, même si l’hôte n’a pas de pilotes pour ce périphérique particulier. Les cartes PCI standard et certaines cartes PCI Express sont toutes deux prises en charge. AGP et certaines cartes PCI Express ne sont pas prises en charge pour le moment si elles s'appuient sur la programmation d'unités GART (Graphics Address Remapping Table) pour la gestion des textures, car il s'agit d'opérations peu banales avec des pages remappées interférant avec IOMMU. Cette limitation peut être levée dans les versions futures.

Source: manuel de VirtualBox

3
Willi Mentzel