A Microsoft anunciou um novo recurso de otimização de GPU DirectX12 em conjunto com Resizable-BAR, chamado Pilhas de upload de GPU (abre em nova aba), que permite que a CPU tenha acesso direto e simultâneo à memória da GPU. Isso pode aumentar o desempenho em títulos DX12 e diminuir a utilização da RAM do sistema, pois o recurso evita a necessidade de copiar dados da CPU para a GPU. O novo recurso já está disponível no Agility SDK.
Não sabemos as implicações reais desse recurso, mas as vantagens de desempenho podem ser significativas. Os tamanhos de memória da placa gráfica e o consumo de VRAM de videogame estão ficando cada vez maiores a cada ano. Como resultado, a CPU precisa mover cada vez mais dados entre ela e a GPU.
Com esse recurso, a utilização de RAM e CPU de um jogo pode diminuir consideravelmente devido apenas a uma redução nas transferências de dados. Isso ocorre porque a CPU não precisa mais manter cópias de dados na RAM do sistema e na VRAM da GPU para interagir com ela. Outro bônus é que a memória de vídeo da GPU é muito rápida hoje em dia, portanto não deve haver penalidades de latência por deixar os dados apenas na GPU. Na verdade, provavelmente haverá uma melhoria na latência com tempos de acesso à CPU em GPUs de ponta com memória de vídeo de alta velocidade.
Para os jogadores, o único requisito necessário é o suporte à barra redimensionável ou à memória de acesso inteligente na CPU e na GPU. A barra redimensionável é a base para GPU Upload Heaps, pois o recurso permite que o Windows gerencie o GPU VRAM diretamente.
Para desenvolvedores, o recurso já é suportado pelos drivers Nvidia, Intel e AMD. Por exemplo, ele já está incluído nos mais recentes drivers Game Ready e Studio da Nvidia (versão 531.41 ou mais recente) e GPUs Intel série A/Xe (com driver 31.0.101.4255 ou mais recente). Para GPUs AMD, os desenvolvedores devem consultar seu gerente de aliança AMD para obter um driver compatível.
O recurso acabou de sair da Microsoft, então não espere que seja implementado em jogos tão cedo. Em vez disso, os desenvolvedores precisarão de tempo para ver se isso fornecerá ou não uma vantagem de desempenho significativa o suficiente para valer a pena.