Direct X12: Separando os fatos da ficção

#Notícia Publicado por WrodriX, em .

IMAGEaHR0cDovL3d3dy5kZXZlbG9wZXItdGVjaC5jb20vbWVkaWEvaW1nL25ld3MvZGlyZWN0eF8xMl9oZXJvLkpQRw==

Durante a GDC do ano passado, a Microsoft revelou que está trabalhando em um sucessor para DirectX 11. Pela primeira vez, a empresa está trabalhando com os diretamente com os próprios fabricantes de chips para espremer cada gota de desempenho de seu hardware. Desde então, tem havido muita especulação sobre suas capacidades de que esperamos esclarecer neste artigo.

Uma demonstração na conferência SIGGRAPH da Intel em um Tablet Surface Pro 3 exibia grandes melhorias ao alternar entre DirectX 11 e DirectX 12 ...

IMAGEaHR0cDovL3d3dy5kZXZlbG9wZXItdGVjaC5jb20vbWVkaWEvMTlmcHMuanBn

IMAGEaHR0cDovL3d3dy5kZXZlbG9wZXItdGVjaC5jb20vbWVkaWEvMzNmcHMuanBn

Mudando rapidamente entre as duas APIs, mostra que o DirectX 11 com uma taxa de quadros de cerca de 19 quadros por segundo, enquanto que o DirectX 12 causou um aumento de cerca de 60% o desempenho chegando a 33 quadros por segundo. Pouco disto tem a ver com o acesso de nível inferior ao hardware, talvez um quadro ou dois, mas sim algumas otimizações graves na forma como o excesso de recursos pode ser reduzida através de técnicas avançadas.

DirectX 12 permite aos desenvolvedores mais controle sobre a GPU e como ela é usada, removendo as conjecturas historicamente tomadas por drivers, software e OS, quanto à forma como a memória, é sincronizado e gerenciado. Tarefas vinculadas à CPU são eficientemente distribuídos pelos vários núcleos para aumentar o desempenho, enquanto que as versões anteriores iria pregar um único núcleo de cada vez.

CPUs não aumentaram no desempenho em qualquer lugar, no entanto as GPUs conseguiram tirar proveito dos vários núcleos, e isso é importante. Este é o lugar onde DirectX 12 brilha, como você pode ver nos slides vazados abaixo mostrando a melhor distribuição de tarefas...

IMAGEaHR0cDovL3d3dy5kZXZlbG9wZXItdGVjaC5jb20vbWVkaWEvdGhyZWFkXzExLmpwZw==

IMAGEaHR0cDovL3d3dy5kZXZlbG9wZXItdGVjaC5jb20vbWVkaWEvdGhyZWFkXzEyLmpwZw==

DirectX 12 vai oferecer grandes melhorias em áreas uso intensivo da CPU de jogos, como vimos a partir de demonstração da Intel. O lado GPU é um pouco mais desconhecido até o momento, e os benefícios poderia estar em um cenário de específico, ainda não sabemos o quanto irá melhorar, mas com certeza muito.

Matt Sandy, Gerente de Programa para a equipe Direct3D da Microsoft, disse que a API "introduz um conjunto de novas funcionalidades de pipeline de renderização, que irá melhorar dramaticamente a eficiência de algoritmos como a transparência independente de ordem, detecção de colisão, e geometria de corte."

A demonstração de 'Star Swarm' utiliza apenas alguns dos recursos de renderização de pipelines e já mostra um aumento dramático de desempenho. De fato, alguns testes de GPU de AnandTech mostram um pico 5x mais o aumento no desempenho em alguns cenários ...

AMD

Radeon R9 290X (DX11) 8.3fps

Radeon R9 290X (DX12) 42.9fps

Nvidia

GeForce GTX980 (DX11) 26.7fps

GeForce GTX980 (DX12) 66.8fps

Placas gráficas Aqui temos comparação de ambos Nvidia e AMD para mostrar as melhorias feitas para o desempenho das placas de ambos os fabricantes. DirectX 12 está ajudando os desenvolvedores a obter o melhor de cada GPU, e parece pronto para fazer umaonte de Dual GPU entre elas.

Tom, um respeitável engenheiro de Hardware está relatando que o DirectX 12 vai permitir computadores com duas placas gráficas, de diferentes fabricantes. A trabalhar juntos pela primeira vez, girando o subsistema gráfico inteiras em "uma única placa de vídeo, mais poderoso assim, os usuários têm a robustez de executar uma única GPU, mas com várias placas gráficas ".

O hardware de Tom observa que a API inclui um "método de quadro de renderização chamada SFR, que está para renderização de quadros Split."

Ele explica: "Os desenvolvedores serão capazes de manualmente, ou automaticamente, dividir os dados de textura e de geometria entre as GPUs, e todas as GPUs pode, então, trabalhar juntos para trabalhar em cada quadro Cada GPU irá trabalhar em uma parte específica do. tela, com o número de porções, sendo equivalente ao número de GPUs instalado. "

Então, o que acontece com o Xbox One? Vai de fato reduzir o afunilamento de CPU e poderemos ver ai o maior avanço, como a CPU será capaz de calcular muito mais rápido, enquanto o GPU realiza o processamento real.

Este multi-threading permite que mais processamento para ser tratado da CPU, que de outra forma poderia ter colocado mais pressão sobre a GPU. Ele irá, pelo menos, levar a uma maior taxa de quadros estáveis, mas poderia ajudar a alcançar resoluções mais altas, se o aproveitamento da capacidade DirectX 12 de controlar a forma como o GPU é usado para cenas específicas e os novos recursos pipeline de renderização são tão sólidas como eles aparecem.

Aos fãs de Xbox, sem dúvida melhorias significativas acontecerão, mas a próxima iteração do OpenGL, sem dúvida irá oferecer melhorias de desempenho semelhantes ao PS4. Nós vamos ter que esperar e ver os resultados reais de ambos na GDC deste ano, mas vai ser emocionante ver os resultados destes avanços significativos.

Waldir Duarte
Waldir Duarte #WrodriX

Fora PT

, Limeira
Publicações em Destaque