Isso foi feito reescrevendo o
Virtual Memory Manager (VMM)do Yuzu, o componente de software que aloca, mapeia e libera a memória que os jogos do
Switch usam. Esta é uma parte do emulador que usa a Emulação de Alto Nível (HLE) para replicar a funcionalidade do sistema operacional "
Horizon" do
Switch. Anteriormente, yuzu usou uma abordagem bastante simplificada para o VMM, baseada no
Emulador Citra 3DS. A abordagem da Citra nos serviu bem para fazer o emulador funcionar, mas foi realmente projetado para um sistema muito mais simples que não se escoe para as necessidades do
Switch.
Em suma, essa implementação antiga alocaria arbitrariamente e mapearia a memória
do host (seu PC) em tempo real, sem respeitar o layout de memória
do convidado (
Nintendo Switch). Isso pode resultar em alocações de memória de host em fuga que nunca foram realmente possíveis em um
Switch real.
Com a nova implementação do VMM, agora implementamos e respeitamos com mais precisão o layout de memória do
Switch. Como resultado, a emulação não deve, em geral, exceder os 4GB de RAM dedicado do
Switch, com exceção de jogos que comem memória para outros fins (por exemplo, GPU, áudio e emulação do SO ainda podem empurrar o emulador para além disso). Dito isto, agora você pode esperar que os jogos usem de 2GB a 4GB de RAM em média, em vez de dobrar isso!