29 August 2016Writing high performance code is always a difficult task. Pure algorithms are not always a good fit for the real world architectures. Once having begun to speed up all these pure algorithms, we quickly find that some implementation is pretty fast on one architecture, but terrible slow on another while second implementation outperform the first one in some contexts losing speed in all the rest. Numerous big and small optimizations for each of supported architectures can quickly bloat our code and waste our time.
24 August 2016
Passing values in C++ as a template arguments has some inflexibilities. For example, if template function has been wrapped into a functor class, there are no ways to pass some value as a template argument.