Pourquoi devrais-je activer IO APIC dans VirtualBox?

32

Quels sont les avantages de cocher l'option "Activer IO APIC" dans VirtualBox?

Bien que je ne trouve aucune information sur les avantages lorsque je le recherche sur Google, deux inconvénients sont évidents. Tout d'abord, il peut casser les anciennes machines virtuelles Windows s'il est désactivé après l'installation. Deuxièmement, cela réduit les performances des VM. Pourtant, j'ai remarqué qu'il est activé par défaut lors de l'installation d'Ubuntu 64bit.

Abtin Forouzandeh
la source

Réponses:

28

Voici la citation de la documentation VirtualBox :

Activer I / O APIC

Les contrôleurs d'interruption programmables avancés (APIC) sont une nouvelle fonctionnalité matérielle x86 qui a remplacé les contrôleurs d'interruption programmables (PIC) à l'ancienne au cours des dernières années. Avec un APIC d'E / S, les systèmes d'exploitation peuvent utiliser plus de 16 requêtes d'interruption (IRQ) et donc éviter le partage d'IRQ pour une fiabilité améliorée.

Remarque : L'activation de l'E / S APIC est requise pour les systèmes d'exploitation invités 64 bits, en particulier Windows Vista; il est également requis si vous souhaitez utiliser plusieurs CPU virtuels dans une machine virtuelle.

Cependant, la prise en charge logicielle des APIC d'E / S n'est pas fiable avec certains systèmes d'exploitation autres que Windows. De plus, l'utilisation d'un E / S APIC augmente légèrement les frais généraux de virtualisation et ralentit donc un peu le système d'exploitation invité.

Avertissement : tous les systèmes d'exploitation Windows à partir de Windows 2000 installent des noyaux différents selon qu'un APIC d'E / S est disponible. Comme pour ACPI, l'A / S APIC ne doit donc pas être désactivé après l'installation d'un système d'exploitation invité Windows. L'activer après l'installation n'aura cependant aucun effet.

De plus, vous pouvez désactiver la configuration avancée et l'interface d'alimentation (ACPI) que VirtualBox présente par défaut au système d'exploitation invité. ACPI est la norme actuelle de l'industrie pour permettre aux systèmes d'exploitation de reconnaître le matériel, de configurer les cartes mères et d'autres périphériques et de gérer l'alimentation. Comme tous les PC modernes contiennent cette fonctionnalité et que Windows et Linux la prennent en charge depuis des années, elle est également activée par défaut dans VirtualBox. Il peut être désactivé sur la ligne de commande; e voir la section intitulée «VBoxManage modifyvm».

Goyuix
la source
5
Pouvez-vous expliquer le dernier paragraphe? Quel est l'avantage de désactiver l'ACPI?
Matthew Flaschen
@MatthewFlaschen: vous avez pris les mots de mon esprit.
Davi Lima
10

Vous pourriez en avoir besoin lors de la migration d'une machine physique vers une machine virtuelle, si la machine physique a un IO APIC. La plupart des machines modernes le font.

Une installation standard sur un PC physique ou VMware moderne se traduira généralement par le choix de Halaacpi.dll car la plupart des systèmes ont aujourd'hui un IO APIC et VMware a choisi de le virtualiser par défaut (VirtualBox désactive le IO APIC car il est plus cher à virtualiser qu'un PIC standard).

http://www.virtualbox.org/wiki/Migrate_Windows

Nic
la source
2
Un autre avantage est qu'il vous permet d'allouer plus d'un processeur virtuel à votre machine virtuelle invitée.
Goyuix
4

Malheureusement, j'ai une machine plus ancienne avec seulement un processeur Pentium D. Ma VirtualBox fonctionnant sous Fedora était HORRIBLE. J'ai parcouru Internet à la recherche de tout ce qui pourrait améliorer les performances. J'ai trouvé un article qui montrait comment désactiver manuellement APIC IO, et après avoir fait la procédure, j'ai été stupéfait par l'amélioration marquée (mieux que doubler la vitesse) que j'ai gagnée en le faisant .....

Exécution de Fedora Core 14 sur un HP / Compaq dc7700 avec mémoire 3G, exécutant Virtualbox version 3.2.10 r66523


la source
0

Après avoir essayé d'obtenir une image Acronis restaurée à partir d'une image physique d'origine pour démarrer dans Vbox - (XPSP3) - (affiche simplement le message `` ne s'est pas arrêté correctement '' ... à chaque démarrage), j'ai décidé de sélectionner l'API IO option (Paramètres - Système - Carte mère - Fonctionnalités étendues - SELECT Enable IO APIC) - ne sachant pas vraiment quelle était sa fonction dans la Vbox. Une fois que j'ai sélectionné et redémarré, la machine a pris vie et fonctionne parfaitement.

J'espère que cela t'aides.

Dave Walsh
la source
-1

Comme ma machine ne prend pas en charge APIC (l'hôte est Win 8.1 64 bits, l'invité est Oracle Linux 64 bits), je commençais à paniquer et je n'ai pas pu initialiser complètement la machine invitée.

Comme j'ai changé le nombre de CPU dans mon système invité de 2X à 1X (j'ai le total de 4X), j'ai pu charger complètement ma machine invitée.

ygivon
la source
Bien sûr, vous devez simplement activer IO APIC. Il n'y a aucune bonne raison de désactiver cette fonction.
Michael Hampton
Downvoting parce que cela ne semble pas répondre à la question ou ajouter quelque chose d'utile à la discussion.
Andrew Schulman