This repository has been archived by the owner on Dec 22, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathmpitest.h
69 lines (46 loc) · 1.89 KB
/
mpitest.h
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
/*
Copyright 2017 Battelle Energy Alliance, LLC
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Description
-----------
mpitest is a subclass of class srctest.
Part of the HPC Software test suite.
Date Created: Sat Nov 14 17:52:12 MST 2015
Author: Cormac Garvey
*/
#ifndef HPCSWTEST_MPITEST_H_
#define HPCSWTEST_MPITEST_H_
#include "srctest.h"
#include <fstream>
namespace hpcswtest {
class MpiTest: public SrcTest {
public:
MpiTest(const jobscript::JOBSCRIPT &, const std::string &, const std::string &, const std::string &, const std::string &c_f="-O2", const std::string &cpp_f="-O2", const std::string &f_f="-O2", const std::string &c_l_l="-lm", const std::string &cpp_l_l="-lm", const std::string &f_l_l="-lm");
virtual ~MpiTest(void) {};
virtual void runTest(void) override;
// virtual TestResult checkResult(void) const override;
void setMpiCmd(std::string);
void setMpiCmdArgs(std::string);
std::string getMpiCmd(void);
std::string getMpiCmdArgs(void);
private:
std::string log_file_name_;
std::string result_file_name_;
std::ofstream flog_;
std::ofstream fresult_;
std::string mpi_cmd_;
std::string mpi_cmd_args_;
const static std::vector<std::string> c_mpi_srcs_;
const static std::vector<std::string> cpp_mpi_srcs_;
const static std::vector<std::string> f_mpi_srcs_;
}; // class MpiTest
} // namespace hpcswtest
#endif // HPCSWTEST_MPITEST_H