From d64fa989fc5c70922ae7944e9515034f86890b61 Mon Sep 17 00:00:00 2001 From: Pieter Ghysels Date: Fri, 28 Jun 2024 14:49:00 -0700 Subject: [PATCH] Reset flop counters after factorization, before solve --- src/SparseSolver.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/SparseSolver.cpp b/src/SparseSolver.cpp index 3b61bb3e..74f28dcf 100644 --- a/src/SparseSolver.cpp +++ b/src/SparseSolver.cpp @@ -256,11 +256,6 @@ namespace strumpack { template ReturnCode SparseSolver::solve_internal (const DenseM_t& b, DenseM_t& x, bool use_initial_guess) { - TaskTimer t("solve"); - this->perf_counters_start(); - t.start(); - assert(b.cols() == x.cols()); - // reordering has to be called, even for the iterative solvers if (!this->reordered_) { ReturnCode ierr = this->reorder(); @@ -277,6 +272,11 @@ namespace strumpack { if (ierr != ReturnCode::SUCCESS) return ierr; } + TaskTimer t("solve"); + this->perf_counters_start(); + t.start(); + assert(b.cols() == x.cols()); + integer_t d = b.cols(); assert(matrix()->size() < std::numeric_limits::max()); DenseM_t bloc(b.rows(), d);