#include #include #include #include "error.hpp" #include "execute-move.hpp" template int testrunner() { std::vector 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(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(); } else if (path == "software_path") { std::cout << "Executing using dml::software path" << std::endl; return testrunner(); } else if (path == "auto_path") { std::cout << "Executing using dml::automatic path" << std::endl; return testrunner(); } else { std::cout << "Unrecognized value for parameter. Use hardware_path, software_path or automatic_path." << std::endl; return 1; } }