Merge branch release-5-1
[alexxy/gromacs.git] / src / programs / mdrun / tests / moduletest.cpp
index fe14dfbedea1105f4f228479d6d49632814582cb..56dfa17725a922c24a5e71dd294755fd45718a60 100644 (file)
 #include <cstdio>
 
 #include "gromacs/gmxpreprocess/grompp.h"
-#include "gromacs/legacyheaders/gmx_detect_hardware.h"
+#include "gromacs/hardware/detecthardware.h"
 #include "gromacs/options/basicoptions.h"
-#include "gromacs/options/options.h"
+#include "gromacs/options/ioptionscontainer.h"
 #include "gromacs/utility/basedefinitions.h"
 #include "gromacs/utility/basenetwork.h"
-#include "gromacs/utility/file.h"
 #include "gromacs/utility/gmxmpi.h"
+#include "gromacs/utility/textwriter.h"
 #include "programs/mdrun/mdrun_main.h"
 
 #include "testutils/cmdlinetest.h"
@@ -136,13 +136,13 @@ SimulationRunner::useStringAsMdpFile(const char *mdpString)
 void
 SimulationRunner::useStringAsMdpFile(const std::string &mdpString)
 {
-    gmx::File::writeFileFromString(mdpInputFileName_, mdpString);
+    gmx::TextWriter::writeFileFromString(mdpInputFileName_, mdpString);
 }
 
 void
 SimulationRunner::useStringAsNdxFile(const char *ndxString)
 {
-    gmx::File::writeFileFromString(ndxFileName_, ndxString);
+    gmx::TextWriter::writeFileFromString(ndxFileName_, ndxString);
 }
 
 void
@@ -220,6 +220,18 @@ SimulationRunner::callMdrun(const CommandLine &callerRef)
         caller.addOption("-nsteps", nsteps_);
     }
 
+#ifdef GMX_MPI
+#  if GMX_GPU != GMX_GPU_NONE
+#    ifdef GMX_THREAD_MPI
+    int         numGpusNeeded = g_numThreads;
+#    else   /* Must be real MPI */
+    int         numGpusNeeded = gmx_node_num();
+#    endif
+    std::string gpuIdString(numGpusNeeded, '0');
+    caller.addOption("-gpu_id", gpuIdString.c_str());
+#  endif
+#endif
+
 #ifdef GMX_THREAD_MPI
     caller.addOption("-ntmpi", g_numThreads);
 #endif