HeadlinesBriefing favicon HeadlinesBriefing.com

86Box fait tourner un Pentium II à 600 MHz sur Mac Mini M6

Hacker News •
×

Why 86Box Cares About One Core

86Box émule un vieux PC au niveau matériel. Le timing du CPU, le comportement du chipset, les bus ISA et PCI, les chipsets graphiques, les périphériques son et les contrôleurs de disque sont tous importants pour obtenir un bon comportement des logiciels d'époque. Cela ne garantit pas une performance identique à celle du matériel d'origine, comme le montrent les résultats Cinebench ci-dessous. Franchement, le projet est fascinant et l'effort m'a laissé dans l'admiration, mais cette précision est coûteuse, et presque tout le coût repose sur un seul fil d'exécution hôte. La conséquence pratique est assez simple ici : le nombre de cœurs n'a presque pas d'importance. Ce qui compte vraiment, c'est la vitesse à laquelle un noyau peut s'exécuter et pendant combien de temps il peut maintenir cette vitesse sans throttling. Heureusement pour ce Mac Mini, c'est exactement là où le silicium d'Apple a été le plus fort, et où le M6 brille.

Un léger overclock

Le M6 fait tourner un Pentium II à 650 MHz dans ma version personnalisée de 86Box 6.0, avec Cinebench 2000 et Winamp. Un ou deux underruns audio ont empêché 650 MHz de passer, donc 600 MHz reste le résultat stable.

Les machines

Chaque test 86Box utilise les mêmes configurations de machine, les mêmes images de disque et le même matériel émulé. Le jeu de comparaison est : Mac Mini M6 (CPU 12 cœurs, 24 Go, cette unité de test) Mac Mini M4 (CPU de base 10 cœurs, 16 Go) Les tests ont été effectués avec une version légèrement modifiée de 86Box 6.0, publiée le 31 mai 2026. L'équipe a amélioré les performances de l'émulation CPU sur les hôtes ARM et ajouté un recompilateur juste-à-temps ARM64 pour les graphismes Voodoo. Cette deuxième modification est particulièrement pertinente ici, puisque la machine Windows 98 exécute une Voodoo 3 émulée.

Pourquoi 100 % est le seul nombre acceptable

86Box rapporte une vitesse d'émulation efficace sous forme de pourcentage de sa vitesse cible. 100 % signifie que l'hôte suit le modèle de timing de l'émulateur, donc tout ce qui est inférieur est un problème réel. Cela ne garantit pas qu'un benchmark obtiendra exactement le même score qu'il aurait sur un CPU physique à la même fréquence. Ici, la cohérence compte plus que la moyenne. Même de brèves baisses produisent des artefacts audibles car le matériel sonore est alimenté en temps réel et les tampons affamés sont entendus comme de brefs décrochages qui sont irritants. Fondamentalement, toute configuration 86Box qui tombe régulièrement en dessous de 100 % ne se sentira pas bien, et disposer d'une marge suffisante sur le système pour émuler confortablement la vitesse cible sera une expérience beaucoup plus stable. Le résultat est que chaque machine hôte devient un plafond plutôt qu'un score, et pour toute configuration émulée donnée, il y a une fréquence maximale de CPU que l'hôte peut maintenir à un 100 % plat. Puisque presque tout ce travail tombe sur un seul fil, les performances monofil font monter ce plafond considérablement, ce qui est toute la raison pour laquelle le M6 est intéressant dans ce contexte.

Méthode de test

Pour trouver ce plafond, j'ai créé une version personnalisée à partir du même commit que la version 6.0 (build 9001), en étendant les tables de fréquence par pas de 50 MHz jusqu'à 800 MHz. Le patch de table de fréquence Deschutes est disponible si vous voulez l'essayer vous-même par rapport à cette version taguée. Il ajoute des entrées de 500–800 MHz avec des temporisations de mémoire et de cache échelonnées pour conserver approximativement les mêmes latences d'accès, et maintient le bus AT à 8,33 MHz. Le code d'émulation est autrement inchangé. Les deux Mac ont utilisé cette version pour les tests étendus. Certains pourraient soutenir qu'un Pentium II à ces fréquences n'est pas adapté à l'époque. Je soutiens que ce n'est qu'un léger overclock ! La machine émulée est autrement fixe à chaque exécution : carte mère Slot 1 avec Pentium II (Deschutes), horloge variée par exécution 256 Mo de mémoire Voodoo 3 émulée VGA avec 16 Mo de mémoire vidéo (2 threads) Windows 98 SE Configuration CPU de 86Box pour la machine Pentium II émulée La charge est délibérément un peu maladroite, Cinebench 2000 exécute son test CPU tandis que Winamp 2.76 joue en arrière-plan un fichier WAV PCM 16 bits à 44 100 Hz. L'audio est un peu une ancre puisqu'il s'agit d'un signal en temps réel...