E foi lançado o FEX-Emu 2212 com suporte a GPUs Radeon mais antigas. Confira as novidades dessa atualização 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 2212.
Novidades do FEX-Emu 2212
FEX-Emu é o projeto de software de código aberto que trabalha na emulação de software x86/x86_64 em AArch64.
O FEX-Emu é uma das principais opções para executar binários x86 no Arm de 64 bits e amadureceu o suficiente para permitir que jogos Linux e títulos do Steam Play sejam executados no Arm.
E o FEX 2212 foi lançado como a mais nova atualização brilhante deste software promissor.
O FEX 2212 é outro passo significativo para este emulador, permitindo um impressionante suporte binário x86/x86_64 em sistemas Arm Linux de 64 bits.
Com o FEX 2212, há suporte para GPUs Radeon mais antigas, o início do suporte de emulação AVX, suporte de emulação SGDT para obter jogos que dependem da proteção contra cópia Denuvo para trabalhar um pouco mais adiante e vários outros aprimoramentos.
O FEX 2212 começou a trabalhar na emulação de Advanced Vector Extensions (AVX) e, para isso, conta com o processador Arm que suporta operações SVE de 256 bits.
Embora a emulação AVX seja importante, o único processador Arm atualmente com esse suporte SVE de 256 bits é o Neoverse-V1. Portanto, essa emulação AVX é mais avançada para futuros chips Arm, onde o suporte SVE de 256 bits se torna mais difundido.
No FEX-Emu 2212, a emulação AVX também é apenas uma implementação parcial neste ponto.
Para melhorar ainda mais a perspectiva FEX para jogos, a versão 2212 adiciona suporte para arquivos de configuração baseados em SteamID. O FEX 2212 também implementa suporte à instrução SGDT.
Por sua vez, isso permite que os jogos que dependem do controverso software Denuvo “vão um pouco mais longe antes de travarem terrivelmente”.
Além disso, melhorar o FEX para experiência de jogo não está mais anunciando a instrução PCLMUL se a extensão criptográfica não for suportada no host. Isso corrige o Steam em execução no Raspberry Pi, caso contrário, ele travaria ao acessar o OpenSSL.
As GPUs ATI/AMD Radeon mais antigas agora devem funcionar com FEX 2212 para as placas Arm existentes com slots PCI Express.
O FEX 2212 também melhorou seu código de emulação ioctl que, por sua vez, permite que o driver Radeon DRM funcione com este emulador.
O uso do driver de kernel AMDGPU mais recente para placas gráficas GCN 1.2+ (ou GCN 1.0/1.1 experimentalmente) já é compatível, enquanto para pré-GCN 1.2 (ou pré-GCN se estiver usando o suporte experimental AMDGPU 1.0/1.1), o driver Radeon DRM agora é compatível com o uso de placas gráficas mais antigas.
O FEX 2212 agora também gera operações IR de acesso de registro diretamente para uma redução de cerca de 12% no tempo de compilação JIT e torna este emulador mais responsivo.
O FEX 2212 também traz otimizações para reduzir interrupções, E/S de arquivo aprimorada para aplicativos, tempo de inicialização mais rápido e outras melhorias.
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.