Panfrost Changelog - Printable Version +- PINE64 (https://forum.pine64.org) +-- Forum: Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=111) +--- Forum: General Discussion on Pinebook Pro (https://forum.pine64.org/forumdisplay.php?fid=112) +--- Thread: Panfrost Changelog (/showthread.php?tid=10484) |
Panfrost Changelog - icecream95 - 06-29-2020 In this thread I will be posting a short changelog of the Panfrost changes in Mesa when they arrive in Manjaro stable mesa-git. This changelog will be useful even if you don't use Manjaro, but it may be out of sync to when you get the changes - Manjaro is between one and three weeks behind upstream mesa git. New contributors to Panfrost are always welcome - in the past three months there were only four contributors with more than one commit to Panfrost in Mesa, and more will help us get to OpenGL 3 and beyond faster (Vulkan might not be that far off thanks to the Gallium frontend being written). Most discussion around Panfrost happens on the #panfrost channel on Freenode IRC, so ask there if you want to get involved. Only minimum knowledge of the OpenGL rendering pipeline is required. mesa-git-20.2.0_devel.125242.82815bc9803-1: Changes from dd81f4853c8 to 82815bc9803: Features: - ARB_depth_clamp support (used for shadows in OpenMW, and in LZDoom) (!5453) Fixes: - EXT_frag_depth and AMD_shader_stencil_export now work (!5065) - Waypipe now works for applications using GL (!5410) Performance: - Kodi memory usage when software decoding video has been reduced (!4451) - Performance improvements for some software-rendered applications and video players (!4628) - Bandwidth savings for varyings (!5423) - Some blend modes are now faster (!5449) - Multiplying by two is sometimes faster (!5475) RE: Panfrost Changelog - xmixahlx - 06-29-2020 thank you for your mesa contributions! looking forward to this thread. RE: Panfrost Changelog - Luke - 06-29-2020 Pinned Stuck RE: Panfrost Changelog - icecream95 - 07-16-2020 mesa-git-20.2.0_devel.125920.9418c8ec8dd-1: Changes from 82815bc9803 to 9418c8ec8dd: Features: - New flag for enabling OpenGL 3.3 - PAN_MESA_DEBUG=gl3 (!5584) So far, the only game known to regress when setting this is LZDoom, more testing to find anything else that breaks is wanted. Note that X (and XWayland) don't work with this flag yet, so until the next update don't set it in /etc/profile but use it directly when starting applications. - MSAA support (!5782) This is not optimised, and only a couple of applications work with it currently, but work is ongoing to improve things, so hopefully by the next update it should work with most applications. Performance: - Scheduling improvements (!5513) Total improvements are by 7% for cycles and 6% for thread count on average, or by 10% and 85% for affected shaders. Most applications that are shader bound should be helped by this. - Register pressure has been reduced in some vertex shaders (!5781) Fixes: - Flickering in Quake has finally been fixed (!5573) - Fixed rendering when tracing GPU jobs (PAN_MESA_DEBUG=trace) (!5573) - RGBA4 and RGB5_A1 framebuffers now work (!5573) - Finer grained flushing for occlusion queries (!5676) - The correct instruction tag is now used for texelFetch (!5782) - Textures with stencil formats are now supported (!5827) RE: Panfrost Changelog - xmixahlx - 07-16-2020 thank you for the commentary. i tried alacritty with gl3. 3 on wayland and it built and launched, but the window was blank -- moved back to gles3. also firefox borked itself with opengl. now i know why! generally, i have noticed improvement with mesa-git and 5.8rc. appreciate your work. RE: Panfrost Changelog - icecream95 - 08-02-2020 mesa-git-20.2.0_devel.126488.14a12b771d0-1: Changes from 9418c8ec8dd to 14a12b771d0: This is the largest set of changes to Panfrost in the last six months, so if something didn't work before, now is a good time to try it again in case it works now. Last update I said that MSAA only worked with a couple of applications, but it turns out that was just a configuration error on my side - MSAA should work for all applications that use it (but with Xwayland a recent git xserver is needed). If you don't install Mesa to /usr/lib, to get MSAA to work you may need to export LD_LIBRARY_PATH and LIBGL_DRIVERS_PATH from /usr/bin/Xorg (it's usually already a wrapper script). Features: - Depth reload support (!5824) This fixes many applications that require a flush in the middle of a frame, or that need the depth buffer to be preserved between frames. - ARB_blend_func_extended (!5620) This is required for X with PAN_MESA_DEBUG=gl3 - it is now safe to set the flag in /etc/profile or similar. This also fixes stock alacritty, but the GLES versions might still have slightly better performance. - OpenGL ES 3.0 is enabled by default (!5858) - Chromium now works (!5858): To enable acceleration, go to chrome://flags, and enable "GPU rasterization" and "Out of process rasterization". Note that if you use Chromium in a 32-bit container, this will be using a different version of Mesa which might not have this commit. /dev/dri will also need to be bound into the container for acceleration to work. - 8x MRT support (!5892) This is needed for OpenGL 3 - now all that's left for 3.0 is NV_conditional_render. - EXT_shader_framebuffer_fetch and KHR_blend_equation_advanced support (!5755) - Per-sample shading support (!5929) - FP16 support is enabled by default (!5960) - Emulated RGTC support (!5975) Performance: - Frame throttling has been re-enabled (!5858) This improves responsiveness during heavy workloads such as the refract demo of glmark2-es2. - Fence waiting has been reduced (!5995) This helps Chromium performance a bit. - 16x8 and 8x4 tile sizes are now used. (!5892) This can help performance sometimes when using MRT, for example with two RGBA32 framebuffers. It will also speed up 8x MSAA when it is implemented... Fixes: - Faults when RASTERIZER_DISCARD is used have been fixed (!5858) - MRT with blend shaders now works (!5892) - KiCad 3D viewer rendering has been fixed (!5946) Known regressions: Commit 528e132d4f7 forces depth writeback even when it is not needed. This can significantly hurt the performance of DarkPlaces, causing it to drop from 150 fps to 40 fps. Finally, here is a picture of Windows DarkPlaces running via Wine and box86. The emulation isn't perfect yet, so not everything is in the right place, and performance is not perfect (see above), but it's almost playable: RE: Panfrost Changelog - Idaho - 09-10-2020 Hey, I switched to mesa-git a while ago and I'm using retroarch on manjaro since the last 2 updates I get lots of flickering in the menus especially when I go to the library section where I'm supposed to see the games and their covert art, in the rest of the menus it's okay, I did not have that before, do you have any idea why this is happening and if I can fix it on my end or if you guys intend to do something about it? RE: Panfrost Changelog - xmixahlx - 09-10-2020 thanks for the updates and particilarly the configuration/default changes. using mesa-git now 20.3 with good results with linux 5.8 and sway/wayland. are there any caveats/improvements specifically with sway/wayland? RE: Panfrost Changelog - icecream95 - 09-11-2020 (09-10-2020, 08:18 AM)Idaho Wrote: Hey, I switched to mesa-git a while ago and I'm using retroarch on manjaro since the last 2 updates I get lots of flickering in the menus especially when I go to the library section where I'm supposed to see the games and their covert art, in the rest of the menus it's okay, I did not have that before, do you have any idea why this is happening and if I can fix it on my end or if you guys intend to do something about it? Can you trace it with apitrace, and upload the trace file? After installing apitrace (it should be in the Manjaro repos), you can just do: $ apitrace trace -a egl retroarch and then reproduce the problem. Check it replays with $ apitrace replay retroarch.trace (If that doesn't work, you might need to remove the file and try again without "-a egl") Compress the file with xz / zstd / whatever then stick it somewhere I can download it. I realise I've been neglecting to post anything here for a while, so this has content from two or three updates... mesa-git-20.3.0_devel.127750.ac6b8e42ce2-1: Changes from 14a12b771d0 to ac6b8e42ce2: Performance: - Implement EXT_multisampled_render_to_texture, which improves WebGL perfomance in Chromium (!6161) - Many refactorings, resulting in reduced CPU overhead - Temporary buffers are now stored in an array rather than a hash table, reducing CPU overhead searching the table (!6494) Fixes: - Fix a crash in wined3d for Mesa compiled in debug mode (!6085) - Fixes for some Firefox WebRender shaders (!6144) - Fix a deadlock with Source engine games (!6190) - AFBC (automatic texture compression) support (!6159) - Many memory leak fixes (!6373) Known regressions: - The optimisation for streaming textures broke, impacting software-decoding mpv and some software-rendered games. This has been fixed upstream. (!6608) - Synchronisation for AFBC blits has caused some applications, notably DarkPlaces, to drop to unplayable frame rates. There is no fix for this yet. - SuperTuxKart has regressed, causing 'melty' characters. Now fixed upstream. (!6659) OpenGL 3.0 is almost enabled by default now - only one more MR needs to be merged for all required extensions to be supported (!6675) Next week at XDC there is going to be some news about Panfrost, but I'm not allowed to tell you what it is... RE: Panfrost Changelog - xmixahlx - 09-11-2020 wew. suspense! |