RPi-VK-Drive: de GPU-controller met Vulkan-ondersteuning voor oudere RPI-kaarten

Enige tijd geleden heeft Stichting Raspberry Pi samen met Igalia, bekend gemaakt gezamenlijk werk voor het grote publiekof over de ontwikkeling van een Vulkan-driver voor Raspberry Pi-boards waarin ze aanvankelijk zeiden dat dit alleen compatibel zou zijn met het nieuwste bord, de "Raspberry Pi 4" en dat is hoe ze de beginfase van de ontwikkeling begonnen en die niet als zodanig een specifieke datum vermeldt wanneer het klaar zou zijn de controller of wanneer het geschikt zou zijn om enkele echte applicaties te starten.

Het enige dat ze noemden was dat dit mogelijk zou kunnen zijn in de tweede helft van 2020, binnen controller specificaties Er werd gezegd dat dit beperkt is tot VideoCore VI grafische versneller ondersteuning, gebruikt sinds het Raspberry Pi 4-model en die niet compatibel kunnen zijn met oudere platen, dat wil zeggen vanaf het 3b + -model achteruit ze werden weggegooid.

Ze zeiden ook dat het gebruik van Vulkan, in vergelijking met OpenGL, de prestaties van grafische applicaties en games kan verbeteren.

Met dit nieuws waren veel fans en eigenaren van een Raspberry Pi die niet model 4 was, teleurgesteld omdat ze het gevoel hadden dat ze opzij waren gezet en dat ze praktisch aankondigden dat het niet langer de moeite waard is om deze boards te blijven ondersteunen.

Maar nu in meer recent nieuws, lijkt het erop dat de dingen zijn veranderd toen een ontwikkelaar het tegendeel kwam bewijzen.

Over RPi-VK-Driver 1.0

Martin Thomas, een NVIDIA-ingenieur, was verantwoordelijk voor de ontwikkeling van RPi-VK-Driver dat is een open controller die in de woorden van de auteur:

"De controller is ontwikkeld door, maar de ontwikkeling werd uitgevoerd als een persoonlijk project, niet gerelateerd aan NVIDIA (de controller is de afgelopen twee jaar in zijn vrije tijd ontwikkeld)."

Deze eerste versie De open driver RPi-VK-Driver 1.0 wordt gedistribueerd onder de MIT-licentie en in de Vulkan grafische API-ondersteuning is geïmplementeerd voor oudere Raspberry Pi-kaarten die worden geleverd met de Broadcom Videocore IV GPU.

De controller Het is geschikt voor alle Raspberry Pi-bordmodellen die vóór Raspberry Pi 4 zijn uitgebracht.

Van de ondersteunde modellen worden de volgende vermeld in de repository:

  • zero
  • Nul w
  • 1 model A
  • 1 model A +
  • 1 model B
  • 1 model B +
  • 2 Model B
  • 3 Model A +
  • 3 Model B
  • 3 Model B +
  • Rekenmodule 1
  • Rekenmodule 3
  • Rekenmodule 3 lite
  • Rekenmodule 3+
  • Rekenmodule 3+ lite

Omdat de VideoCore IV GPU-mogelijkheden, die zijn uitgerust met oudere Raspberry Pi-modellen, ze zijn niet genoeg voor volledige Vulkan-implementatie, de controller implementeert slechts een subset van de Vulkan API, die niet de hele norm dekt, maar probeer deze te volgen voor zover het team het toelaat.

Echter de beschikbare functionaliteit is voldoende voor veel applicaties en games, en de prestaties liggen ver voor op OpenGL-stuurprogramma's dankzij efficiënter geheugenbeheer, multi-threaded verwerking van GPU-opdrachten en directe controle van GPU-bewerkingen.

De controller ondersteunt ook functies zoals MSAA (multi-sample anti-aliasing), low-level shaders en prestatiemeteritems. Van de beperkingen is er een gebrek aan ondersteuning voor GLSL-shaders, die in dit stadium van ontwikkeling nog niet beschikbaar zijn.

Wat betreft de auteur kunnen we benadrukken dat hij ook verantwoordelijk was voor het publiceren van de port van de game Quake 3 voor Raspberry Pi, die dient als demonstratie van de mogelijkheden van de nieuwe controller.

De game is gebaseerd op de ioQuake3-engine, waaraan een modulaire rendering-back-end is toegevoegd op basis van Vulkan, oorspronkelijk ontwikkeld door het Quake III Arena Kenny Edition-project. Met behulp van de nieuwe in-game controller was het mogelijk om meer dan 100 frames per seconde (FPS) op het Raspberry Pi 3B + -bord te renderen met een output van 720p.

Tenslotte met betrekking tot de implementatie van deze controller evenals om te weten meer informatie erover, kunt u de opslagplaats van de controller controleren in het volgende link.


Wees de eerste om te reageren

Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.