Skip to content
Snippets Groups Projects

PERF: Use Boost.SmallVec in BCO interpolator

Merged Laurențiu Nicola requested to merge bco-small-vec into develop
  1. Feb 27, 2020
    • Laurențiu Nicola's avatar
      PERF: Use Boost.SmallVec in BCO interpolator · e20c2bb2
      Laurențiu Nicola authored
      This avoids some per-pixel dynamic allocations. The effect is
      surprisingly small, though:
      
      Tested by upsampling by 4x a four band, 10980x10980 scene
      
      before:
      286.76user 5.17system 0:36.00elapsed 810%CPU (0avgtext+0avgdata 1013876maxresident)k
      2288inputs+15071432outputs (5major+1442780minor)pagefaults 0swaps
      290.62user 5.28system 0:34.09elapsed 867%CPU (0avgtext+0avgdata 1013312maxresident)k
      35776inputs+15071432outputs (207major+1443014minor)pagefaults 0swaps
      291.82user 5.01system 0:34.05elapsed 871%CPU (0avgtext+0avgdata 1013196maxresident)k
      18960inputs+15071432outputs (133major+1443078minor)pagefaults 0swaps
      
      after:
      260.86user 5.44system 0:37.12elapsed 717%CPU (0avgtext+0avgdata 1013652maxresident)k
      4272inputs+15071432outputs (3major+1443217minor)pagefaults 0swaps
      257.90user 5.85system 0:38.22elapsed 690%CPU (0avgtext+0avgdata 1014272maxresident)k
      8inputs+15071432outputs (1major+1443207minor)pagefaults 0swaps
      261.12user 5.58system 0:36.90elapsed 722%CPU (0avgtext+0avgdata 1012968maxresident)k
      0inputs+15071432outputs (0major+1443212minor)pagefaults 0swaps
      e20c2bb2
Loading