GCC Code Coverage Report


Directory: ./
File: tasks/lobanov_d_multi_matrix_crs/all/include/ops_all.hpp
Date: 2026-06-04 20:25:32
Exec Total Coverage
Lines: 0 1 0.0%
Functions: 0 0 -%
Branches: 0 0 -%

Line Branch Exec Source
1 #pragma once
2
3 #include <vector>
4
5 #include "lobanov_d_multi_matrix_crs/common/include/common.hpp"
6 #include "task/include/task.hpp"
7
8 namespace lobanov_d_multi_matrix_crs {
9
10 class LobanovMultyMatrixALL : public BaseTask {
11 public:
12 static constexpr ppc::task::TypeOfTask GetStaticTypeOfTask() {
13 return ppc::task::TypeOfTask::kALL;
14 }
15 explicit LobanovMultyMatrixALL(const InType &in);
16
17 private:
18 bool ValidationImpl() override;
19 bool PreProcessingImpl() override;
20 bool RunImpl() override;
21 bool PostProcessingImpl() override;
22
23 static void DistributeSparseMatrix(CompressedRowMatrix &mat, int root, int rows, int cols);
24 static CompressedRowMatrix TransposeSparseMatrix(const CompressedRowMatrix &src);
25 static void ComputeLocalProduct(const CompressedRowMatrix &a, const CompressedRowMatrix &b_tr, int start_row,
26 int local_rows, std::vector<int> &row_nnz_counts, std::vector<double> &packed_vals,
27 std::vector<int> &packed_cols);
28 static void MergeLocalResults(int rank, int comm_size, int total_rows, int result_cols, int local_rows,
29 CompressedRowMatrix &result_mat, const std::vector<int> &row_nnz_counts,
30 const std::vector<double> &packed_vals, const std::vector<int> &packed_cols);
31 static void SortIndices(std::vector<int> &vec);
32 };
33
34 } // namespace lobanov_d_multi_matrix_crs
35