#pragma once #include #include using namespace std; vector test_A(const size_t &NLOOPS, const size_t &N, const function&, const vector&)>& scalar_function); vector test_B(const size_t &NLOOPS, const size_t &N, const size_t &M, const function(const vector&, const vector&)>& MatVec_function); vector test_C(const size_t &NLOOPS, const size_t &L, const size_t &M, const size_t &N, const function(const vector&, const vector&, size_t const &shared_dim)>& MatMat_function); vector test_D(const size_t &NLOOPS, const size_t &N, const size_t &p);