~andreas-pokorny/mir/configure-clear-color

« back to all changes in this revision

Viewing changes to tests/integration-tests/test_session.cpp

  • Committer: Tarmac
  • Author(s): Daniel van Vugt
  • Date: 2014-01-10 03:23:02 UTC
  • mfrom: (1300.4.26 texture-cache)
  • Revision ID: tarmac-20140110032302-k01lhun9uhg6gu3i
Cache surface textures on the GPU to eliminate duplicate uploads.

At the moment GLRenderer is unconditionally uploading a new copy of every
visible surface to the GPU, on every frame. This branch changes that to
only upload textures for visible surfaces when they change.

In a realistic GUI with multiple surfaces where most of them don't change
on every frame, this eliminates most of the texture copies. So performance
with multiple visible surfaces should be greatly increased.

Also resolves bug: LP: #1263592. Fixes: https://bugs.launchpad.net/bugs/1263592.

Approved by PS Jenkins bot, Alexandros Frantzis, Alan Griffiths, Robert Carr.

Show diffs side-by-side

added added

removed removed

Lines of Context:
96
96
            void end() const override
97
97
            {
98
98
            }
 
99
            void suspend() override
 
100
            {
 
101
            }
99
102
        };
100
103
 
101
104
        struct StubRendererFactory : public mc::RendererFactory