På en søgen mod at forsøge at få spillet Halo Infinite til at køre under Linux via Steam Play (Proton) med AMD GFX6/GCN 1.0-grafikprocessorer, har Valves produktive open source-driverbidrager Samuel Pitoiset tilføjet VK_NV_device_generated_commands-understøttelse til disse originale Radeon GCN GPU’er.
Samuel Pitoiset har fået Mesa RADV-driverunderstøttelse til NV_device_generated_commands på GFX6 GPU’er. VK_NV_device_generated_commands er NVIDIA-udvidelsen, der giver mulighed for generering af en række kritiske grafikkommandoer til kommandobuffere. I henhold til specifikationen:
“Når der gengives et stort antal objekter, kan enheden udnyttes til at implementere en række kritiske funktioner, såsom opdatering af matricer, eller implementering af okklusionsnedskæring, frustum-aflivning, front-to-back-sortering osv. Implementering af dem på enheden kræver ikke enhver speciel udvidelse, da en applikation frit kan definere sine egne datastrukturer og blot behandle dem ved hjælp af shaders.
Men hvis applikationen ønsker hurtigt at sætte gang i gengivelsen af den endelige strøm af objekter, tvinger uudvidet Vulkan applikation til at læse den behandlede strøm tilbage og udstede grafikkommando fra værten. For meget store scener kan synkroniseringsomkostningerne og omkostningerne til at generere kommandobufferen blive flaskehalsen. Denne udvidelse gør det muligt for en applikation at generere en enhedssidestrøm af tilstandsændringer og kommandoer, og konverter det effektivt til en kommandobuffer uden at skulle læse det tilbage til værten.
Yderligere tillader den trinvise ændringer af sådanne kommandobuffere ved kun at manipulere delvise sektioner af en kommandostrøm — for eksempel pipelinebindinger. Uudvidet Vulkan kræver genskabelse af hele kommandobuffere i et sådant scenario eller opdateringer synkroniseret på værten.”
For at tilføje denne udvidelse på GFX6 kommenterede Pitoiset i sammenfletningsanmodningen,”Nyd at spille Halo Infinite på GFX6.:-)”
Men han opdaterede senere teksten for at tilføje,”Måske ikke fordi det måske kræver sparsomt, hvilket er gfx8+:(“Så det er ikke klart i sidste ende, om han vil være i stand til at få Halo Infinite til at køre på disse tidlige GCN GPU’er kort for at komme med en løsning på mangel på sparsomme teksturer. Under alle omstændigheder er det rart at se Valve-udviklere arbejde på at forbedre understøttelsen af disse aldrende GPU’er. GFX6 dækker Kap Verde, Pitcairn, Tahiti, Oland og Hainan GPU’er.
Denne GFX6 NV_device_generated_commands-understøttelse er i Mesa 23.2-udvikling nu til dens stabile udgivelse næste kvartal.