Details
-
Bug
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
6.5.8
-
None
Description
Hello,
I am currently working on optimizing the QtWebEngine (Chromium) build in a Yocto environment for an ARM64 (aarch64) architecture. The primary goal is to reduce the system-time taken from a link-click to the finished loading of a page. Currently, the system-time consistently hovers around 200ms, which is noticeably slower compared to Android Chromium on the same hardware.
To address this, I've attempted to compile QtWebEngine with the -O3 optimization flag, expecting it might improve performance. I've added a .bbappend file for qtwebengine with the following modifications:
CXXFLAGS:append = " -03" FULL_OPTIMIZATION:append:aarch64 = " -O3" EXTRA_OECMAKE += "-DCMAKE_C_FLAGS_RELEASE=-O3 -DCMAKE_CXX_FLAGS_RELEASE=-O3"
Upon inspecting the log.compile file in Yocto, I noticed that -O3 is being used, but not as the last optimization flag. The final flag still is -O2, which overrides the previous -O3 setting.
My questions are:
- How can I ensure that -O3 is the last and therefore the effective optimization flag used by g++ during the compilation of QtWebEngine?
- What steps can I take to compile the complete Qt suite with the -O3 optimization level and with absolutely no debug information, not even minimal debug info?
Any guidance or insights on this matter would be greatly appreciated, especially if there are known differences in how Yocto handles these flags compared to other build environments, or any specific considerations for QtWebEngine and how to make it faster.
Thank you for your assistance.