forked from learning-process/parallel_programming_course
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.cpp
More file actions
44 lines (30 loc) · 1.18 KB
/
main.cpp
File metadata and controls
44 lines (30 loc) · 1.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
#include <gtest/gtest.h>
#include "example_processes_3/common/include/common.hpp"
#include "example_processes_3/mpi/include/ops_mpi.hpp"
#include "example_processes_3/seq/include/ops_seq.hpp"
#include "util/include/perf_test_util.hpp"
namespace nesterov_a_test_task_processes_3 {
class ExampleRunPerfTestProcesses3 : public ppc::util::BaseRunPerfTests<InType, OutType> {
const int kCount_ = 100;
InType input_data_{};
void SetUp() override {
input_data_ = kCount_;
}
bool CheckTestOutputData(OutType &output_data) final {
return input_data_ == output_data;
}
InType GetTestInputData() final {
return input_data_;
}
};
TEST_P(ExampleRunPerfTestProcesses3, RunPerfModes) {
ExecuteTest(GetParam());
}
namespace {
const auto kAllPerfTasks =
ppc::util::MakeAllPerfTasks<InType, NesterovATestTaskMPI, NesterovATestTaskSEQ>(PPC_SETTINGS_example_processes_3);
const auto kGtestValues = ppc::util::TupleToGTestValues(kAllPerfTasks);
const auto kPerfTestName = ExampleRunPerfTestProcesses3::CustomPerfTestName;
INSTANTIATE_TEST_SUITE_P(RunModeTests, ExampleRunPerfTestProcesses3, kGtestValues, kPerfTestName);
} // namespace
} // namespace nesterov_a_test_task_processes_3