A AMD está trabalhando na tecnologia de próxima geração de rastreamento híbrido de software / hardware, compartilha …

A AMD está prestes a lançar suas novas placas gráficas NAVI e, como já relatamos, essas GPUs não suportam o traçado de raios. No entanto, parece que a equipe vermelha já está trabalhando em um modelo híbrido de software / hardware para traçado de raios e compartilhou os primeiros detalhes.

De acordo com a AMD, essa abordagem híbrida abordará alguns problemas que podem ser encontrados apenas nas soluções de rastreamento de raios baseados em hardware e trará grandes melhorias de desempenho aos jogos que tiram vantagem disso.

Como a AMD detalhou:

“A abordagem híbrida (executando aceleração de função fixa para um único nó da árvore BVH e usando uma unidade de sombreador para agendar o processamento) soluciona os problemas apenas com soluções baseadas em hardware e / ou exclusivamente em software. A flexibilidade é preservada, pois a unidade de sombreador ainda pode controlar o cálculo geral e ignorar o hardware de função fixa quando necessário e ainda obter a vantagem de desempenho do hardware de função fixa. Além disso, utilizando a infraestrutura do processador de textura, eliminam-se grandes buffers para armazenamento de raios e cache BVH, normalmente necessários em uma solução de rastreamento de raios de hardware, pois os VGPRs e o cache de textura existentes podem ser usados ​​em seu lugar, o que economiza substancialmente área e complexidade de a solução de hardware “.

Vale a pena notar que a AMD patenteou esse modelo híbrido, o que significa que provavelmente o veremos sendo usado em consoles de última geração (o PS5 e o Project Scarlett suportam o traçado de raios e, como usarão placas gráficas baseadas no NAVI, temos certeza de que que esse método será muito usado).

A AMD patenteou essa abordagem híbrida como “método e sistema do acelerador de rastreamento de raios baseados em processador de textura”.

“O sistema inclui um shader, processador de textura (TP) e cache, que são interconectados. O TP inclui uma unidade de endereço de textura (TA), um processador de cache de textura (TCP), uma unidade de pipeline de filtro e um mecanismo de interseção de raios. O sombreador envia uma instrução de textura que contém dados de raios e um ponteiro para um nó de hierarquia de volumes limitados (BVH) para o TA. O TCP usa um endereço fornecido pelo TA para buscar dados do nó BVH do cache. O mecanismo de interseção de raios executa testes de interseção de tipo de nó de BVH de raio usando os dados de raio e os dados de nó de BVH. Os resultados dos testes de interseção e as indicações para a passagem de BVH são retornados ao sombreador por meio de um caminho de retorno de dados de textura. O shader analisa os resultados da interseção e as indicações para decidir como avançar para o próximo nó BVH. ”

A AMD também compartilhou mais alguns detalhes sobre este modelo híbrido que você pode ler abaixo (ou pode visitar este link que apresenta toda a patente).

“Um método e sistema de aceleração de rastreamento de raios baseados em processador de textura são descritos aqui. Uma lógica de teste de interseção e de passagem de BVH de função fixa (uma operação comum e cara em rastreadores de raios) é implementada nos processadores de textura. Isso permite que o desempenho e a eficiência de energia do traçado de raios sejam substancialmente aprimorados sem expandir os altos custos de área e esforço. Caminhos de alta largura de banda nas unidades de processador e shader de textura que são usados ​​para o processamento de textura são reutilizados para teste e passagem de BVH. Em geral, um processador de textura recebe uma instrução da unidade de sombreador que inclui dados de raios e informações de ponteiro de nó BVH. O processador de texturas busca os dados do nó BVH da memória usando, por exemplo, 16 cargas de bloco de palavra dupla (DW). O processador de texturas executa quatro interseções de caixa de raios e filhos, classificando para nós de caixa e 1 interseção de raio-triângulo para nós de triângulo. Os resultados da interseção são retornados à unidade de sombreador.

Em particular, um mecanismo de interseção de raios de função fixa é adicionado em paralelo a um pipeline de filtro de textura em um processador de textura. Isso permite que a unidade de shader emita uma instrução de textura que contém os dados do raio (origem e direção do raio) e um ponteiro para o nó BVH na árvore BVH. O processador de texturas pode buscar os dados do nó BVH da memória e fornecer os dados do nó BVH e os dados de raios para o mecanismo de interseção de raios de função fixa. O mecanismo de interseção de raios examina os dados do nó BVH e determina se é necessário executar testes de interseção de caixa de raios ou de triângulo de raios. O mecanismo de interseção de raios configura suas ALUs ou unidades de computação de acordo e passa os dados de raios e os dados do nó BVH pelas ALUs internas configuradas ou unidades de computação para calcular os resultados da interseção. Com base nos resultados do teste de interseção, uma máquina de estado determina como a unidade shader deve avançar sua pilha interna (pilha transversal) e atravessar a árvore BVH. A máquina de estado pode ser de função fixa ou programável. Os resultados dos testes de interseção e / ou uma lista de ponteiros de nós que precisam ser percorridos em seguida (na ordem em que precisam ser percorridos) são retornados à unidade de sombreador usando o caminho de retorno de dados de textura. A unidade de sombreador revisa os resultados da interseção e as indicações recebidas para decidir como passar para o próximo nó na árvore BVH. ”

Artigos Relacionados

Back to top button