This document discusses performance optimizations made to the QtWebKit browser on MIPS platforms. It describes profiling the browser to identify optimization opportunities in video/audio decoding, image operations, and drawing functions. SIMD instructions on the MIPS processor were used to optimize the GStreamer multimedia framework and Qt drawing. Measurements showed up to 30% faster rendering times after optimizing Latin-1 to UTF-16 conversion, alpha blending, color conversions, and string operations using MIPS DSIMD instructions. Most changes were merged upstream but not backported to older Qt versions.
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Improving Performance of a WebKit Port MIPS Platform (ELC 2014)
1. IMPROVING $PORT
PERFORMANCE ON $ARCH
PLATFORM-BASED PERFORMANCE TUNING OF WEBKIT
(PORT=QT ARCH=MIPS74KF)
Embedded Linux Conference
April 29 — May 1, 2014
Adrián Pérez de Castro
9. WHERE TO OPTIMIZE?
Can we improve the platform overall,
not just WebKit?
Yes!
QtWebKit uses the Qt drawing functions.
A/V decoding uses GStreamer, which uses Orc.
Good candidates for SIMD code.
26. UP TO 30% FASTER RENDERING
Thanksto:
Orc backend using MIPS DSP instructions
QImagecomposition operations
Color conversion (RGB16/888→ARGB32)
Alpha premultiplication and blending
String conversions and comparisons
27. UPSTREAM STATUS
Orc backend complete upstream
Initial work based on Qt 4.8
Most of the code is already in Qt 5.2
Rest in the next release
No backport to Qt 4.8
28. THANK YOU
FOR YOUR ATTENTION
perezdecastro.org
+AdrianPerezDeCastro
@aperezdc