Important: Please read the Qt Code of Conduct -

QML animation make large load of CPU core I.MX6

  • I have embedded device with Freescale I.MX6 SoC. I compile Qt5.3.1 from source with support OpenGL and when I run my application I have very large use cores of I.MX6 instead use GPU at max. Other more complex animations use core of CPU even greater. Look at the htop screenshot. If I build my QML application for Windows Angle CPU of PC load at 2...3% - all work at GPU at maximum. Does works OpenGLat I.MX6 correctly or for embedded Qt is it normally (i mean great load core CPU)?

    @import QtQuick 2.2
    import QtQuick.Window 2.1
    import QtQuick.Controls 1.2
    import QtQuick.Controls.Styles 1.2

    Window {
    visible: true
    width: 360
    height: 360

    MouseArea {
    anchors.fill: parent
    onClicked: {

    ProgressBar {
    anchors.fill: parent
    anchors.margins: 40

    indeterminate: true
    style: ProgressBarStyle {
    background: Rectangle {
    radius: 2
    color: "lightgray"
    border.color: "gray"
    border.width: 1
    implicitWidth: 200
    implicitHeight: 24
    progress: Rectangle {
    border.color: "steelblue"
    color: "lightsteelblue"

    // Indeterminate animation by animating alternating stripes:
    Item {
     anchors.fill: parent
     anchors.margins: 1
     visible: control.indeterminate
     clip: true
     Row {
      Repeater {
       Rectangle {
        color: index % 2 ? "steelblue" : "lightsteelblue"
        width: 20 ; height: control.height
       model: control.width / 20 + 2
      XAnimator on x {
       from: 0 ; to: 40
       loops: Animation.Infinite
       running: control.indeterminate
       duration: 600



    and screenshot of htop

  • IMX-6 has single dual and quad core versions, open GL uses more Ram and heavily loads the core it is better to use IMx-6 Quad core with 512 0r 1GB RAM the processor is designed for audio video applications but still it gets hot very quickly even when running light weight applications..........

  • thank you for reply.

    Examples from Vivante load core of CPU more less then Qt application - 5...10%.
    If I use ListView and scroll content by finger "left-rigth" - core CPU loaded by render thread even more (upto 70% and more)...
    So is it normally, or it is wrong use compiler options, or something else?

    P.S If I use qml animation, power consumption is increases +5 watt. Explicitly GPU is activated. But the CPU core is loaded very hardly too.

Log in to reply