From 67a0f0a8dda2da36971c27b9cc26af357a1c017b Mon Sep 17 00:00:00 2001 From: Bine Brank <b.brank@fz-juelich.de> Date: Sat, 26 Feb 2022 14:27:14 +0100 Subject: [PATCH] add parameter for output_directory --- src/miniFE_sve/openmp-sve/src/YAML_Doc.cpp | 4 ++-- src/miniFE_sve/openmp-sve/src/main.cpp | 2 +- src/miniFE_sve/openmp-sve/utils/Parameters.hpp | 3 ++- src/miniFE_sve/openmp-sve/utils/utils.cpp | 1 + 4 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/miniFE_sve/openmp-sve/src/YAML_Doc.cpp b/src/miniFE_sve/openmp-sve/src/YAML_Doc.cpp index 382c8cd..78122a3 100644 --- a/src/miniFE_sve/openmp-sve/src/YAML_Doc.cpp +++ b/src/miniFE_sve/openmp-sve/src/YAML_Doc.cpp @@ -81,13 +81,13 @@ string YAML_Doc::generateYAML(){ filename = destinationFileName; filename = filename + string(sdate) + ".yaml"; if (destinationDirectory!="" && destinationDirectory!=".") { - string mkdir_cmd = "mkdir " + destinationDirectory; + string mkdir_cmd = "mkdir -p " + destinationDirectory; #ifdef REDSTORM mkdir(destinationDirectory.c_str(),0755); #else system(mkdir_cmd.c_str()); #endif - filename = destinationDirectory + "/" + destinationFileName; + filename = destinationDirectory + "/" + filename; } else filename = "./" + filename; diff --git a/src/miniFE_sve/openmp-sve/src/main.cpp b/src/miniFE_sve/openmp-sve/src/main.cpp index 5a38b7f..a73fb09 100644 --- a/src/miniFE_sve/openmp-sve/src/main.cpp +++ b/src/miniFE_sve/openmp-sve/src/main.cpp @@ -161,7 +161,7 @@ int main(int argc, char** argv) { osstr << "."; if (params.name != "") osstr << params.name << "."; - YAML_Doc doc("miniFE", MINIFE_VERSION, ".", osstr.str()); + YAML_Doc doc("miniFE", MINIFE_VERSION, params.output_dir, osstr.str()); if (myproc == 0) { add_params_to_yaml(doc, params); add_configuration_to_yaml(doc, numprocs, params.numthreads); diff --git a/src/miniFE_sve/openmp-sve/utils/Parameters.hpp b/src/miniFE_sve/openmp-sve/utils/Parameters.hpp index 44841cf..574a923 100644 --- a/src/miniFE_sve/openmp-sve/utils/Parameters.hpp +++ b/src/miniFE_sve/openmp-sve/utils/Parameters.hpp @@ -38,7 +38,7 @@ struct Parameters { mv_overlap_comm_comp(0), use_locking(0), load_imbalance(0), name(), elem_group_size(1), use_elem_mat_fields(1), verify_solution(0), - device(0),num_devices(2),skip_device(9999),numa(1) + device(0),num_devices(2),skip_device(9999),numa(1),output_dir() {} int nx; @@ -56,6 +56,7 @@ struct Parameters { int num_devices; int skip_device; int numa; + std::string output_dir; };//struct Parameters }//namespace miniFE diff --git a/src/miniFE_sve/openmp-sve/utils/utils.cpp b/src/miniFE_sve/openmp-sve/utils/utils.cpp index 29fcc8f..09ca7e1 100644 --- a/src/miniFE_sve/openmp-sve/utils/utils.cpp +++ b/src/miniFE_sve/openmp-sve/utils/utils.cpp @@ -79,6 +79,7 @@ void get_parameters(int argc, char** argv, Parameters& params) params.num_devices = Mantevo::parse_parameter<int>(argstring, "num_devices", 2); params.skip_device = Mantevo::parse_parameter<int>(argstring, "skip_device", 9999); params.numa = Mantevo::parse_parameter<int>(argstring, "numa", 1); + params.output_dir = Mantevo::parse_parameter<std::string>(argstring, "output_dir",""); } //------------------------------------------------------------- -- GitLab