Ray-Tracing Vulkan com RADV em GPUs AMD mais antigas? É possível, graças a uma solicitação de mesclagem para habilitar esse recurso.
Fundido recentemente para o Mesa 21.3 estava o Ray-Tracing (rastreio de raios) Vulkan de código aberto para GPUs AMD RDNA2/RX 6000 da série com o driver RADV.
Aberto agora, está um pedido de mesclagem que forneceria Ray-Tracing Vulkan com RADV para GPUs pré-RDNA2 neste driver voltando para os gostos de Polaris, desde que o desempenho seja outra história.
Ray-Tracing Vulkan com RADV em GPUs AMD mais antigas? É possível!
Joshua Ashton, conhecido por seu trabalho em DXVK e outros esforços Direct3D-on-Vulkan para a Valve, abriu a solicitação de mesclagem para habilitar o Ray-Tracing RADV Vulkan para gerações mais antigas de GPUs AMD.
Ashton observou com o MR, “Este PR implementa traçado de raio para gerações anteriores (Navi, Vega, Polaris, etc.) Ele faz isso emulando as instruções de interseção bvh AMD no software. No momento, isso passa CTS da mesma forma que em RDNA 2 cartões.”
Portanto, ele está funcionando em GPUs mais antigas, tem a mesma taxa de aprovação do pacote de testes de conformidade (CTS) que o suporte RDNA2 adequado e está contando com suporte baseado em software/shader e, portanto, o desempenho provavelmente será prejudicado.
Como está agora mesmo para o Ray-Tracing RDNA2 no RADV, o desempenho está longe de ser bom e precisará de algumas otimizações antes de ser comparável ao driver proprietário.
Ashton vinha experimentando por vários meses com esse Ray-Tracing Vulkan com RADV em GPUs AMD mais antigas. A AMD não oferece suporte a nenhum traçado de raio Vulkan (ou DirectX DXR) com suas GPUs pré-RDNA2 em seus drivers oficiais.
A AMD também não forneceu nenhum suporte de driver de código aberto oficial em todo o Vulkan ray-tracing em seu driver de referência AMDVLK.
A solicitação de mesclagem é de apenas 300 linhas de novo código para este suporte de Ray-Tracing baseado em software.
Além de acessar esse código, a variável de ambiente RADV_PERFTEST=rt
também é necessária. Esperançosamente, este MR pousará a tempo para o Mesa 21.3, impedindo que quaisquer objeções sejam levantadas.