AnsweredAssumed Answered

Animation QML application make large load of  CPU core I.MX6

Question asked by Dmitry Pozhidaev on Aug 26, 2014
Latest reply on Dec 9, 2015 by Caio Pereira
Branched to a new discussion

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% -  GPU works at maximum.  Does works OpenGLat I.MX6 correctly or for embedded Qt is it normally (i mean great load core CPU)?

 

The Linux kernel is 3.10.17

 

Source of test application:

 

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: {

   Qt.quit();

  }

}

 

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

      }

     }

    }

   }

  }

}

}

 

screenshot.png

Outcomes