FERRAMENTAS LINUX: Blumenkrantz otimizou a fusão de envios do Mesa Vulkan - alguns casos de teste melhoram 1000%+

segunda-feira, 25 de setembro de 2023

Blumenkrantz otimizou a fusão de envios do Mesa Vulkan - alguns casos de teste melhoram 1000%+

 

Mike Blumenkrantz, membro da equipe de drivers gráficos Linux da Valve, mais uma vez demonstrou sua habilidade ao otimizar o código do driver Mesa Vulkan, trazendo benefícios significativos para vários fornecedores de drivers e hardware.

Blumenkrantz concentrou-se recentemente na otimização do tratamento de filas Vulkan pelo Mesa e identificou uma área onde havia margem para melhorias substanciais. Ele observou que a API Vulkan permite que várias submissões de buffer de comando ocorram simultaneamente, mas o vkQueueSubmit do Mesa atualmente divide essas submissões em lotes individuais, em vez de enviá-las todas de uma só vez como uma matriz única. Esse método de submissão individual resulta em maior sobrecarga e alocação de memória adicional.

Ao reformular o código de envio de filas Vulkan, adicionando esperas encadeadas e mesclando as submissões da fila sempre que possível para reduzir a sobrecarga de sincronização, Blumenkrantz conseguiu melhorar significativamente a eficiência. O aspecto mais impressionante é que essas melhorias se aplicam ao código de tempo de execução Vulkan comum do Mesa, não sendo específicas para um driver em particular.

As melhorias já demonstraram resultados impressionantes em testes de benchmark. Por exemplo:

  • O driver RADV em GPUs RDNA3 registrou um aumento de desempenho de até ~1000% para envio de comandos.
  • O driver de software Lavapipe obteve ganhos de desempenho de 1000~3000% em alguns casos.
  • O driver Intel ANV Vulkan com Arc Graphics (DG2) teve um aumento de desempenho de até 5.000%.
  • O driver Qualcomm Adreno TURNIP registrou melhorias de desempenho de 3.000~4.000%.

O código para otimizar a mesclagem de envio para os drivers Vulkan do Mesa está atualmente em revisão através deste Mesa MR (Merge Request). 

Para obter mais informações sobre esse trabalho incansável de otimização de Blumenkrantz, você pode consultar esta postagem no blog .






Fonte

Até a próxiam !!

Nenhum comentário:

Postar um comentário