GCC Code Coverage Report


Directory: ./
File: tasks/nikolaev_d_most_dif_vec_neighbors/mpi/include/ops_mpi.hpp
Date: 2026-01-10 02:40:41
Exec Total Coverage
Lines: 1 1 100.0%
Functions: 0 0 -%
Branches: 0 0 -%

Line Branch Exec Source
1 #pragma once
2
3 #include <cstdint>
4 #include <vector>
5
6 #include "nikolaev_d_most_dif_vec_neighbors/common/include/common.hpp"
7 #include "task/include/task.hpp"
8
9 namespace nikolaev_d_most_dif_vec_neighbors {
10
11 class NikolaevDMostDifVecNeighborsMPI : public BaseTask {
12 public:
13 static constexpr ppc::task::TypeOfTask GetStaticTypeOfTask() {
14 return ppc::task::TypeOfTask::kMPI;
15 }
16 explicit NikolaevDMostDifVecNeighborsMPI(const InType &in);
17
18 private:
19 20 struct LocalMaxInfo {
20 int64_t diff = -1;
21 int pair_first = 0;
22 int pair_second = 0;
23 int first_elem = 0;
24 int last_elem = 0;
25 };
26
27 bool ValidationImpl() override;
28 bool PreProcessingImpl() override;
29 bool RunImpl() override;
30 bool PostProcessingImpl() override;
31
32 void FindLocalDiff(int rank, int size, int actual_processes, std::vector<int> &local_data, int local_size);
33 void ProcessLocalData(int rank, int actual_processes, std::vector<LocalMaxInfo> &all_info);
34 };
35
36 } // namespace nikolaev_d_most_dif_vec_neighbors
37