Closed reikdas closed 6 months ago
Hi @reikdas
for the first construct_method
loop you shared:
we construct everything that is not "mkl", guarded by this if:
if (method.method_id != "mkl") {
this is because this can be executed in parallel by uncommenting //#pragma omp parallel for
to speed-up testing, unfortnately MKL handles its own threading so doesn't like to be constructed in an OpenMP environment. So instead we have a second loop that is never run in parallel here:
that only constructs the mkl methods, guarded by:
if (method.method_id == "mkl") {
I hope this helps!
Thanks!
There seems to be some code duplication here - https://github.com/SpRegTiling/sparse-register-tiling/blob/main/cpp_testbed/demo/SPMM_demo.cpp#L563-L568 and https://github.com/SpRegTiling/sparse-register-tiling/blob/main/cpp_testbed/demo/SPMM_demo.cpp#L588-L593. Does
construct_method
actually need to run twice?