Announcement

Collapse
No announcement yet.

Mesa 18.3 Has A Busy Last Day Of Feature Development

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Mesa 18.3 Has A Busy Last Day Of Feature Development

    Phoronix: Mesa 18.3 Has A Busy Last Day Of Feature Development

    The branching of Mesa 18.3 is imminent and expected to happen anytime now. The Mesa developers of the different drivers have been very busy in merging their last-minute feature work for this final quarterly feature update to end out 2018...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    No ANV Transform feedback?
    *sob*

    Comment


    • #3
      I'm quite looking forward to No Man's Sky comatibility! Cheers for the Mesa team!

      Comment


      • #4
        Meson has been using python3 exclusively for a while now, and scons (and I think android) continue to use python 2 exclusively and will likely continue to do so. The only change is that the autotools based build can use either python 2.7 or 3.x now, where it used to require 2.7

        Comment


        • #5
          EDIT: So even with everything set to default and nothing overclocked on my system (cpu/gpu/mem/etc), still getting the GPU hangs. Happens randomly. Could be after an hour of Rocket League, or five minutes into Rise of the Tomb Raider. Doesn't matter the game, no rhyme or reason really. Just gonna chalk it up as the state of things at the moment.

          Also, shmerl, thank you for the killer guide to Build Mesa from source. Really appreciate it.

          Looks like cross-compilation of the 32-bit drivers on a 64-bit system is still broken for debian/Ubuntu, but I was able to set up a 32-bit VM of Ubuntu 16.04.5 and got it compiling perfect, including with LLVM 8. It was a pain in the ass, but doable.

          Confirmed the 32-bit drivers were working with the Vikings Village x86 demo:

          Code:
          $ LD_LIBRARY_PATH=/opt/mesa-18-3/lib/i386-linux-gnu:$LD_LIBRARY_PATH VK_ICD_FILENAMES=/opt/mesa-18-3/lib/i386-linux-gnu/radeon_icd.i686.json ./vv.x86
          glxinfo of the 64-bit drivers:

          Code:
          $ LD_LIBRARY_PATH=/opt/mesa-18-3/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH LIBGL_DRIVERS_PATH=/opt/mesa-18-3/lib/x86_64-linux-gnu EGL_DRIVERS_PATH=/opt/mesa-18-3/lib/x86_64-linux-gnu glxinfo | grep OpenGL
          
          OpenGL renderer string: AMD Radeon (TM) RX 480 Graphics (POLARIS10, DRM 3.26.0, 4.18.17-041817+custom-generic, LLVM 8.0.0)
          OpenGL core profile version string: 4.5 (Core Profile) Mesa 18.3.0-devel (git-1f41104b9b)
          So my final setup is this, which is working nicely if anyone's curious:

          Ubuntu 18.10 cosmic with the default Mesa 18.2.2 drivers, no PPA:

          Code:
          OpenGL renderer string: AMD Radeon (TM) RX 480 Graphics (POLARIS10, DRM 3.26.0, 4.18.17-041817+custom-generic, LLVM 7.0.0)
          OpenGL core profile version string: 4.5 (Core Profile) Mesa 18.2.2
          Then, I've custom built both 32/64-bit Mesa 18.3 final (it can also be latest git) and installed it into /opt/mesa-18-3:

          Code:
          $ ls -al /opt/mesa-18-3/lib
          total 16
          drwxr-xr-x 4 root root 4096 Nov  5 00:17 .
          drwxr-xr-x 3 root root 4096 Nov  5 00:17 ..
          drwxr-xr-x 2 root root 4096 Nov  5 00:17 i386-linux-gnu
          drwxr-xr-x 2 root root 4096 Nov  5 00:17 x86_64-linux-gnu
          $ ls /opt/mesa-18-3/lib/x86_64-linux-gnu
          kms_swrast_dri.so     libgbm.so.1        libGLESv2.so        libGLX_mesa.so.0.0.0    libOSMesa.so.8          libvdpau_radeonsi.so.1.0    libxatracker.so.2.4.0   swrast_dri.so
          libEGL_mesa.so        libgbm.so.1.0.0    libGLESv2.so.2      libMesaOpenCL.so        libOSMesa.so.8.0.0      libvdpau_radeonsi.so.1.0.0  mesa_dri_drivers.so
          libEGL_mesa.so.0      libglapi.so        libGLESv2.so.2.0.0  libMesaOpenCL.so.1      libvdpau_gallium.so.1   libvulkan_radeon.so         radeon_dri.so
          libEGL_mesa.so.0.0.0  libglapi.so.0      libGLX_mesa.so      libMesaOpenCL.so.1.0.0  libvdpau_radeonsi.so    libxatracker.so             radeon_icd.x86_64.json
          libgbm.so             libglapi.so.0.0.0  libGLX_mesa.so.0    libOSMesa.so            libvdpau_radeonsi.so.1  libxatracker.so.2           radeonsi_dri.so
          $ ls /opt/mesa-18-3/lib/i386-linux-gnu
          kms_swrast_dri.so     libgbm.so.1        libGLESv2.so        libGLX_mesa.so.0.0.0    libOSMesa.so.8          libvdpau_radeonsi.so.1.0    libxatracker.so.2.4.0  swrast_dri.so
          libEGL_mesa.so        libgbm.so.1.0.0    libGLESv2.so.2      libMesaOpenCL.so        libOSMesa.so.8.0.0      libvdpau_radeonsi.so.1.0.0  mesa_dri_drivers.so
          libEGL_mesa.so.0      libglapi.so        libGLESv2.so.2.0.0  libMesaOpenCL.so.1      libvdpau_gallium.so.1   libvulkan_radeon.so         radeon_dri.so
          libEGL_mesa.so.0.0.0  libglapi.so.0      libGLX_mesa.so      libMesaOpenCL.so.1.0.0  libvdpau_radeonsi.so    libxatracker.so             radeon_icd.i686.json
          libgbm.so             libglapi.so.0.0.0  libGLX_mesa.so.0    libOSMesa.so            libvdpau_radeonsi.so.1  libxatracker.so.2           radeonsi_dri.so
          For Steam games, if I want to explicitly use my custom 18.3 drivers, I can use the following launch option for 64-bit games:

          Code:
          LD_LIBRARY_PATH=/opt/mesa-18-3/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH LIBGL_DRIVERS_PATH=/opt/mesa-18-3/lib/x86_64-linux-gnu EGL_DRIVERS_PATH=/opt/mesa-18-3/lib/x86_64-linux-gnu LD_PRELOAD=$LD_PRELOAD:/usr/\$LIB/libgamemodeauto.so.0 %command%
          Note: You can drop the LD_PRELOAD at the end right before %command% if you're not using Feral's GameMode.

          For non-Steam games, SuperTuxCart for example:

          Code:
          LD_LIBRARY_PATH=/opt/mesa-18-3/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH LIBGL_DRIVERS_PATH=/opt/mesa-18-3/lib/x86_64-linux-gnu EGL_DRIVERS_PATH=/opt/mesa-18-3/lib/x86_64-linux-gnu LD_PRELOAD=$LD_PRELOAD:/usr/lib/x86_64-linux-gnu/libgamemodeauto.so ./run_game.sh
          Note: It's very similar to above except instead of %command% you specify the binary/script. Also, for Feral's GameMode, I had to explicitly write out the directory /usr/lib/x86_64-linux-gnu instead of /usr/\$LIB like in Steam.

          That's pretty much it for now, if anyone has any questions, let me know. Leaving my previous post in tact just in case it helps someone. Sorry for the long post!

          -------------------------------------------

          Previous post:

          I'm finally compiling my own Mesa (!) with Gallium Nine, Vulkan, -march=native, and all that good stuff.

          Problem is cross-compiling on 64bit for 32bit no longer works on Ubuntu/Debian. Does anyone know a work around besides compiling on a 32-bit VM?

          Also, just recently I've been trying to debug the gpu hangs on the RX480.

          I can reproduce it every time playing Metro 2033 Redux... on the main screen, if you move the mouse around from Continue to New Game to Options back and forth, eventually after 15-45 seconds or so it'll cause the system to hang and you have to hit the power button. Happens with Ubuntu cosmic's 18.2.2, oibaf's PPA, and my own compiled from git using the following:

          Code:
          ./configure --build=x86_64-linux-gnu --prefix=/opt/mesa-master --includedir=\${prefix}/include --mandir=\${prefix}/share/man --infodir=\${prefix}/share/info --libdir=\${prefix}/lib/x86_64-linux-gnu --libexecdir=\${prefix}/lib/x86_64-linux-gnu --sysconfdir=/etc --localstatedir=/var --runstatedir=/run --disable-silent-rules --disable-dependency-tracking --disable-xvmc --disable-omx-bellagio --disable-gles1 --enable-gles2 --enable-libglvnd --enable-osmesa --enable-glx-tls --enable-shared-glapi --enable-driglx-direct --enable-gbm --enable-lmsensors --enable-xa --enable-llvm --enable-opencl --enable-opencl-icd --enable-vdpau --enable-va --enable-gallium-extra-hud --enable-nine --enable-dri --enable-dri3 --with-dri-drivers=radeon --with-dri-driverdir=/usr/lib/x86_64-linux-gnu/dri --with-dri-searchpath=/usr/lib/x86_64-linux-gnu/dri:\\\$\${ORIGIN}/dri:/usr/lib/dri --with-vulkan-drivers=radeon ac_cv_path_LLVM_CONFIG=llvm-config-7 "--with-platforms=x11,surfaceless drm" "--with-gallium-drivers=radeonsi swrast" "CFLAGS=-g -O2 -march=native -fstack-protector-strong -Wformat -Werror=format-security -Wall" "CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2" "CXXFLAGS=-g -O2 -march=native -fstack-protector-strong -Wformat -Werror=format-security -Wall" "FCFLAGS=-g -O2 -fstack-protector-strong" "FFLAGS=-g -O2 -march=native -fstack-protector-strong" "GCJFLAGS=-g -O2 -fstack-protector-strong" "LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro" "OBJCFLAGS=-g -O2 -march=native -fstack-protector-strong -Wformat -Werror=format-security" "OBJCXXFLAGS=-g -O2 -march=native -fstack-protector-strong -Wformat -Werror=format-security"
          Mesa 18.3 does fix the gpu hangs related to Vulkan though with DOOM 2016 (and possibly other titles). As for now I'm just going to assume that's the state of the drivers at the moment and we'll just have to wait on the other titles. Thanks again to all the devs, your hard work is greatly appreciated.

          Also- I've been using the following to debug and it's been working great. Gives you all the info you need on an overlay while you're playing (just prepend these variables in the launch options before %command% if you're using Steam). If you have more than 4 cores, just edit it to accommodate the extra cores. i.e cpu 4,5,6,7:

          Code:
          GALLIUM_HUD_PERIOD=0.07 GALLIUM_HUD=".h80.w105cpufreq-cur-cpu0+cpufreq-cur-cpu1+cpufreq-cur-cpu2+cpufreq-cur-cpu3;.h80.x185.w230.c100cpu0+cpu1+cpu2+cpu3;.x445.h80.w75.dGPU-load+cpu+fps;.x565.h80.w875.dfps;.x1470.h80.w190.c100sensors_temp_cu-amdgpu-pci-0100.temp1+GPU-load:100;.x1690.h80.w170requested-VRAM+VRAM-usage"
          Last edited by perpetually high; 05 November 2018, 10:30 PM.

          Comment


          • #6
            Originally posted by M@yeulC View Post
            I'm quite looking forward to No Man's Sky comatibility! Cheers for the Mesa team!
            I play it regularly in Proton using Mesa git and AMDGPU, it runs almost perfectly on my R9 290, I use a Ryzen 2600 and I manage to get between 45 and 100fps depending on the scene's complexity.

            The game is entirely playable, multiplayer included.

            I've noted a few issues though:

            * Some vegetation flickers (trees specially)
            * Some times at random there is a strange noise distortion (mostly happens underwater)
            * When playing online other players hear any sound my computer is playing.

            Other than that, top notch.

            Comment

            Working...
            X