Valve FEX: pré-cache no Steam vai acabar com o engasgo dos jogos no Arm

A Valve quer resolver um dos problemas mais irritantes de rodar jogos de Windows em chips Arm: o engasgo causado pela tradução de código no meio da partida. Em entrevista ao PCWorld, o engenheiro de software da Valve Pierre-Loup Griffais revelou que a empresa planeja integrar o cache de código do FEX ao recurso de Pré-Cache do Steam, para que o código traduzido já esteja pronto antes mesmo da primeira execução do jogo.

O que é o FEX e como ele funciona

O FEX é a peça central do esforço da Valve para libertar o Steam dos PCs tradicionais: a maioria dos jogos de Windows foi criada para processadores x86, da AMD e da Intel, enquanto os chips Arm falam outra linguagem de instruções. O FEX traduz o código x86 para instruções Arm enquanto o jogo roda. Quando combinado ao Proton ARM, camada de compatibilidade da Valve, o FEX traduz apenas o código de CPU do aplicativo: o sistema operacional e os drivers gráficos rodam de forma nativa.

“FEX code caching is vital for frame time consistency”, afirmou Griffais ao PCWorld. “In the future, it will also be integrated with Steam’s Pre-Caching feature, so that cached code is available even prior to the first local run of an application.” Em tradução livre: o cache de código do FEX é vital para a consistência do tempo de quadro e, no futuro, será integrado ao Pré-Cache do Steam.

O cache já existe — e o que ainda falta

O sistema de cache já existe: em setembro, os desenvolvedores do FEX lançaram um cache JIT persistente em disco, que preserva o código traduzido entre sessões, e a Valve ativou o recurso no Proton Experimental para Arm, com potencial de melhora nos 1% lows — os quadros mais lentos — em execuções repetidas. A atualização de outubro acrescentou limite configurável de cache, com padrão de 1 GB, limpeza de caches desatualizados e um buffer de memória opcional para código acessado com frequência.

Há, porém, limites claros. Não há cronograma anunciado nem dados públicos de desempenho para a integração com o Pré-Cache, que ainda não foi demonstrada publicamente. Griffais também alertou que as GPUs Arm podem diferir bastante das GPUs de desktop para as quais os jogos foram feitos, o que pode custar desempenho em recursos gráficos mais novos, e que a tradução de CPU pode afetar bateria e consumo de energia. Também não há testes independentes abrangentes sobre o ganho do novo cache.

Steam Frame e a corrida contra o engasgo

O movimento se conecta ao Steam Frame, o headset standalone da Valve com chip Snapdragon 8 Gen 3, que depende do FEX para rodar o catálogo de jogos x86 do Steam. A Valve já havia mostrado força no segmento: no levantamento de outubro da Steam, o Steam Frame atingiu 4,13% e entrou no top 6 de VR. A iniciativa também acompanha um esforço mais amplo da indústria contra engasgos: Microsoft e Nvidia trabalham no Advanced Shader Delivery, e a Intel, em um serviço de distribuição de shaders — mas esses sistemas tratam de shaders de GPU, enquanto o FEX cuida do código de CPU.

Crédito da imagem: PCWorld / Foundry — foto de Pierre-Loup Griffais, da Valve, com Adam Patrick Murray, do PCWorld.

Fontes: PCWorld; GameGPU. Matéria relacionada no Geekiki: Steam Frame Steam Survey: ultrapassa 4% e já supera o PSVR2.

Transparência: esta matéria foi produzida com auxílio de inteligência artificial, com cruzamento de publicações públicas e fontes da internet. As informações sobre planos futuros são declarações da Valve e ainda não têm cronograma confirmado. Consulte as fontes originais para mais detalhes.

Muse