You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.4 KiB
54 lines
1.4 KiB
#include <dml/dml.hpp>
|
|
|
|
#include <vector>
|
|
#include <iostream>
|
|
|
|
#include "error.hpp"
|
|
#include "execute-move.hpp"
|
|
|
|
template <typename path>
|
|
int testrunner() {
|
|
std::vector<ThreadArgs> args;
|
|
|
|
ThreadArgs a;
|
|
a.core = 0;
|
|
a.numa_node = 0;
|
|
a.size = 4096;
|
|
a.nnode_dst = 0;
|
|
a.nnode_src = 0;
|
|
|
|
args.emplace_back(a);
|
|
|
|
execute_mem_move<path>(args);
|
|
|
|
const auto status = args.front().status.front();
|
|
std::cout << "Operation Result Status: " << status << std::endl;
|
|
|
|
return 0;
|
|
}
|
|
|
|
int main(int argc, char **argv) {
|
|
if (argc < 2) {
|
|
std::cout << "Missing the execution path as the first parameter. Use hardware_path, software_path or automatic_path." << std::endl;
|
|
return 1;
|
|
}
|
|
|
|
const std::string path = argv[1];
|
|
|
|
if (path == "hardware_path") {
|
|
std::cout << "Executing using dml::hardware path" << std::endl;
|
|
return testrunner<dml::hardware>();
|
|
}
|
|
else if (path == "software_path") {
|
|
std::cout << "Executing using dml::software path" << std::endl;
|
|
return testrunner<dml::software>();
|
|
}
|
|
else if (path == "auto_path") {
|
|
std::cout << "Executing using dml::automatic path" << std::endl;
|
|
return testrunner<dml::automatic>();
|
|
}
|
|
else {
|
|
std::cout << "Unrecognized value for parameter. Use hardware_path, software_path or automatic_path." << std::endl;
|
|
return 1;
|
|
}
|
|
}
|