== On RK3288 (GPU ARM Mali T760, midgard series, uses Panfrost driver) == Tests are made on an Asus C201p Chromebook laptop (veyron speedy) https://www.asus.com/Commercial-Laptops/ASUS-Chromebook-C201PA/ Booted on ArchLinuxARM (ALARM) http://archlinuxarm.org You can found adapted application packages/PKGBUILD in parent directory and Mesa one in this directory Git changes can be seen in both, more convenient * https://gitlab.freedesktop.org/mesa/mesa/commits/master or lighter * https://cgit.freedesktop.org/mesa/mesa/log/ To install it, get the package and type as root (or if you can sudo) pacman -U *r117249* (git revision version) The name of the revision is : r.. You can change the PKGBUILD to force a specific revision, by adding at the last line of the prepare() function: git checkout a6de05a968d Where a6de05a968d is the corresponding hascode (here for revision number r116553 2019.10.31 mesa git r117231.c32236811d0 linux 5.4rc5 some changes in git related to video but mainly for continuous integration (CI) tests * Phoronix reported that an important improvment has been made on SDL (1.2/2.0) with ARM NEON (SIMD) changing for the same application on the same hardware from 9.2 FPS to 22 FPS, patch to be added on SDL1.2 PKGBUILD, and will be present on SDL 2.0.11. See https://www.phoronix.com/scan.php?page=news_item&px=SDL-ARM-NEON-Optimizations, 2019.11.28 my Asus Chromebook seems dead since this week, led start, but nothing on screen, need to investigate, will try to display something via HDMI. There is now 100% free libreboot for this nettop, that can replace Google version of Coreboot : https://libreboot.org/docs/install/c201.html If I can't manage to repair it, I think to move to an Open Source 64bits Pinebook-pro (RK3399, 14" screen, 200$) https://www.pine64.org/pinebook-pro/ There PinePhone looks like a good full 100% GNU/Linux smartphone https://www.pine64.org/pinephone/ 2019.11.18 mesa git r117665.36633400499 linux 5.4rc7 still few commits on panfrost about alignements of UBOs and mir * Still same problems with Godot and PPSSPP 2019.11.14 mesa git r117651.3b3494174da linux 5.4rc7 few improvments for T720 and more general * Still same problems with godot and ppsspp 2019.11.14 mesa git r117607.882ca6dfb0f linux 5.4rc7 few changes in panfrost annulation of commits in other parts * Godot : the picture of the application is inverted ???? see panfrost_medias/20191114.Godot_inverted.png * ppsspp : every games tested now crash (ppsspp freeze and after several minutes segfault) * No improvement elsewhere 2019.11.13 mesa git r117583.943f630f8e4 linux 5.4rc7 still few changes in panfrost * Still nothing noticable in applications. 2019.11.12 mesa git r117506.34f32a6d664 linux 5.4rc6 lot of changes in panfrost and mesa/gallium * No special changes in behavior so not reporting during those days * PPSSPP removed n times tuned config file, ~/.config/ppsspp/PSP/SYSTEM/ppsspp.ini and tuned again for lower filterint, everything is really faster. Still the triangles faces in front of the display. The ppsspp.ini is in the parent of this directory to help to test it (improve tuning ?) with a nice base. 2019.11.04 mesa git r117269.ecc31d032e5 linux 5.4rc5 patch fixing lot of depth stencil tests https://cgit.freedesktop.org/mesa/mesa/commit/?id=28440820eff55d412fbce3243c24bc9f58c3b8e6 * Warzone2100 (RTS), The today patch solved the precision problem on objects faces following the ground * PPSSPP 1.9.4 (PSP emulator) Managed to compile it using ArchLinux PKGBUILD forcing system ffmpeg (not optimal, but there is problem with -fpic option and ffmpeg on ARM (the same PKGBUILD works fine on x86, probably need to look at diff between x86_64 and armv7h in ppsspp CMake files). There are some glitchs with ppsspp (on God of War, Tekken 6) as shown in this Pi Lab videos https://www.youtube.com/watch?v=BMCLY9rJEiA This kind of glitchs was presents Warzone 2100 and Extreme Tux Racer until September 24. For the first time that is slower on my 32 bits 3288 than on his 64 bits 3399 on videos I seen. Perhaps a first test on Panfrost that seems to be faster than official ARM driver. * XFCE4 (Desktop) stil crash when moving the mouse over toolbar. 2019.11.01 mesa git r117249.dd77bdb34b6 linux 5.4rc5 some code cleanup/unification in Panfrost (one more shader test fail after this) * Löve (2D game engine in Lua, based on OpenGL for graphics) works perfectly (it was awfully slow with official Mali driver). http://love2d.org tested with: ** Löve 0.8.0 splash screen, Giga-Pudding (pacman -S love08 ??? I have a package installed 2018.06.04) ** Löve 0.9.2 with oh-my-girafe, Sagittarius, 90secondportraits, duckmarines-1.0 (some freeze during few seconds when switching fullscreen). Have an old binary, can't compile with mesa git nor mesa 19.2. stable version, see love-0.9.2.tar.xz in the parent directory ** Löve 0.10.2 splash screen, Cactus game, hawkthorne (pacaur -S love10) ** Love 11.3 (pacman -S love) and Max Downforce (nice enduro/PolePosition/Out-run like pseudo-3d racing) https://love2d.org/forums/viewtopic.php?f=14&t=87451 * Panfrost DRM patch reached Linux mainline for 5.4rc6 https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=ec26530c8cb897858a9c440a9e006dcd7efafcdc more generally https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=146162449186f95bf123f59fa57a2c28a8a075e5 d0 linux 5.4rc5 some changes in git related to video but mainly for continuous integration (CI) tests * No change with XFCE crash after r116553.a6de05a968d release. Panfrost DRM kernel fix patch (see 2019.10.24) still not merged in 5.4rc. * Phoronix reported that an important improvment has been made on SDL (1.2/2.0) with ARM NEON (SIMD) for ARMv7/8 changing for the same application on the same hardware from 9.2 FPS to 22 FPS, patch to be added on SDL1.2 PKGBUILD, and will be present on SDL 2.0.11. See https://www.phoronix.com/scan.php?page=news_item&px=SDL-ARM-NEON-Optimizations, * irregular display speed now on snes9x, still display 50/60fps. * Flowblade freeze now when charging file (could be related to other libs updates) 2019.10.29 mesa git r117047.ff6e148a3d6 linux 5.4rc5 * Tested again krita, it works really really well. * Blender (2.80) can be used in pure software, by "export LIBGL_ALWAYS_SOFTWARE=1; blender" in a term, but it is really slower than blender 2.7 in pure software rendering. * kdenlive, even with the GL software mode, make me think to an ARM (Archlinux ARM package ?) problem. Even trying to loading it in memory with gdb kdenlive, make a coredump before having the prompt of GDB, and so be able to make a run to debug it. * Testing again some non linear video editor, Pitivi, flowblade, openshot play videos smoothly, olive still don't play the video at all, but keep a fixed frame (need to learn it a little ?) 2019.10.27 mesa git r116768.a0c00300751 linux 5.4rc4 * Plasma (kde desktop) don't work at all just black screen with top-left blue hallow that display, when moving the mouse cursor in this corner * LXQT+KDE for window manager seems to works perfectly, moving windows is perfectly smooth, composite effects too. After few minutes, Xorg freeze in Preferences of a shortcut icon and finally crash :(. Tried with mesa git r116553.a6de05a968d, it works the same way (without crash related to widgets) :). 2019.10.26 mesa git r116766.728a9757006 Linux 5.4rc4 * As XFCE still crash, I tried again GNOME (3.34.1)/weston, seems to work fine, even if it slow, GNOME/xorg is faster but still not smooth. Daniel Van Vugt from Ubuntu is currently working hard to poor performances of GNOME Shell and its Mutter compositor. See https://discourse.ubuntu.com/t/boosting-the-real-time-performance-of-gnome-shell-3-34-in-ubuntu-19-10/13095 This document is good to read anyway. * I also tried Enlightenment where OpenGL acceleration can now be enabled. * NIR serialized for the OpenCL Clove Mesa driver, using SPIR-V pipeline. Can be tested with PAN_MESA_DEBUG=degp https://cgit.freedesktop.org/mesa/mesa/commit/?id=728a9757006c564d11a550f559ca3a89e496b813 2019.10.24 mesa git r116665.3168b8defaf kernel-5.4rc4 llvm7 instead of default ArchlinuxARM llvm9. * use llvm7 instead of last one, don't change anything * A bug has been detected in kernel part (DRM) of panfrost driver https://cgit.freedesktop.org/mesa/mesa/commit/?id=3168b8defaf5b33faa1b9f53bbddae40474568c5 A patch exists but is not in main kernel for now https://gitlab.freedesktop.org/tomeu/linux/-/archive/panfrost-veyron-fix/linux-panfrost-veyron-fix.tar.gz need to recompile kernel with it. * llvm7 should be used instead of llvm8+ on armhf, see https://cgit.freedesktop.org/mesa/mesa/commit/?id=793f6b30d9ec4bc8d4d1ab3bdb429acb7f7f3a20 2019.10.21 mesa git r116573.b72205a4c14 (lot of updates on pan/midgard) and r116579.7e5f87b5330 with both kernel-5.4rc3 and 5.3.7 * The crash from r116567 is still there, so can't test new state of the driver. It occurs with XFCE, not with OpenBox. * r116553.a6de05a968d (before yesterday evening changes) works well. * glmark2 Jellyfish bench works again. 2019.10.20 mesa git r116567.4c9b9ed5f9c kernel-5.4rc3 * Xorg crash with XFCE after few seconds, when passing the mouse cursor above shortcuts icons on toolbar. 2019.10.17 mesa git last update kernel-5.4rc3 * Most games tested become really more smooth, including warzone2100, SuperTuxKart, snes9x, foobillard++, (some of them that show fps had fast fps counter before, but on display fps was slow, meaning that rendering was fast but something slowed down between rendering and display), this is no more the case. STK shows important slow down and acceleration depending on the scene now, due to the faster real display fps. * Olive (non-linear video editor), ~works as on x86, same bug, than on my X86 archlinux install, the video show only one frame on display (can only be compiled with stable mesa, but works with last git). * Confirm that due to some shaders infinite loop and memory buffer creation, glmark2 jellyfish bench and godot both saturate memory before crashing, here is an exemple of terminal debug display (looping until crash): ======== vmul.imov 4698, 4697, 4697, 4697 /* no spill */ vmul.imov 4699, 4698, 4698, 4698 /* no spill */ ld_int4 4700.xy, 4699, 4699, 4699 /* no spill */ vmul.imov 4701, _, _, _ /* no spill */ vmul.imov 4702, 4701, 4701, 4701 /* no spill */ ======== * GL-117 (simple 3d flight game) now works perfelcty (crashed at the end of starting animation before). * Firefox is still a bit slower and really less smooth when compositor is activated with XFCE, really smooth without it, something not new. HD video that was a bit slow, become smooth now in Firefox. 2019.10.16 mesa git last update - updates from Alyssa including one related to glamor shaders, kernel 5.4rc2 * Gtk widgets doesn't make Xorg crash anymore, but a new little bug appear when scrolling on file chooser or other lists (see panfrost_medias/20191016_bug_gtk_lists.mp4). * Krita (drawing/painting/animation application) is now usable :). Some standard not tool large brush are quite fast, some are slower and have medium lag, but not toatlly unusable like few weeks ago. I didn't tested animation features. * Godot editor view have no more display bug at all (on "Platformer 3D" template), a 3d view is well displayed in editor, but everything just become so slow that computer become unusable. Lot of debug info about shaders in the terminal, and finish by memory allocation error (ERROR: alloc_static(...), like flightgear, 4GB are quicly exhausted. With "Platformer 2D" template, Godot crash with the following errors: ============ ERROR: initialize: Condition ' ctxErrorOccurred || !p->glx_context ' is true. returned: ERR_UNCONFIGURED At: platform/x11/context_gl_x11.cpp:188. OpenGL ES 2.0 Renderer: panfrost DRM_IOCTL_PANFROST_CREATE_BO failed: No space left on device BO creation failed handle_crash: Program crashed with signal 11 ============ * Glmark2 on jellyfish bench display lot of shaders vmul.imov ... /* no spill */ on terminal and the test freeze, including great system slowdown. * I noticed that the bug on color chooser on Gimp is also present on X86/i965 driver on mesa-git, so that's a bug in git version of Mesa in general 2019.10.13 mesa git last update, kernel 5.4.0rc2 * Gnumeric (1.12.45) is reaally, really slow, it slows down the whole system even with a really simple spreadsheet related to GTK cells ? * LibreOffice (6.2.7) Calc, is a bit slow too with medium spreedsheet, but still usable. * Mesa 19.2.1 correct partially icons displaying in xfce4 panel, that was mostly non see in 19.2.0, still not complete as mesa git trunk version. 2019.10.09 mesa git uddate, kernel 5.4rc2 * Xorg crash with some gtk3 widgets occur often, after testing back with mesa 19.2;x stable, those widgets don't crash Xorg. In the other hand, everything is really slower, showing a huge and net progress in Panfrost driver with X.org. * Firefox switched to webrenderi (about:config => gfx.webrender.all = true), it works just fine, doesn't noticed any bug, feel a speed up, but didn't benchmarked it to verify. 2019.10.08 mesa git updated * I can confirm that very often, Xorg (launching lxdm) usr 90% of a core. Don't knwow exactly why for. I will try with an older version of Mesa and kernel 2019.10.07 mesa git updated (just a rollback on a panfrost function call in changelog) * Nothing new tested. computer was very slow with Xorg load visible in top/htop, but not sur it was related at all, but it wass resolved after update. * Try to figure out how to get some debug from my Xorg crashs. I can obtain it quicly by choosing an element in prefs of jami (sip/chat, use libgtk-3 and libwebkit2gtk-4.0) or by moving in file chooser in snes9x-gtk (libgtk-3) * snes9x (snes emulator), works perfectly. FPS counter claims 50FPS for Europe (50Hz) games and 60FPS for Jpaon or US (60Hz) games. I don't feel these frequencies better with x1 display than 1.5 and fullscreen, the FPS slowdown is elsewhere in the display chain, after SNES rendering. 2919.10.06 mesa git updated on morning * Tested Synfig again, still so slow that is unusable, the previous GTK error disappear from terminal, there is now only "(synfigstudio:2449): Gtk-CRITICAL **: 08:19:15.240: gtk_notebook_get_n_pages: assertion 'GTK_IS_NOTEBOOK (notebook)' failed" message. The Synfigstudio interface slowdown the whole desktop until the current application is wapped. Il looks like it start to slow done after adding the first circke in the canvas. Remember, Pencil2D works fine for animations (users showcase https://www.youtube.com/watch?v=aa9PCu_UZpg) * Flowblade (non-linear video editor) works perfectly (at least on basic tests and compositing), but don't expect 60fps for preview, it is I believe about 10fps * KiCAD, (electronic design) software only, it claims it need 3 buffer and that OpenGL can't give it, and fall back to software rendering. * Fritzing (electronic design), works perfectly. 2019.10.05 not updated mesa git master * I noticed that some gnome related toolkits functions can crash X11, including Jamii-gnome (chat/visioconf/SIP client) parameters. I didn't noticed that in XFCE -gtk toolkit too). That's not a new bug, but I didn't invastigated which part. I just noticed a Segmentation fault with signal 11 in Xorg.0.log, saddly nothing more, the Xorg.0.log is in panfrost_medias/ folder in case of, but I doubt it could be useful. 2019.10.04 Mesa git master (bunch of updates from Alyssa Rosenzweig). * Godot editor interface display correctly on first page (project opening), not sure if the bug was in project display. It crashs during project loading. * Telegram-desktop: Some stickers animations doesn't crash the application (a kind of animate smiley, seen on a channel), animated stickers preview don't crash (in sidepanel) either. The following one crash Telegram at preview view (before starting to show the animation itself) https://t.me/addstickers/senya_animated (not related to mesa, it could be interesting to found some exemples to add an exporter for this format in synfig/pencil2D/Krita/OpenToonz or any libre vector animation software. 2019.10.03 Mesa git master (bunch of updates by Boris Brezillon important contributor to Panfrost, about batchs and buffer objects (BO)) * XFCE docker now display icons, XFCE screenshoter now display preview * Gimp now display colors gradients, it looks like there is still a little bug on colors arounds cursors in some cases in gradients (see panfrost_medias/Gimp.bug_gradient.20191003.png). Feel like it couold be related to precisions problems ? 32bits SoC here with poor precision VFP/SMID) * perfs looks greatly better in some glmark-es2 tests in the same conditions. * Telegram crash with animated stickers occur sooner, at displaying a preview of the sticker (the rendering is perhaps starting in background ?) 2019.09.30 Mesa git master (updated with bunch of panfrost changes from Alyssa Rosenzweig (main author of panfrost) including optimization (more instructions per bundle and remove of redundancies) * XFCE docker display some of notifications icons now (still not all). Forgot to mention than XFCE screenshot application doesn't display image in capture window after taking the screenshot (when it is possible to choose between save, send to an application, copy to buffer...) 2019.09.29 Mesa git master (not updated) * XFCE docker doesn't display icons in notification area (where package update, ibus methods, networkmanager are displayed) both in compositer enabled or disabled mode. I believe it worked i one mode at begining of my test, not sure, but it doesn't work in no compositor mode for time. see panfrost_medias/XFCE_docker_no_icons.20190929.png * Same kind of bug with gimp color chooser, after double-clicking on color a color chooser appear, then moving parameters make color rendering disappear. See panfrost_medias/Gimp_color_chooser.colors_disappear_after_changing_the_default_one.20190929.png 2019.09.28 Mesa git master (not updated) * Noticed that telegram crash with animated stickers occur at the end of the first loop by checking loop stickers animation only one in prederences. The error message seems to be related to ffmpeg invocation in apps, so probably there is probably no relation with mesa. 2019.09.27 Mesa git master (updated) using linux-5.3.1 stable * Flightgear flight simulator 2019.1.1 (fgfs) works with the most basics settings (using file autosave_2019_1.xml), able to move plane joystick. priority problems in ground faces vs fplane faces, only visible after taking off (See picture panfrost_medias/fgfs.20190927.jpg). If I move view or after a crash plane and some time waiting, pogram crashs in my case, with 4GB RAM, due to memory saturation, should be fairly usable with 8GB RAM ARM boards. * Firefox: In-web Ascii-art pseudo~3d voxel :) http://asciicker.com/x13/ works perfectly 2019.09.26 Mesa git master (yesterday sync) here and below using linux-5.3 rc * ExtremTuxRacer now works perfectly (perhaps due to commit 055497fa ?) * OpenBVE sort bug resolved too, probably same bug * SearchAndRescue2 has clean interface without bug in menu now. * Warzone2100 works fine too. I still have the program stoping by default with "Can't create a window, because: Couldn't find matching GLX visual", even if I remove wz2100 config directory, need to export SDL_VIDEO_X11_VISUALID= before starting warzone2100, works perfectly then (except some precision problems on near parallel surfaces, like mainbase, factory, power generator, see panfrost_medias/warzone2100.precision_bug.20190926.mp4) * Still the bug in Telegram with animated stickers. Strangly show 2 or 3 times the animation, and then freeze and core dump with message "[swscaler @ 0x9d5cdbc0] No accelerated colorspace conversion found from yuv420p to bgra." (ffmpeg error message), it looks like after first loop, telgram try to convert vector animation to video using ffmpeg 2019.09.16 Mesa git master (not sync * Frozen Bubble : Everything works, but the view is the same size of the window in full screen mode 2019.09.10 Mesa git master (not sync, no news on panfrost/lima front) * OpenBVE menu : slow, in game : triangles sorting bug (resolved 2019.09.26), but smooth and playable. * SearchAndRescue2 : same bugs than on intel, squares, joystick not detected (good rescue helicopter simulator game more than ten years ago). Not working * flightgear : loading everything well, use 3.5/4GB of my system (so still ~500MB memory available), and then coredump. * gl-117, crash after first splashscreen 2019.09.09 Mesa git master * LMMS (depend on libGL, don't know why for), tried with 37 tracks demo module "greippi - Krem Kaakkuja (Second Flight Remix)" with lor of analog synthe tracks. Everything works perfectly. * Firefox: :* Pico-8 FantasyConsole games work perfectly :* Tic80 FantasyConsoles games are slow (Tic80 binary application outside works perfectly) :* Tried one very simple UnityEngine 2d game, it was very slow. :* WebGL demo "aquarium", default 500 fish, 5FPS Not working * WebGL in chromium 2019.09.06 Working with last Mesa git master * OpenToonz (Ghibli/Folimage animation-film editor), fast and usable editor, need a more deep test * Synfig studio, seems to work, but there are big freezes/come back to usage, with on the terminal some "gtk-WARNING" about "drawing failure for widget 'gtkmm_GtkWindow': cairo_restore(), without matching cairo_save()". able to draw several circle but as soon I select other shape, it freeze at first draw. quit immediatly after a ctrl-c in a terminal where it was started 2019.09.05 Working with last Mesa git master * Armaguetronad (don't use tutorial choice, it crash) * Briquolo * Bzflag * ExtremeTuxRacer (glitchs on screen resolved 2019.09.26) * FooBillard++ * MegaGlest (bug with mouse selection could be related to GL feedback) * Minetest (perfect with default configuration, crash due OOM of shaders at max quality) * NeverBall * Pinball * Redeemer * SuperTuxKart most complex FX don't appear on screen * TIC-80 v50 * Warzone2100 big glitchs on screen (see screenshot and video, resolved 2019.09.26). After some change on system I can't start it back (see 2019.09.26 update too) * Krita (very slow) * Marble (KDE map application) * Pencil2d (animation tool, just perfect) * Telegram, work perfectly, but crash when an animated sticker (vector animation) is displayed on the chat. * WebGL on Firefox with some demos === Don't work === * 0ad * Astromenace * Blender 2.80+ * Godot: Glitchs on editor, crash at application start