C++ example based on <rsb.hpp> of invoking the autotuner on an RsbMatrix matrix with RsbMatrix.tune_spmm() and rendering it with RsbMatrix.rndr().
- Author
- Michele Martone
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
#if defined(_OPENMP)
#include <omp.h>
#endif
template <typename NT=RSB_DEFAULT_TYPE>
{
#if defined(_OPENMP)
#else
#endif
for ( ;
nt > 0 ;
nt /= 2 )
{
mtx.tune_spmm(&
sf,
nullptr,
maxr,
maxt,
transA,
nullptr,
nrhs,
order,
nullptr, {},
nullptr,
nullptr, {});
}
}
{
else
}
auto main() -> int
Definition assemble.cpp:38
void bench(const std::string filename, rsb_flags_t order)
Definition autotune.cpp:42
Class initializing/finalizing librsb state.
Definition rsb.hpp:272
Represent a sparse matrix in RSB format by means of librsb.
Definition rsb.hpp:532
void render_test(std::string filename="../A.mtx")
Definition render.cpp:43
rsb_flags_t rsb_trans_t
Definition rsb.h:400
signed int rsb_coo_idx_t
Definition rsb.h:349
signed int rsb_flags_t
Definition rsb.h:373
#define RSB_FLAG_WANT_COLUMN_MAJOR_ORDER
Definition rsb.h:496
double rsb_real_t
Definition rsb.h:403
rsb_real_t rsb_time_t
Definition rsb.h:411
signed int rsb_int_t
Definition rsb.h:392
Classes RsbLib and RsbMatrix provide native C++ access to librsb.
#define RSB_TRANSPOSITION_N
N: Non transposed flag, valid for rsb_trans_t typed variables.
Definition rsb_types.h:138