<div class="gmail_quote"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
It's a bug. The next time a user calls KisTileReadWriteProcessor::setupProcessor() or KisTileReadWriteProcessor::KisTileReadWriteProcessor() with different args and then calls copyData, dataIdx won't be set to the correct value.<br>
</blockquote></div><br>=)<br>It's done purposely to test this speed boost. More than that with current test-suite it works fine as applyProcessor calls setupProcessor() with the same data-pointer all the times. I know it's dirty hack, but, all the same, i'm going to change processors' interface now.<br>
<br>And good news! I think i found the cause of this speed doubling. It's cache misses. I managed to run callgrind with special options, and test ran like on real processor - cache read misses was almost 90% on the version before commit :)<br>
<br>PS:<br>valgrind --tool=callgrind --I1=65536,1024,16 --D1=65536,1024,16 --L2=262144,1024,32 ./dm_perfomance_test<br><br>PS: I'm not sure about associativity, but my caches are L1: 64+64KiB, L2: 256KiB<br><br clear="all">
<br>-- <br>Dmitry Kazakov<br>