Merge lp:~fboucault/unity-2d/cache_dash_background into lp:unity-2d/3.0
Proposed by
Florian Boucault
Status: | Merged | ||||
---|---|---|---|---|---|
Approved by: | Florian Boucault | ||||
Approved revision: | 617 | ||||
Merged at revision: | 626 | ||||
Proposed branch: | lp:~fboucault/unity-2d/cache_dash_background | ||||
Merge into: | lp:unity-2d/3.0 | ||||
Diff against target: |
15 lines (+5/-0) 1 file modified
places/dash.qml (+5/-0) |
||||
To merge this branch: | bzr merge lp:~fboucault/unity-2d/cache_dash_background | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Ricardo Salveti (community) | Needs Fixing | ||
Review via email: mp+66957@code.launchpad.net |
Description of the change
[dash] Cache background rendering when in desktop mode.
To post a comment you must log in.
In general this change makes the dashboard consume a lot less CPU when using with -opengl.
Before the patch (at the more apps screen): ExPrivate: :drawPixmapFrag ments(QPainter: :PixmapFragment const*, int, QPixmap const&, QFlags< QPainter: :PixmapFragment Hint>) <QPainter: :PixmapFragment , 16>::realloc(int, int) unlock_ irqrestore dcache_ clean_area unlock_ irq processor_ id rivate: :drawSubtreeRec ursive( QGraphicsItem* , QPainter*, QTransform const*, QRegion*, QWidget*, float, QTransform const*) ap(QPainter* , QRect const&, QMargins const&, QPixmap const&, QRect const&, QMargins const&, QTileRules const&, QFlags< QDrawBorderPixm ap::DrawingHint >) stop_sched_ tick from_freelist
samples pcnt function
9781.00 29.2% QGL2PaintEngine
7405.00 22.1% QVarLengthArray
1078.00 3.2% __memzero
977.00 2.9% _raw_spin_
778.00 2.3% cpu_v7_
775.00 2.3% _raw_spin_
759.00 2.3% debug_smp_
441.00 1.3% QGraphicsSceneP
394.00 1.2% qDrawBorderPixm
392.00 1.2% tick_nohz_
383.00 1.1% add_preempt_count
359.00 1.1% sub_preempt_count
342.00 1.0% get_page_
After applying the patch (at the more apps screen): processor_ id unlock_ irqrestore rivate: :drawSubtreeRec ursive( QGraphicsItem* , QPainter*, QTransform const*, QRegion*, QWidget*, float, QTransform const*) <QPainter: :PixmapFragment , 16>::realloc(int, int) composite_ over_8888_ 8888_asm_ neon ine::drawImage( QRectF const&, QImage const&, QRectF const&, QFlags< Qt::ImageConver sionFlag> ) unlock_ irq rivate: :draw(QGraphics Item*, QPainter*, QTransform const*, QTransform const*, QRegion*, QWidget*, float, QTransform const*, bool, bool) inePrivate: :drawImage( QPointF const&, QImage const&, void (*)(unsigned char*, int, unsigned char const*, int, int, int, int), QRect const&, int, QRect const&) dcache_ clean_area
samples pcnt function
947.00 8.6% debug_smp_
638.00 5.8% CopyTexture32Bits
581.00 5.3% _raw_spin_
560.00 5.1% QGraphicsSceneP
524.00 4.8% QVarLengthArray
356.00 3.2% pixman_
305.00 2.8% QRasterPaintEng
278.00 2.5% _raw_spin_
235.00 2.1% QGraphicsSceneP
233.00 2.1% __memzero
183.00 1.7% QRasterPaintEng
177.00 1.6% cpu_v7_
The screen also seems faster in general, but I also saw two issues with the change: people. canonical. com/~rsalveti/ unity-2d/ unity-2d- trunk-opengl. png people. canonical. com/~rsalveti/ unity-2d/ unity-2d- cache_dash_ background- opengl. png
1 - The border and the background transparency changed, as you can see with the following screenshots:
* http://
* http://
2 - The dash is still wasting time at the 'more apps' screen even when nothing is being changed at the screen, as you can see from the trace above (but this may be tracked at another bug).
Changing status to 'Needs Fixing' because of the new background behavior at the dash.