A Microsoft lançou a tecnologia Work Graphs, que faz parte da versão mais recente do DirectX 12. Essa tecnologia irá aliviar a CPU ao mover o agendamento de tarefas para a placa de vídeo, o que teoricamente dará um aumento de desempenho em sistemas com CPUs de baixo consumo de energia.
Já a imagem final na tela é formada pelos esforços conjuntos da CPU e GPU, mas às vezes a CPU não tem tempo de preparar tarefas para cálculo na GPU, por isso a placa de vídeo fica ociosa, aguardando novas instruções. A tecnologia Work Graphs foi projetada para tornar a GPU mais autônoma para que ela possa submeter tarefas de trabalho a si mesma e reduzir o número de chamadas para a CPU.
Com Work Graphs, os desenvolvedores de jogos podem otimizar pipelines de produtor para consumidor que movem com eficiência cargas de trabalho pesadas da CPU para a GPU. Neste sistema, uma thread rodando na GPU (produtor) pode registrar uma solicitação para realizar outro trabalho (consumidor). O trabalho será agendado pela GPU assim que houver espaço livre, e esse thread também poderá se tornar um consumidor se necessário. Simplificando, em vez de esperar a conclusão de cada etapa do cálculo, a CPU pode criar uma sequência de tarefas que a GPU executará sem ter que entrar em contato com a CPU todas as vezes.
Espera-se que a interação entre os processadores central e gráfico seja ainda mais acelerada graças à função GPU Upload Heaps do Shader Model 6.8 – permite que CPU e GPU troquem dados muito mais rápido, devido à ausência da necessidade de transferência de dados de vídeo memória para o processador central através do barramento PCI. Este recurso usa a tecnologia ResizableBAR, que permite à CPU gravar dados na memória de vídeo com atraso mínimo.
Work Graphs e Shader Model 6.8 agora estão disponíveis para desenvolvedores de jogos por meio do Agility SDK 1.613. Este SDK já pode ser usado com os drivers AMD e NVIDIA mais recentes. Work Graphs é compatível com GPUs NVIDIA Ampere e Ada Lovelace (GeForce RTX 3000 e RTX 4000) com driver versão 551.76 ou posterior instalado. Quanto à AMD, o Work Graphs atualmente só funciona em GPUs com arquitetura RDNA3 (placas de vídeo Radeon RX 7000). Drivers atualizados que suportam o novo SDK da Intel ainda não foram lançados.
Vale ressaltar que atualizar o driver de vídeo por si só não melhorará o desempenho – a tecnologia Work Graphs deve ser implementada nos jogos, o que significa que os desenvolvedores de jogos devem apoiar a iniciativa.
A NVIDIA também publicou uma demonstração técnica para avaliar os gráficos de trabalho. O vídeo acima mostra seu trabalho – por volta de 1:20 você pode ver um aumento notável na produtividade devido à nova tecnologia. O teste utilizou placas de vídeo GeForce RTX 4090 e o processador Ryzen 7 7700X.