VC5Decompressor::decode(): fully reconstruct each channel first -~6.5% instead of reconstructing the same wavelet level for each channel.
VC5Decompressor::decode(): fully reconstruct each channel first -~6.5%
instead of reconstructing the same wavelet level for each channel.

Since this mostly allows to keep the new lowpass in CPU cache,
seems to be better.

raw.pixls.us-unique/GoPro/HERO6 Black$ /usr/src/googlebenchmark/tools/compare.py -a benchmarks ~/rawspeed/build-Clang-Release/src/utilities/rsbench/rsbench{-old,} --benchmark_counters_tabular=true --benchmark_min_time=0.00000001 --benchmark_repetitions=4096 GOPR9172.GPR
RUNNING: /home/lebedevri/rawspeed/build-Clang-Release/src/utilities/rsbench/rsbench-old --benchmark_counters_tabular=true --benchmark_min_time=0.00000001 --benchmark_repetitions=4096 GOPR9172.GPR --benchmark_display_aggregates_only=true --benchmark_out=/tmp/tmpGdiOz2
2018-12-18 21:04:03
Running /home/lebedevri/rawspeed/build-Clang-Release/src/utilities/rsbench/rsbench-old
Run on (8 X 4009.44 MHz CPU s)
CPU Caches:
  L1 Data 16K (x8)
  L1 Instruction 64K (x4)
  L2 Unified 2048K (x4)
  L3 Unified 8192K (x1)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Benchmark                                        Time           CPU Iterations  CPUTime,s CPUTime/WallTime     Pixels Pixels/CPUTime Pixels/WallTime Raws/CPUTime Raws/WallTime WallTime,s
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
GOPR9172.GPR/threads:8/real_time_mean           47 ms         47 ms       4096   0.378171          7.97668        12M       31.9938M        255.234M      2.66615       21.2695  0.0474291
GOPR9172.GPR/threads:8/real_time_median         47 ms         47 ms       4096   0.377067          7.99204        12M       31.8246M        254.555M      2.65205       21.2129  0.0471411
GOPR9172.GPR/threads:8/real_time_stddev          5 ms          4 ms       4096  0.0358843         0.113462          0       2.82588M        23.0073M      0.23549       1.91728   4.72522m
RUNNING: /home/lebedevri/rawspeed/build-Clang-Release/src/utilities/rsbench/rsbench --benchmark_counters_tabular=true --benchmark_min_time=0.00000001 --benchmark_repetitions=4096 GOPR9172.GPR --benchmark_display_aggregates_only=true --benchmark_out=/tmp/tmphhEOlp
2018-12-18 21:07:22
Running /home/lebedevri/rawspeed/build-Clang-Release/src/utilities/rsbench/rsbench
Run on (8 X 4010.66 MHz CPU s)
CPU Caches:
  L1 Data 16K (x8)
  L1 Instruction 64K (x4)
  L2 Unified 2048K (x4)
  L3 Unified 8192K (x1)
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Benchmark                                        Time           CPU Iterations  CPUTime,s CPUTime/WallTime     Pixels Pixels/CPUTime Pixels/WallTime Raws/CPUTime Raws/WallTime WallTime,s
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
GOPR9172.GPR/threads:8/real_time_mean           45 ms         44 ms       4096   0.354773          7.97019        12M        34.057M        271.484M      2.83808       22.6237  0.0445393
GOPR9172.GPR/threads:8/real_time_median         44 ms         44 ms       4096   0.348944          7.99187        12M       34.3895M        274.867M      2.86579       22.9056  0.0436574
GOPR9172.GPR/threads:8/real_time_stddev          4 ms          4 ms       4096  0.0314185         0.132795          0       2.66733M        21.9402M     0.222277       1.82835   4.28961m
Comparing /home/lebedevri/rawspeed/build-Clang-Release/src/utilities/rsbench/rsbench-old to /home/lebedevri/rawspeed/build-Clang-Release/src/utilities/rsbench/rsbench
Benchmark                                                 Time             CPU      Time Old      Time New       CPU Old       CPU New
--------------------------------------------------------------------------------------------------------------------------------------
GOPR9172.GPR/threads:8/real_time_pvalue                 0.0000          0.0000      U Test, Repetitions: 4096 vs 4096
GOPR9172.GPR/threads:8/real_time_mean                  -0.0609         -0.0551            47            45            47            44
GOPR9172.GPR/threads:8/real_time_median                -0.0739         -0.0702            47            44            47            44
GOPR9172.GPR/threads:8/real_time_stddev                -0.0922         -0.0598             5             4             4             4

LebedevRI/rawspeed,darktable-org/rawspeed,darktable-org/rawspeed,LebedevRI/rawspeed,darktable-org/rawspeed,darktable-org/rawspeed,LebedevRI/rawspeed,LebedevRI/rawspeed,darktable-org/rawspeed,LebedevRI/rawspeed