mripard / sunxi-mali

GNU General Public License v2.0
100 stars 54 forks source link

mainline kernel + H3-GPU + X11-window/glmark2 extremly slow #23

Open wuweidong0107 opened 6 years ago

wuweidong0107 commented 6 years ago

Hi,guys I am testing mainline kernel + H3 + GPU by follow repo: https://github.com/mripard/sunxi-mali.git https://github.com/free-electrons/mali-blobs https://github.com/mripard/xf86-video-armsoc

About kernel: I've done these step:

  1. added mali node in dts
  2. cherrypicked this commit(https://github.com/NextThingCo/linux/commit/e390023d73a8dcbea85e5156e3930e37ca431472)
  3. CONFIG_DRM_FBDEV_OVERALLOC=200

About rootfs: I've done these step:

  1. install xf86-video-armsoc: $ git clone https://github.com/mripard/xf86-video-armsoc $./autogen.sh $ apt-get install libudev-dev $ make && make install $ cp /usr/local/lib/xorg/modules/drivers/* /usr/lib/xorg/modules/drivers/ $ cp xorg.conf /etc/X11/
  2. cp x11_dma_buf/*.so* rootfs/usr/lib/

I am able to run glmark2-es2.But it is extremly slow. Only 15 fps....Any hints will be appreciated.

giuliobenetti commented 6 years ago

Hi @wuweidong0107 can you paste in your x11 log? It seems x11 is using swrast or something like that instead of Mali for rendering.

wuweidong0107 commented 6 years ago

[ 12.212] X.Org X Server 1.16.4 Release Date: 2014-12-20 [ 12.212] X Protocol Version 11, Revision 0 [ 12.212] Build Operating System: Linux 3.16.0-0.bpo.4-armmp-lpae armv7l Debian [ 12.212] Current Operating System: Linux FriendlyELEC 4.14.0 #7 SMP Tue Dec 26 18:59:57 CST 2017 armv7l [ 12.212] Kernel command line: console=ttyS0,115200 earlyprintk root=/dev/mmcblk0p2 rootfstype=ext4 rw rootwait fsck.repair=yes panic=10 fbcon=map:0 [ 12.213] Build Date: 11 February 2015 01:18:06AM [ 12.213] xorg-server 2:1.16.4-1 (http://www.debian.org/support) [ 12.213] Current version of pixman: 0.32.6 [ 12.213] Before reporting problems, check http://wiki.x.org to make sure that you have the latest version. [ 12.213] Markers: (--) probed, () from config file, (==) default setting, (++) from command line, (!!) notice, (II) informational, (WW) warning, (EE) error, (NI) not implemented, (??) unknown. [ 12.214] (==) Log file: "/var/log/Xorg.0.log", Time: Thu Jan 1 08:00:18 1970 [ 12.245] (==) Using config file: "/etc/X11/xorg.conf" [ 12.245] (==) Using system config directory "/usr/share/X11/xorg.conf.d" [ 12.300] (==) No Layout section. Using the first Screen section. [ 12.300] (==) No screen section available. Using defaults. [ 12.300] () |-->Screen "Default Screen Section" (0) [ 12.300] () | |-->Monitor "" [ 12.301] (==) No device specified for screen "Default Screen Section". Using the first device section listed. [ 12.302] () | |-->Device "Allwinner sun4i DRM driver" [ 12.302] (==) No monitor specified for screen "Default Screen Section". Using a default monitor configuration. [ 12.302] (==) Automatically adding devices [ 12.302] (==) Automatically enabling devices [ 12.302] (==) Automatically adding GPU devices [ 12.360] (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist. [ 12.360] Entry deleted from font path. [ 12.360] (WW) The directory "/usr/share/fonts/X11/100dpi/" does not exist. [ 12.360] Entry deleted from font path. [ 12.360] (WW) The directory "/usr/share/fonts/X11/75dpi/" does not exist. [ 12.361] Entry deleted from font path. [ 12.361] (WW) The directory "/usr/share/fonts/X11/Type1" does not exist. [ 12.361] Entry deleted from font path. [ 12.361] (WW) The directory "/usr/share/fonts/X11/100dpi" does not exist. [ 12.361] Entry deleted from font path. [ 12.361] (WW) The directory "/usr/share/fonts/X11/75dpi" does not exist. [ 12.361] Entry deleted from font path. [ 12.361] (==) FontPath set to: /usr/share/fonts/X11/misc, built-ins [ 12.361] (==) ModulePath set to "/usr/lib/xorg/modules" [ 12.361] (II) The server relies on udev to provide the list of input devices. If no devices become available, reconfigure udev or disable AutoAddDevices. [ 12.361] (II) Loader magic: 0x59ff18 [ 12.361] (II) Module ABI versions: [ 12.361] X.Org ANSI C Emulation: 0.4 [ 12.361] X.Org Video Driver: 18.0 [ 12.361] X.Org XInput driver : 21.0 [ 12.361] X.Org Server Extension : 8.0 [ 12.363] (II) xfree86: Adding drm device (/dev/dri/card0) [ 12.363] (II) no primary bus or device found [ 12.363] falling back to /sys/devices/platform/display-engine/drm/card0 [ 12.363] (II) LoadModule: "glx" [ 12.379] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so [ 12.589] (II) Module glx: vendor="X.Org Foundation" [ 12.590] compiled for 1.16.4, module version = 1.0.0 [ 12.590] ABI class: X.Org Server Extension, version 8.0 [ 12.590] (==) AIGLX enabled [ 12.590] (II) LoadModule: "armsoc" [ 12.591] (II) Loading /usr/lib/xorg/modules/drivers/armsoc_drv.so [ 12.602] (II) Module armsoc: vendor="X.Org Foundation" [ 12.602] compiled for 1.16.4, module version = 1.4.0 [ 12.602] Module class: X.Org Video Driver [ 12.602] ABI class: X.Org Video Driver, version 18.0 [ 12.602] (II) ARMSOC: Driver for ARM Mali compatible chipsets [ 12.602] (++) using VT number 7

[ 12.632] (WW) Falling back to old probe method for armsoc [ 12.632] (II) No BusID or DriverName specified - opening /dev/dri/card0 [ 12.632] (II) Got BusID display-engine [ 12.632] (II) Opened DRM [ 12.633] (II) DeviceName is [/dev/dri/card0] [ 12.633] (II) bus_id is [display-engine] [ 12.633] (II) DriverName is [sun4i-drm] [ 12.633] (II) version is [1.0.0] [ 12.633] (II) Screen:0, CRTC:-1 [ 12.633] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support [ 12.633] (II) ARMSOC(0): Creating default Display subsection in Screen section "Default Screen Section" for depth/fbbpp 24/32 [ 12.633] (==) ARMSOC(0): Depth 24, (==) framebuffer bpp 32 [ 12.633] (==) ARMSOC(0): RGB weight 888 [ 12.633] (==) ARMSOC(0): Using gamma correction (1.0, 1.0, 1.0) [ 12.633] (==) ARMSOC(0): Default visual is TrueColor [ 12.633] (II) No BusID or DriverName specified - opening /dev/dri/card0 [ 12.633] (II) Got BusID display-engine [ 12.634] (II) Opened DRM [ 12.634] (II) DeviceName is [/dev/dri/card0] [ 12.634] (II) bus_id is [display-engine] [ 12.634] (II) DriverName is [sun4i-drm] [ 12.634] (II) version is [1.0.0] [ 12.634] (II) ARMSOC(0): Chipset: Mali [ 12.634] (II) ARMSOC(0): Buffer Flipping is Enabled [ 12.634] (II) ARMSOC(0): umplock is Enabled [ 12.634] (II) ARMSOC(0): Setting the video modes ... [ 12.635] (II) ARMSOC(0): Adding all CRTCs [ 12.635] (II) ARMSOC(0): Got CRTC: 0 (id: 28) [ 12.637] (II) ARMSOC(0): Output HDMI-1 has no monitor section [ 12.638] (II) ARMSOC(0): Printing probed modes for output HDMI-1 [ 12.638] (II) ARMSOC(0): Modeline "1024x768"x60.0 65.00 1024 1048 1184 1344 768 771 777 806 -hsync -vsync (48.4 kHz e) [ 12.638] (II) ARMSOC(0): Modeline "800x600"x60.3 40.00 800 840 968 1056 600 601 605 628 +hsync +vsync (37.9 kHz e) [ 12.638] (II) ARMSOC(0): Modeline "800x600"x56.2 36.00 800 824 896 1024 600 601 603 625 +hsync +vsync (35.2 kHz e) [ 12.638] (II) ARMSOC(0): Modeline "848x480"x60.0 33.75 848 864 976 1088 480 486 494 517 +hsync +vsync (31.0 kHz e) [ 12.638] (II) ARMSOC(0): Modeline "640x480"x59.9 25.18 640 656 752 800 480 490 492 525 -hsync -vsync (31.5 kHz e) [ 12.638] (II) ARMSOC(0): Output HDMI-1 connected [ 12.638] (II) ARMSOC(0): Using exact sizes for initial modes [ 12.639] (II) ARMSOC(0): Output HDMI-1 using initial mode 1024x768 [ 12.639] (II) ARMSOC(0): Got KMS resources [ 12.639] (==) ARMSOC(0): DPI set to (96, 96) [ 12.639] (II) Loading sub module "dri2" [ 12.639] (II) LoadModule: "dri2" [ 12.639] (II) Module "dri2" already built-in [ 12.639] (II) Loading sub module "exa" [ 12.639] (II) LoadModule: "exa" [ 12.642] (II) Loading /usr/lib/xorg/modules/libexa.so [ 12.653] (II) Module exa: vendor="X.Org Foundation" [ 12.654] compiled for 1.16.4, module version = 2.6.0 [ 12.654] ABI class: X.Org Video Driver, version 18.0 [ 12.654] (II) Loading sub module "fb" [ 12.654] (II) LoadModule: "fb" [ 12.655] (II) Loading /usr/lib/xorg/modules/libfb.so [ 12.671] (II) Module fb: vendor="X.Org Foundation" [ 12.671] compiled for 1.16.4, module version = 1.0.0 [ 12.671] ABI class: X.Org ANSI C Emulation, version 0.4 [ 12.671] (--) Depth 24 pixmap format is 32 bpp [ 12.686] (II) ARMSOC(0): Initialized a depth-32 visual for XRGB8888 [ 12.687] (II) ARMSOC(0): Soft EXA mode [ 12.688] (II) EXA(0): Driver allocated offscreen pixmaps [ 12.688] (II) EXA(0): Driver registered support for the following operations: [ 12.688] (II) Solid [ 12.688] (II) Copy [ 12.689] (II) Composite (RENDER acceleration) [ 12.689] (II) ARMSOC(0): Setting swap chain size: 2 [ 12.689] (II) ARMSOC(0): [DRI2] Setup complete [ 12.689] (II) ARMSOC(0): [DRI2] DRI driver: armsoc [ 12.689] (==) ARMSOC(0): Backing store enabled [ 12.690] (==) ARMSOC(0): Silken mouse enabled [ 12.697] (II) ARMSOC(0): HW cursor init() [ 12.697] (EE) ARMSOC(0): ERROR: not enough planes for HW cursor [ 12.851] (II) ARMSOC(0): RandR 1.2 enabled, ignore the following RandR disabled message. [ 12.852] (==) ARMSOC(0): DPMS enabled [ 12.853] (--) RandR disabled [ 12.897] (II) SELinux: Disabled on system [ 12.904] (EE) AIGLX error: dlopen of /usr/lib/arm-linux-gnueabihf/dri/armsoc_dri.so failed (/usr/lib/arm-linux-gnueabihf/dri/armsoc_dri.so: cannot open shared object file: No such file or directory) [ 12.904] (EE) AIGLX: reverting to software rendering [ 13.064] (II) AIGLX: Loaded and initialized swrast [ 13.065] (II) GLX: Initialized DRISWRAST GL provider for screen 0 [ 13.068] (II) ARMSOC(0): Setting screen physical size to 270 x 203 [ 13.473] (II) config/udev: Adding input device r_gpio_keys (/dev/input/event0) [ 13.474] () r_gpio_keys: Applying InputClass "evdev keyboard catchall" [ 13.474] (II) LoadModule: "evdev" [ 13.474] (II) Loading /usr/lib/xorg/modules/input/evdev_drv.so [ 13.498] (II) Module evdev: vendor="X.Org Foundation" [ 13.498] compiled for 1.16.0, module version = 2.9.0 [ 13.498] Module class: X.Org XInput Driver [ 13.498] ABI class: X.Org XInput driver, version 21.0 [ 13.498] (II) Using input driver 'evdev' for 'r_gpio_keys' [ 13.499] () r_gpio_keys: always reports core events [ 13.499] () evdev: r_gpio_keys: Device: "/dev/input/event0" [ 13.499] (--) evdev: r_gpio_keys: Vendor 0x1 Product 0x1 [ 13.499] (--) evdev: r_gpio_keys: Found keys [ 13.500] (II) evdev: r_gpio_keys: Configuring as keyboard [ 13.500] () Option "config_info" "udev:/sys/devices/platform/r_gpio_keys/input/input0/event0" [ 13.500] (II) XINPUT: Adding extended input device "r_gpio_keys" (type: KEYBOARD, id 6) [ 13.500] () Option "xkb_rules" "evdev" [ 13.500] () Option "xkb_model" "pc105" [ 13.500] () Option "xkb_layout" "us" [ 13.508] (II) config/udev: Adding input device Logitech USB Receiver (/dev/input/event1) [ 13.508] () Logitech USB Receiver: Applying InputClass "evdev keyboard catchall" [ 13.508] (II) Using input driver 'evdev' for 'Logitech USB Receiver' [ 13.508] () Logitech USB Receiver: always reports core events [ 13.508] () evdev: Logitech USB Receiver: Device: "/dev/input/event1" [ 13.508] (--) evdev: Logitech USB Receiver: Vendor 0x46d Product 0xc534 [ 13.508] (--) evdev: Logitech USB Receiver: Found keys [ 13.509] (II) evdev: Logitech USB Receiver: Configuring as keyboard [ 13.509] () Option "config_info" "udev:/sys/devices/platform/soc/1c1b400.usb/usb6/6-1/6-1:1.0/0003:046D:C534.0001/input/input1/event1" [ 13.509] (II) XINPUT: Adding extended input device "Logitech USB Receiver" (type: KEYBOARD, id 7) [ 13.509] () Option "xkb_rules" "evdev" [ 13.509] () Option "xkb_model" "pc105" [ 13.509] () Option "xkb_layout" "us" [ 13.517] (II) config/udev: Adding input device Logitech USB Receiver (/dev/input/event2) [ 13.517] () Logitech USB Receiver: Applying InputClass "evdev pointer catchall" [ 13.517] () Logitech USB Receiver: Applying InputClass "evdev keyboard catchall" [ 13.517] (II) Using input driver 'evdev' for 'Logitech USB Receiver' [ 13.517] () Logitech USB Receiver: always reports core events [ 13.517] () evdev: Logitech USB Receiver: Device: "/dev/input/event2" [ 13.517] (--) evdev: Logitech USB Receiver: Vendor 0x46d Product 0xc534 [ 13.518] (--) evdev: Logitech USB Receiver: Found 20 mouse buttons [ 13.518] (--) evdev: Logitech USB Receiver: Found scroll wheel(s) [ 13.518] (--) evdev: Logitech USB Receiver: Found relative axes [ 13.518] (--) evdev: Logitech USB Receiver: Found x and y relative axes [ 13.518] (--) evdev: Logitech USB Receiver: Found absolute axes [ 13.518] (II) evdev: Logitech USB Receiver: Forcing absolute x/y axes to exist. [ 13.518] (--) evdev: Logitech USB Receiver: Found keys [ 13.518] (II) evdev: Logitech USB Receiver: Configuring as mouse [ 13.518] (II) evdev: Logitech USB Receiver: Configuring as keyboard [ 13.518] (II) evdev: Logitech USB Receiver: Adding scrollwheel support [ 13.518] () evdev: Logitech USB Receiver: YAxisMapping: buttons 4 and 5 [ 13.518] () evdev: Logitech USB Receiver: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200 [ 13.518] () Option "config_info" "udev:/sys/devices/platform/soc/1c1b400.usb/usb6/6-1/6-1:1.1/0003:046D:C534.0002/input/input2/event2" [ 13.518] (II) XINPUT: Adding extended input device "Logitech USB Receiver" (type: KEYBOARD, id 8) [ 13.518] () Option "xkb_rules" "evdev" [ 13.519] () Option "xkb_model" "pc105" [ 13.519] () Option "xkb_layout" "us" [ 13.520] (II) evdev: Logitech USB Receiver: initialized for relative axes. [ 13.520] (WW) evdev: Logitech USB Receiver: ignoring absolute axes. [ 13.521] () Logitech USB Receiver: (accel) keeping acceleration scheme 1 [ 13.521] () Logitech USB Receiver: (accel) acceleration profile 0 [ 13.521] () Logitech USB Receiver: (accel) acceleration factor: 2.000 [ 13.521] () Logitech USB Receiver: (accel) acceleration threshold: 4 [ 13.523] (II) config/udev: Adding input device Logitech USB Receiver (/dev/input/mouse0) [ 13.523] (II) No input driver specified, ignoring this device. [ 13.523] (II) This device may have been added with another device file. [ 13.586] (II) ARMSOC(0): hotplug=1, match=1

giuliobenetti commented 6 years ago

@wuweidong0107 it seems you didn't compile armsoc_dri.so since it complains it can't find it

wuweidong0107 commented 6 years ago

Is armsoc_dri.so important? Where can I find its sources?

giuliobenetti commented 6 years ago

It is the interface for using kernel dri. xf86-video-armsoc has the sources, but when compiling it, you need libdri already compiled for target.

wuweidong0107 commented 6 years ago

I prefer to disable AIGLX by changing my xorg.conf: Section "Device" Identifier "Allwinner sun4i DRM driver" Driver "armsoc" Option "DRI2" "false" EndSection

Section "ServerFlags" Option "AIGLX" "off" EndSection

Section "Extensions" Option "Composite" "Disable" EndSection

Am I on the right path?

giuliobenetti commented 6 years ago

You need DRI2 set to true to have HW acceleration. Then x11 will complain there is not armsoc_dri.so but you need it to interface with kernel dri. so retry to:

Then it should work properly. I don't know AIGLX to tell the truth

wuweidong0107 commented 6 years ago

Just finish your suggest. No luck

  1. I compile this repo on my H3 board: git clone https://github.com/robclark/libdri2 cd libdri2 ./autogen.sh ./configure --prefix=/usr make && make install && ldconfig
  2. recompile xf86-video-armsoc, but not find armsoc_dri.so: autoreconf -v -i ./configure apt-get install libudev-dev make && make install cp /usr/local/lib/xorg/modules/drivers/* /usr/lib/xorg/modules/drivers/

the X11 windows is still lagging

giuliobenetti commented 6 years ago

Can you pastebin xf86-video-armsoc configure and build log? We need to understand if it found libdri correctly. also pastebin x11 log. thanks

wuweidong0107 commented 6 years ago
  1. cat /etc/X11/xorg.conf Section "Device" Identifier "Allwinner sun4i DRM driver" Driver "armsoc" Option "DRI2" "true" EndSection

  2. xf86-video-armsoc: config.log

  3. xorg.conf Xorg.0.log

giuliobenetti commented 6 years ago

Can you also post xf86-video-armsoc build log? I suspect you need to configure it with: ./configure --with-drmmode=sun4i

Thanks

wuweidong0107 commented 6 years ago

I run ./configure --with-drmmode=sun4i. configure log is here: config.log I notice that WARNING: unrecognized options: --with-drmmode...

"make && make install" 's log is here: make_make_install.log

the X11 windows is still lagging.

wuweidong0107 commented 6 years ago

kernle's log: dmesg.log

giuliobenetti commented 6 years ago

It complains about: [ 12.904] (EE) AIGLX error: dlopen of /usr/lib/arm-linux-gnueabihf/dri/armsoc_dri.so failed (/usr/lib/arm-linux-gnueabihf/dri/armsoc_dri.so: cannot open shared object file: No such file or directory) [ 12.904] (EE) AIGLX: reverting to software rendering

It's looking for armsoc_dri.so in different folder than yours. Try create symbolic link with: ln -s /usr/lib/arm-linux-gnueabihf/dri/armsoc_dri.so pointing where you have your real armsoc_dri.so In this way AIGLX should find library. It's strange, because for the rest it can find it. But give it a try.

Let me know

wuweidong0107 commented 6 years ago

In my rootfs there is no armsoc_dri.so in any directory...still don't know how to get one...

giuliobenetti commented 6 years ago

Can you find armsoc_drv.so depencies? Like: readelf -d elfbin armsoc_drv.so or ldd armsoc_drv.so

At least we check if that library expects armsoc_dri.so or something else. Unfortunately I don't have environment setup to give a try.

Let me know

wuweidong0107 commented 6 years ago

$ cd /usr/lib/xorg/modules/drivers $ ldd armsoc_drv.so linux-vdso.so.1 (0xbefc1000) libdrm.so.2 => /usr/lib/arm-linux-gnueabihf/libdrm.so.2 (0xb6ea4000) libpixman-1.so.0 => /usr/lib/arm-linux-gnueabihf/libpixman-1.so.0 (0xb6e1c000) libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0xb6d2e000) /lib/ld-linux-armhf.so.3 (0xb6eec000) libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0xb6cba000) libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0xb6c97000)

giuliobenetti commented 6 years ago

Well, it seems there's no direct dependency with armsoc_dri.so So, try to launch strace when starting X11 and pastebin log. In this way we can check all syscalls, included when and who tries to dlopen armsoc_dri.so

mripard commented 6 years ago

I've had similar issues when the GPU clock was not configured properly. can you paste the output of /sys/kernel/debug/clk/clk_summary while your GPU tasks are running?

wuweidong0107 commented 6 years ago

cat /sys/kernel/debug/clk/clk_summary while running glmark2-es2. clk_summary.txt

wuweidong0107 commented 6 years ago

glmark2-es2.log score 16...very awkward

h3 maili dts: h3_mali_dts_node.txt

giuliobenetti commented 6 years ago

@mripard could it be AIGLX error inside his x11 log? https://github.com/mripard/sunxi-mali/files/1590967/Xorg.0.log

It seems he doesn't have armsoc_dri.so properly compiled or installed. So AIGLX falls back to SWRAST. Or it isn't mandatory to have armsoc_dri.so (it should be user-space driver to interface with DRI, right) ?

mripard commented 6 years ago

@wuweidong0107 the frequencies look correct. IIRC, glmark-es2 has an option to do some off-screen rendering, can you try to use that and report the results? Are you running it fullscreen?

@giuliobenetti this message shouldn't cause any harm. The glmark2-es2 logs show that we're using the correct opengl provider anyway

wuweidong0107 commented 6 years ago

Can anybody offer a rom that use mainline kernel with x11+gpu for H3 ?

mripard commented 6 years ago

Wait, what have you been testing if you don't have one?

wuweidong0107 commented 6 years ago

....Mine is extremly slow. And I heard yours works perfectly. So I would like to test yours...

mripard commented 6 years ago

I never tested it on an H3

Icenowy commented 6 years ago

@mripard I think currently the code didn't wire the PMU interrupt.

I met this on H5, which I slightly modified for Mali-450 --the driver waits for PMU interrupt, but as it's not wired by the driver it cannot get it, so it timeout and gets slow.

mripard commented 6 years ago

Can you test the branch test-pmu I just pushed?

The other results I asked for would still be valuable.

maximst commented 6 years ago

I have tha same problem on H3 armbian. When i run glxgears i get the errors:

DISPLAY=:0 glxgears                                                
libGL error: unable to load driver: sun4i-drm_dri.so
libGL error: driver pointer missing
libGL error: failed to load driver: sun4i-drm
503 frames in 5.0 seconds = 100.568 FPS
590 frames in 5.0 seconds = 117.965 FPS
554 frames in 5.0 seconds = 110.751 FPS
532 frames in 5.0 seconds = 106.283 FPS
giuliobenetti commented 6 years ago

You don't have sun4i-drm.so compiled probably. Here's the comment above on how to be sure to be compiled: https://github.com/mripard/sunxi-mali/issues/23#issuecomment-354273458

mripard commented 6 years ago

glxgears is an OpenGL application, the Mali supports only the Open GL ES API. So, it's not the same issue.

maximst commented 6 years ago

@wuweidong0107 what distributive are You using? You can change root password to 1234 and create dd image for me? Please, if not difficult. Thank, You!

timdorohin commented 6 years ago

just use glmark2-es2 --fullscreen armsoc can't use G2D on mainline kernel, so buffers are composited by CPU (slow) in fullscreen mode it use buffer swap - zero-copy (fast)

ghost commented 6 years ago

I also noticed before that retroarch runs faster in fullscreen. Tim Dorohin is right.

cuu commented 5 years ago

@wuweidong0107 which kernel are you using for testing?

wuweidong0107 commented 5 years ago

@cuu base on: git clone https://github.com/friendlyarm/linux.git -b sunxi-4.14.y --depth 1

davidebeatrici commented 5 years ago

OpenGL applications can be offloaded to the GPU with https://ptitseb.github.io/gl4es.

I'm encountering the exact same issues as @wuweidong0107 on Armbian Stretch, with kernel linux-4.19.25-sunxi.