HeadlinesBriefing favicon HeadlinesBriefing.com

86Box executa Pentium II a 600MHz no Mac Mini M6

Hacker News •
×

Why 86Box Cares About One Core

86Box emula um PC antigo no nível de hardware. O timing da CPU, o comportamento do chipset, os barramentos ISA e PCI, os chipsets de gráficos, os dispositivos de som e os controladores de disco são todos importantes para obter o comportamento correto do software da época. Isso não garante um desempenho idêntico ao do hardware original, como os resultados do Cinebench abaixo ilustram. Franca mente, o projeto é fascinante e o esforço me deixou em admiração, mas essa precisão é cara, e quase todo o custo recai sobre uma única thread de host. A consequência prática é bastante direta aqui: a contagem de núcleos quase não importa. O que realmente importa é quão rápido um núcleo pode executar e por quanto tempo ele pode manter essa velocidade sem throttling. Felizmente para este Mac Mini, é exatamente aqui que o Silicon da Apple tem sido mais forte, e onde o M6 brilha.

Um pouco de overclock

O M6 está executando um Pentium II de 650 MHz na minha compilação personalizada do 86Box 6.0, com Cinebench 2000 e Winamp. Um ou dois subruns de áudio impediram que 650 MHz passasse, então 600 MHz permanece o resultado estável.

As Máquinas

Cada teste do 86Box usa as mesmas configurações de máquina, as mesmas imagens de disco e o mesmo hardware emulado. O conjunto de comparação é: Mac Mini M6 (CPU de 12 núcleos, 24 GB, esta unidade de revisão) Mac Mini M4 (CPU básica de 10 núcleos, 16 GB) O teste foi realizado usando uma versão ligeiramente modificada do 86Box 6.0, lançada em 31 de maio de 2026. A equipe melhorou o desempenho da emulação de CPU em hosts ARM e adicionou um recompilador just-in-time ARM64 para gráficos Voodoo. Essa segunda alteração é particularmente relevante aqui, pois a máquina com Windows 98 está executando uma Voodoo 3 emulada.

Por que 100% é o único número aceitável

86Box relata uma velocidade de emulação efetiva como uma porcentagem de sua velocidade alvo. 100% significa que o host está acompanhando o modelo de timing do emulador, então qualquer coisa menos é um problema genuíno. Não garante que um benchmark obterá exatamente a mesma pontuação que teria em uma CPU física na mesma frequência. A consistência também é mais importante que a média aqui. Mesmo quedas breves produzem artefatos audíveis porque o hardware de som é alimentado em tempo real e buffers com fome são ouvidos como quedas breves que são irritantes. Basicamente, qualquer configuração do 86Box que regularmente caia abaixo de 100% não vai parecer certa, e ter um espaço suficiente no sistema para emular confortavelmente a velocidade alvo será uma experiência muito mais estável. O resultado é que cada máquina host se torna um teto em vez de uma pontuação, e para qualquer configuração emulada dada, há um relógio máximo de CPU que o host pode manter em 100% plano. Como quase todo esse trabalho cai em uma única thread, o desempenho de thread único move esse teto significativamente, o que é todo o motivo pelo qual o M6 é interessante para isso.

Método de Teste

Para encontrar o teto, eu fiz uma compilação personalizada a partir do mesmo commit da versão 6.0 (build 9001), estendendo as tabelas de frequência em passos de 50 MHz até 800 MHz. O patch de tabela de frequência Deschutes está disponível se você quiser experimentá-lo por conta própria naquela versão marcada. Ele adiciona entradas de 500–800 MHz com temporizações de memória e cache escalonadas para reter aproximadamente as mesmas latências de acesso, e mantém o barramento AT em 8,33 MHz. O código de emulação é, caso contrário, inalterado. Ambos os Macs usaram esta compilação para os testes estendidos. Alguns podem argumentar que um Pentium II nessa velocidade não é apropriado para a época. Eu argumento que é apenas um pouco de overclock! A máquina emulada é, caso contrário, fixa em cada execução: placa-mãe Slot 1 com Pentium II (Deschutes), clock variado por execução 256 MB de memória Voodoo 3 emulada VGA com 16 MB de memória de vídeo (2 threads) Windows 98 SE Configuração de CPU do 86Box para a máquina Pentium II emulada A carga é deliberadamente um pouco desconfortável, Cinebench 2000 executando seu teste de CPU enquanto Winamp 2.76 toca um WAV PCM de 16 bits a 44.100 Hz em segundo plano. O áudio é um pouco de âncora porque é um sinal em tempo real...