Revision e09e0f0...

Go back to digest for 13th March 2011

Features in Office

Dmitry Kazakov committed changes in [calligra/krita-bounded-pooler-kazakov] /image:

Implemented a new bounded tile data pooler

(!) Important notice: it would be more safe to perform 'make clean'
in krita/image/ directory if you decide to switch to this branch

Well, this commit implements a new memory-bounded pooler thread. The
configuration of the pool is done using a special option
"memoryPoolLimitPercent". It sets the percent of the memory, that you
would like to spend on the tiles pool. Please notice, that this value
is included in hard/soft limits as well. That means Krita will never
take more than Hard Limit memory on tiles and clones together.

This implementation performs not full power yet. I haven't done any
optimizations, so the highest efficiency it can reach now is 50% of
tiles pre-clone hits. I could get this numbers on gradient tool and on
very short brush strokes. It is quite curious, but the longer stroke
you do, the less efficient the pooler is. I hope i'll get it fixed
soon.

File Changes

Added 2 files
  • /image/tiles3/tests
  •   krita/kis_tile_data_pooler_test.cpp
  •   krita/kis_tile_data_pooler_test.h
Modified 10 files
  • /image
  •   krita/kis_image_config.cpp
  •   krita/kis_image_config.h
  •   krita/tiles3/kis_tile_data_interface.h
  •   krita/tiles3/kis_tile_data_pooler.cc
  •   krita/tiles3/kis_tile_data_pooler.h
  •   krita/tiles3/kis_tile_data_store.cc
  •   krita/tiles3/kis_tile_data_store.h
  •   krita/tiles3/swap/kis_tile_data_swapper_p.h
  •   krita/tiles3/tests/CMakeLists.txt
  •   krita/tiles3/tests/kis_store_limits_test.cpp
12 files changed in total