E foi lançado o FEX-Emu 2303 com melhorias para jogos Linux x86_64 no ARM64. Confira as novidades e veja como instalar no Linux.
O FEX permite que você execute binários x86 e x86-64 em um host AArch64, semelhante ao qemu-user e box86.
Ele tem suporte nativo para uma sobreposição de rootfs, então você não precisa fazer chroot, assim como alguns thunklibs para que ele possa encaminhar coisas como GL para o host.
O FEX apresenta uma interface Linux 5.0 para o convidado e suporta AArch64 e x86-64 como hosts. FEX é muito trabalho em andamento, então espere que as coisas mudem.
O FEX foi testado para compilar e executar em hardware ARMv8.0, ARMv8.1+ e x86-64 (AVX ou mais recente). ARMv7 e hardware x86 mais antigo não funcionarão. O uso esperado do sistema operacional é Linux. O FEX foi testado com o Ubuntu 20.04, 20.10 e 21.04. Também Arch Linux.
No último fim de semana, foi lançado o Box86 0.2.6 e Box64 0.1.8 para desfrutar de binários x86 e x86_64 Linux em Arm de 64 bits e outras arquiteturas de CPU.
Agora, o projeto lançou sua mais nova atualização de recursos, o FEX-Emu 2303.
Novidades do FEX-Emu 2303
O FEX-Emu tem desfrutado de grande sucesso e popularidade como um emulador rápido de modo de usuário x86/x86_64 para ARM64. Há um número crescente de jogos modernos do Windows agora rodando no Arm de 64 bits por meio do Steam Play no topo do FEX.
Com o FEX 2303, há mais melhorias a reboque tanto para jogos quanto para outras áreas, como o trabalho em andamento para emular instruções AVX no Arm.
Alguns dos destaques do FEX 2303 incluem:
- Mais otimizações de inicialização em torno do Proton e do Vaso de Pressão da Valve. Deste trabalho para melhorar os jogos ARM64 Steam Linux:
“Com algumas otimizações implementadas, conseguimos reduzir um segundo do tempo de inicialização. Reduzindo a execução de 9,7 segundos para 8,7 segundos. Ou no caso de execução em um Apple M1, a execução agora caiu para 7 segundos. Quase todo esse tempo de melhoria vem de empacotamento syscall mais rápido e o tempo restante da CPU é código JIT e execução. Ele só ficará mais rápido no futuro!”
- Depois de encontrar um código de máquina anti-virtual de remessa de jogo para fazer com que o título se recuse a ser executado se estiver em uma VM, a FEX adicionou uma opção para ocultar o bit CPUID do hipervisor. O FEX não é uma máquina virtual, mas, por padrão, defina o bit CPUID para que o software possa consultar as informações específicas do CPUID do FEX, se desejado.
- Otimizando a instrução REP STOS para um memset embutido. Essa mudança mostrou uma melhoria de desempenho de 11%.
- Melhorias no quadro de sinal.
- Trabalho contínuo para habilitar o suporte de emulação AVX no topo do Arm SVE2 de 256 bits.
Para saber mais sobre essa versão do FEX-Emu, acesse a nota de lançamento.
Como instalar ou atualizar o FEX-Emu
Para instalar a versão mais recente do FEX-Emu nas principais distribuições Linux, faça o seguinte:
Para Ubuntu, execute o seguinte comando no terminal para instalar o FEX por meio de um PPA.
curl --silent https://raw.githubusercontent.com/FEX-Emu/FEX/main/Scripts/InstallFEX.py --output /tmp/InstallFEX.py && python3 /tmp/InstallFEX.py && rm /tmp/InstallFEX.py
Este comando orientará você na instalação do FEX por meio de um PPA e no download de um RootFS para uso com o FEX.
O Ubuntu PPA é atualizado com os lançamentos mensais.
Para todos os outras distribuições linux, por favor, acesse o Building FEX.