RetroPie forum home
    • Recent
    • Tags
    • Popular
    • Home
    • Docs
    • Register
    • Login

    Add Vulkan Support to RetroPie for Pi 4?

    Scheduled Pinned Locked Moved Ideas and Development
    vulkanpi 4retropie
    97 Posts 13 Posters 22.5k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • BuZzB
      BuZz administrators @bluestang
      last edited by

      @bluestang I believe our flags are passed through for sdl2. I looked into this before I think to confirm. I think i forced V=1 as makefile parameter and it shows them being used.

      Try sudo __makeflags="V=1" ./retropie_packages.sh sdl2

      (I did a quick test while writing this and the flags show up).

      To help us help you - please make sure you read the sticky topics before posting - https://retropie.org.uk/forum/topic/3/read-this-first

      B 1 Reply Last reply Reply Quote 0
      • J
        joelkolb
        last edited by

        Does anybody have an idea of how to build PPSSPP (standalone, not Libretro core) with Vulkan support on the Pi 4? The build that is available in RetroPie has Vulkan listed as an option for the backend, but when I select it and reload it, it crashes. After loading it again, it resets itself back to OpenGL. I'm guessing it isn't properly built with Vulkan support as is. @bluestang maybe?

        B 1 Reply Last reply Reply Quote 0
        • B
          bluestang @joelkolb
          last edited by

          @joelkolb said in Add Vulkan Support to RetroPie for Pi 4?:

          Does anybody have an idea of how to build PPSSPP (standalone, not Libretro core) with Vulkan support on the Pi 4? The build that is available in RetroPie has Vulkan listed as an option for the backend, but when I select it and reload it, it crashes. After loading it again, it resets itself back to OpenGL. I'm guessing it isn't properly built with Vulkan support as is. @bluestang maybe?

          The problem is that Vulkan on the Pi4 is not supported by standalone PPSSPP in the Linux KMS/DRM API. The issue is that SDL2 itself does not have proper support for Vulkan contexts using KMS/DRM. Work is being done to implement this so it will happen eventually.

          If you were to run it in X11 it will work, but that is not a supported RetroPie configuration. In addition, performance is not better than OpenGL.

          J 1 Reply Last reply Reply Quote 0
          • J
            joelkolb @bluestang
            last edited by

            @bluestang I see. Thank you for the explanation. I guess I'll just have to wait.

            1 Reply Last reply Reply Quote 0
            • B
              bluestang @BuZz
              last edited by

              @buzz said in Add Vulkan Support to RetroPie for Pi 4?:

              sudo __makeflags="V=1" ./retropie_packages.sh sdl2

              Ah yes, thanks for the clarification.

              On a side note, SDL2 had some recent commits that show a tangible performance increase for the Pi4 in EmulationStation. Unfortunately, these are post-release v2.0.14...

              There is another minor issue with upstream SDL2. The Debian packaging files need to be updated in upstream as well. Building with debhelper compat v9 outputs many warnings that it is deprecated. It will build successfully but it should be updated to get rid of those warnings.

              B 1 Reply Last reply Reply Quote 0
              • B
                bluestang @bluestang
                last edited by

                Based on the 5.10 kernel thread in the Raspberry Pi forums, it appears that MESA updates through apt will only consist of bug fixes for the RPis. New features, i.e. Vulkan, are likely to appear with new version releases of Debian.

                As best I can tell, Bullseye should be slated for a summer release but there is still no official date.

                This news comes as a surprise.

                busywaitB 1 Reply Last reply Reply Quote 0
                • busywaitB
                  busywait @bluestang
                  last edited by

                  @bluestang Hmm. I guess that goes for the 64-bit distro too.

                  Odd that they would choose to wait so long for Mesa to come via the upstream Debian, given the money they spent having the Vulkan API implemented.

                  Would a future RetroPie release ship with a local version of Mesa?

                  Manjaro just brought Mesa 20.3.3 into their stable release branch, along side Kernel 5.10.9. For fun I configured it to boot with full KMS, but then RetroArch (1.9.0) refused to start:
                  The path /dev/dri/ cannot be opened is not available

                  B 1 Reply Last reply Reply Quote 0
                  • B
                    bluestang @busywait
                    last edited by bluestang

                    @busywait
                    I am not familiar with Manjaro. RetroArch does work with the KMS driver. It’s been working on my end for several months without any real big issues.

                    The Pi4 Vulkan driver started to appear in the MESA 20.3.X releases and I can see it in the Debian Bullseye Packages.

                    2Play2 1 Reply Last reply Reply Quote 0
                    • 2Play2
                      2Play @bluestang
                      last edited by

                      @bluestang Hi my friend.
                      I ve been working the last month on Vulkan on Pi4
                      I think we should have a recap basis latest .
                      I ll share my latest too

                      Your friend,
                      2Play!

                      S 1 Reply Last reply Reply Quote 2
                      • S
                        SierraFOOL @2Play
                        last edited by

                        Hallo, can i activate Vulkan for all cores in Retoarch/Retropie? Or should i activate it per core? In which Config File can i Test ist?

                        mituM 1 Reply Last reply Reply Quote 0
                        • mituM
                          mitu Global Moderator @SierraFOOL
                          last edited by

                          @sierrafool There's no switch to activate Vulkan in RetroPie as it is. Vulkan is not included in the RetroArch build and support for it is not present in Raspberry Pi OS. You'll need to manually compile MESA with Vulkan support and the same for RetroArch.

                          S 1 Reply Last reply Reply Quote 0
                          • S
                            SierraFOOL @mitu
                            last edited by

                            @mitu thanks, i Inderstand. Inhaber Compiler Mesa with Vulkan via pikiss. How can i Compile Retroarch with Vulkan Support? Can i See, how the Retropie Script Compile this and add a Vulkan Parameter?

                            mituM 1 Reply Last reply Reply Quote 0
                            • mituM
                              mitu Global Moderator @SierraFOOL
                              last edited by

                              @sierrafool You can see the RetroPie install script for RetroArch here, this includes the compilation switches used by RetroPie.

                              1 Reply Last reply Reply Quote 0
                              • sergioadS
                                sergioad
                                last edited by

                                How the development is going? I am hyped by the idea of Redream + Vulkan

                                dankcushionsD 1 Reply Last reply Reply Quote 1
                                • dankcushionsD
                                  dankcushions Global Moderator @sergioad
                                  last edited by dankcushions

                                  @sergioad as mitu said

                                  Vulkan is not included in the RetroArch build and support for it is not present in Raspberry Pi OS.

                                  we need to wait for the next version of raspberry pi OS, based on debian bullseye, which should include mesa with vulkan support. once that is there, retropie could update the script modules to include support for retroarch/appropriate emulators.

                                  I am hyped by the idea of Redream + Vulkan

                                  does redream support vulkan? i don't believe it does.

                                  sergioadS 1 Reply Last reply Reply Quote 2
                                  • sergioadS
                                    sergioad @dankcushions
                                    last edited by

                                    @dankcushions thanks for the reply

                                    1 Reply Last reply Reply Quote 0
                                    • sergioadS
                                      sergioad
                                      last edited by

                                      @dankcushions AFAIK it does

                                      dankcushionsD 1 Reply Last reply Reply Quote 0
                                      • dankcushionsD
                                        dankcushions Global Moderator @sergioad
                                        last edited by

                                        @sergioad it does not. confirmed by the dev on their discord many times, and the official website: https://redream.io/help

                                        flycast supports vulkan, although apparently pi4 has issues: https://github.com/libretro/flycast/issues/983

                                        sergioadS 1 Reply Last reply Reply Quote 1
                                        • sergioadS
                                          sergioad @dankcushions
                                          last edited by

                                          @dankcushions ok, thanks

                                          1 Reply Last reply Reply Quote 0
                                          • B
                                            bluestang
                                            last edited by

                                            RPiOS "Bullseye" now has the 20.3.5 version of MESA and the Broadcom Vulkan driver is part of the mesa-vulkan-drivers pkg if installed through apt...

                                            In upstream MESA, the rpi4 Vulkan driver is now 1.1 conformant but still lacks a few extensions and driver code improvements that 3D emulators would benefit from.

                                            Nonetheless, it is an option available to the user to install through apt. Perhaps it might be time to make it an option in RetroPie?

                                            mituM 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.

                                            Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.