Arquitectura Pascal ainda não resolveu os problemas com a computação assincrona.

A arquitectura Polaris e a Pascal entrarão em disputa pelo mercado de placas gráficas muito brevemente. A Nvidia já apresentou a sua GTX 1080 com performances muito interessantes, mas da AMD não vimos ainda grande coisa. No entanto sabemos já que a arquitectura Pascal ainda não resolveu os seus problemas com o DirectX 12 e com a computação assincrona.

As placas de arquitetura Maxwell da Nvidia possuiaum todas um sério problema. As placas eram feitas para dependerem tremendamente de optimizações a nível de código e de drivers, algo que não é possível ser feito da mesma forma para o DirectX 12. Como consequência, as placas Nvidia possuíam performances tremendas no DirectX 11, perdendo um pouco com o DirectX 12.

Mas mais ainda, a computação assíncrona era algo que basicamente não funcionava nas placas Nvidia, pois apesar de a mesma existir, em vez de ganhos de performance, haviam perdas de performance.

As placas GCN da AMD eram exatamente o oposto. as suas placas não dependiam de optimizações nas drivers ou no software, mas sim da exploração do seu hardware pelo API. Como consequência as placas possuiam performances mais fracas no DirectX 11, mas apresentavam ganhos enormes com a passagem para o DirectX 12.

A computação assíncrona era a joia da coroa, oferecendo capacidade de computação genérica que quando aplicada ao cálculo gráfico oferecia ganhos significativos de performance!



Mas e agora com as novas arquiteturas Pascal e Polaris (GCN 4.0), como se vão debater as placas da Nvidia e AMD?

A AMD promete melhorias de performance e de consumo energético, bem como promete melhorias na computação assincrona. Já a Nvidia promete que a computação assíncrona passará a funcionar convenientemente, prometendo igualmente aumentos de performance.

Falta saber até que ponto as marcas falam a verdade! E quanto a isso o que sabemos até ao momento?

A AMD mostrou algumas placas Polaris em funcionamento. Não eram topos de gama, mas sim modelos experimentais, e o que se viu mostrava que a empresa pretende cumprir com o prometido. As placas apresentaram excelentes performances (algo apenas normal a cada geração) e consumos reduzidos. Foram igualmente dadas a conhecer algumas melhorias na computação assíncrona que se tornará agora ainda mais eficaz.

A Nvidia nesse aspecto está mais à frente, tendo mesmo já lançado uma placa com a arquitetura Pascal, a GTX 1080. Trata-se de um modelo topo de gama, e que mostrou performances impressionantes, algo que, como já referido no caso anterior, era apenas expectável dado ser uma nova geração.

No entanto, fica a dúvida. E relativamente à computação assíncrona? A Nvidia realmente resolveu o problema, ou as suas novas placas correm o sério risco de ficar para trás com a implementação cada vez mais comum desta tecnologia?



Eis o que a Nvidia anunciou!

Nvidia-Pascal-GTX-1080-Dynamic-Load-Balancing-async-

Nvidia-Pascal-GTX-1080-Preemption-Async

Para quem não sabe, a computação assincrona implica a capacidade de a placa usar os seus pipelines para cálculos genéricos paralelos ao processamento gráfico. Basicamente a placa pode calcular outras situações como áudio, física, ou mesmo grafismo adicional ao mesmo tempo que está a decorrer o processamento gráfico normal, aproveitando os tempos mortos dos componentes enquanto estes esperam por resultados de cálculos para o grafismo. Basicamente a computação assíncrona implica a utilização em pleno da capacidade de cálculo das placas, com resultados que dependem da qualidade de implementação da mesma.

Ora a arquitetura Maxwell possuía tremendas limitações, como por exemplo, e entre outras, a obrigação de trabalhos paralelos terem de terminar em simultâneo, uma vez que não havia forma de, dinamicamente a placa atribuir novos trabalhos, o que limitava o seu uso.



Mas como vemos pela imagem anterior, a Pascal apresenta melhorias que permitem um melhor controlo das tarefas. Há agora um controlo dinâmico dos trabalhos, resolvendo o problema referido anteriormente. Para isso foi acrescentado um serviço  de preemptividade.

Em computação, preemptividade é o ato de interromper temporariamente uma tarefa em curso com a intenção de retomar a tarefa depois. Tal mudança é conhecida como uma mudança de contexto!

 

Estas situações são efetivamente melhorias, mas face ao oferecido pela AMD, elas apenas parecem endereçar um dos problemas das suas placas. As mesmas passam a conseguir efetivamente realizar computação assíncrona de forma conveniente, mas as alterações não são profundas ao ponto de a mesma passar a ser verdadeiramente eficaz, e ao nível das AMD.

Mas para confirmarmos isso, nada como testes reais com software real. Assim vamos verificar os resultados com o jogo Ashes of Singularity, um jogo que suporta DirectX 11, DirectX 12, e computação assíncrona, que pode ser ligada ou desligada. As placas em causa serão a Nvidia GTX 1080 com arquitectura Pascal, a GTX 980 Ti com arquitetura Maxwell, e a Fury X da AMD com arquitetura GCN 3.



Antes de vermos imagens convêm referir que com o DirectX 11 as placas apresentavam os seguintes resultados a 4K:

Testes DirectX 11

Nvidia GTX 1080 (Pascal) – 51.4 FPS
AMD FuryX (GCN 3) – 39.3 FPS
NVIDIA 980Ti (Maxwell) – 36.9 FPS

Como vemos a GTX 1080 mostra efetivamente um salto geracional a nível de performances.

Mas passemos para o DirectX 12 (sem computação assíncrona) e vejamos os resultados!



Testes DirectX 12

Nvidia GTX 1080 (Pascal) – 50.2 FPS
AMD FuryX (GCN 3) – 42.2 FPS
NVIDIA 980Ti (Maxwell) – 34.6 FPS

E agora com computação assíncrona ligada

Testes DirectX 12 c/ computação assíncrona

Nvidia GTX 1080 (Pascal) – 50.1 FPS
AMD FuryX (GCN 3) – 46.3 FPS
NVIDIA 980Ti (Maxwell) – 34.1 FPS



Como vemos, a cada novidade introduzida as Nvidia perderam, a AMD ganhou. Eis uma tabela com estes valores e as variações:

GTX-1080-Ashes-Of-The-Singularity-DirectX-12-Async-Compute-Performance-4K-Extreme

DX12+assync-gains

Basicamente a arquitectura Pascal consegue aguentar-se melhor que a Maxwell,mas longe de apresentar os ganhos da AMD. E recorde-se que aqui ainda não temos as Polaris, mas sim a FuryX com a antiga GCN 3 a aguentar-se muito bem face à GTX 1080.

A situação da GTX 1080 melhora com menos resolução onde a placa chega a apresentar ganhos. Mesmo assim, as AMD apresentam ganhos ainda maiores nesses casos.



DX12+assync-ganhos-3k

Por aqui vemos que a AMD aparenta ter uma possibilidade de virar a mesa com a sua arquitetura Polaris. E isso justifica o motivo pelo qual nesta GTX 1080 a Nvidia, ao contrário do que vem vindo a ser habitual, não pediu couro e cabelo pela mesma.

 



error: Conteúdo protegido