Chromium with Linux Image V2.8 on IMX6DL very slow performance

Hello,

We build the latest LinuxImageV2.8 for IMX6DL with OpenEmbedded (core) and include Chromium by adding the following lines to the local.conf file:

IMAGE_INSTALL_append = " chromium-x11"
LICENSE_FLAGS_WHITELIST += "commercial_libav commercial_x264"

MACHINE ?= "colibri-imx6"

When starting Chromium using the Terminal we get a lot of GL_INVALID_FRAMEBUFFER_OPERATION errors when moving the mouse over the chromium GUI. If we build the same image for T30, we don’t get any GL_INVALID_FRAMEBUFFER_OPERATION errors.

The output is the following:

sh-4.4# chromium --no-sandbox

[714:759:0912/141156.921250:ERROR:object_proxy.cc(617)] Failed to call method: org.freedesktop.Notifications.GetCapabilities: object_path= /org/freedesktop/Notifications: org.freedesktop.DBus.Error.ServiceUnknown: The name org.freedesktop.Notifications was not provided by any .service files
[745:745:0912/141159.611196:ERROR:gles2_cmd_decoder.cc(4693)] [.DisplayCompositor-0x88f9500]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glClear: framebuffer incomplete (check)
[745:745:0912/141159.611962:ERROR:gles2_cmd_decoder.cc(4693)] [.DisplayCompositor-0x88f9500]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete (check)
[745:745:0912/141159.612628:ERROR:gles2_cmd_decoder.cc(4693)] [.DisplayCompositor-0x88f9500]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete (check)
[745:745:0912/141159.613186:ERROR:gles2_cmd_decoder.cc(4693)] [.DisplayCompositor-0x88f9500]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glDrawElements: framebuffer incomplete (check)
[745:745:0912/141159.743478:ERROR:gles2_cmd_decoder.cc(4693)] [.DisplayCompositor-0x88f9500]GL ERROR :GL_INVALID_FRAMEBUFFER_OPERATION : glClear: framebuffer incomplete (check)

Chromium works, but visual content is not updated correctly and it’s very slow.

  • What can we do to get rid of the
    GL_INVALID_FRAMEBUFFER_OPERATION
    errors?
  • How can we monitor the GPU load and
    check if hardware acceleration is
    activated?
  • How can we activate the hardware
    acceleration, if it’s is not activated
    on the Linux image?

Thanks

HI @aggi

Welcome to the Toradex Community!!!

What is your application? Why do you need to use chromium?

  • Concerning the GL_INVALID_FRAMEBUFFER_OPERATION, can you try this chromium recipe.
  • You can do the GPU Monitoring with the Tool described in the following Post.

Best regards, Jaski

Thanks for your help

Our application is the following:

We want to build an HMI hardware (Touch-Tablet) that uses a browser (e.g. chromium) to display a website in kiosk mode, this website is used to operate production equipment. The website uses react and material UI and a lot of javascript. In future we want to show videos and documents too.

It looks like chromium is faster and even more stable than firefox, because of that we try to use chromium. If you can recommend a different better browser, it would be helpful.

We switched to morty branch (Toradex Version2.7) to use the recommended chromium recipe for Chromium 52.0.2743.76.
It looks like that solves the GL_INVALID_FRAMEBUFFER_OPERATION errors. But the performance still is not better, and some components of the website are not rendered correctly.

With chromium 67.0.3396.87 that is included in the LinuxImageV2.8 for IMX6DL it seemed that the website was rendered more correct except the perpetual GL_INVALID_FRAMEBUFFER_OPERATION errors that lead to “clipping errors”.

  • What Linux Image do you recommend as base for further development 2.7 or V2.8?
  • What can we do to improve the performance?
  • What can we do to get Chromium on the latest LinuxImage V2.8 (rocko) with Chromium version 67.0.3396.87 to work?

Thanks

hi

Did you try out the steps I mentioned in the post above?

What Linux Image do you recommend as base for further development 2.7 or V2.8?
Since 2.8 is not released yet, we recommend to use 2.7.

What can we do to improve the performance?
First you need to find out, if the GPU is already used or not? If is not, then the hardware acceleration should be enabled. If it is already enabled, then check for the cpu usage, especially by java scripts? Which java version are you using by the way?

What can we do to get Chromium on the latest LinuxImage V2.8 (rocko) with Chromium version 67.0.3396.87 to work?
Did you try the step I mentioned above?

Best regards