From 8ca1555db171ea1535278d626eb02d1f3c836f32 Mon Sep 17 00:00:00 2001 From: barate Date: Tue, 15 Jan 2013 17:03:25 +0000 Subject: [PATCH] Number of procs per node is now a job parameter instead of a BatchManager attribute --- src/CCC/Batch_FactBatchManager_eCCC.cxx | 3 +- src/CCC/Batch_FactBatchManager_eCCC.hxx | 3 +- src/Core/Batch_Constants.cxx | 1 + src/Core/Batch_Constants.hxx | 1 + src/Core/Batch_FactBatchManager.hxx | 3 +- src/Core/Batch_ParameterTypeMap.cxx | 1 + src/LSF/Batch_FactBatchManager_eLSF.cxx | 3 +- src/LSF/Batch_FactBatchManager_eLSF.hxx | 3 +- src/LoadLeveler/Batch_BatchManager_eLL.cxx | 11 ++++--- src/LoadLeveler/Batch_BatchManager_eLL.hxx | 5 +-- .../Batch_FactBatchManager_eLL.cxx | 5 ++- .../Batch_FactBatchManager_eLL.hxx | 3 +- src/Local/Batch_BatchManager_Local.cxx | 3 +- src/Local/Batch_BatchManager_Local.hxx | 3 +- src/Local/Batch_FactBatchManager_Local.cxx | 6 ++-- src/Local/Batch_FactBatchManager_Local.hxx | 3 +- src/PBS/Batch_BatchManager_ePBS.cxx | 33 +++++++++---------- src/PBS/Batch_BatchManager_ePBS.hxx | 6 +--- src/PBS/Batch_FactBatchManager_ePBS.cxx | 5 ++- src/PBS/Batch_FactBatchManager_ePBS.hxx | 3 +- src/PBS/Test/Test_ePBS.cxx | 3 +- src/SGE/Batch_FactBatchManager_eSGE.cxx | 3 +- src/SGE/Batch_FactBatchManager_eSGE.hxx | 3 +- src/Slurm/Batch_BatchManager_eSlurm.cxx | 3 +- src/Slurm/Batch_BatchManager_eSlurm.hxx | 3 +- src/Slurm/Batch_FactBatchManager_eSlurm.cxx | 5 ++- src/Slurm/Batch_FactBatchManager_eSlurm.hxx | 3 +- src/Vishnu/Batch_BatchManager_eVishnu.cxx | 6 ++-- src/Vishnu/Batch_BatchManager_eVishnu.hxx | 5 +-- src/Vishnu/Batch_FactBatchManager_eVishnu.cxx | 5 ++- src/Vishnu/Batch_FactBatchManager_eVishnu.hxx | 3 +- 31 files changed, 58 insertions(+), 88 deletions(-) diff --git a/src/CCC/Batch_FactBatchManager_eCCC.cxx b/src/CCC/Batch_FactBatchManager_eCCC.cxx index 878d980..74a4689 100644 --- a/src/CCC/Batch_FactBatchManager_eCCC.cxx +++ b/src/CCC/Batch_FactBatchManager_eCCC.cxx @@ -50,8 +50,7 @@ namespace Batch { BatchManager * FactBatchManager_eCCC::operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node) const + const char * mpiImpl) const { // MESSAGE("Building new BatchManager_CCC on host '" << hostname << "'"); return new BatchManager_eCCC(this, hostname, username, protocolType, mpiImpl); diff --git a/src/CCC/Batch_FactBatchManager_eCCC.hxx b/src/CCC/Batch_FactBatchManager_eCCC.hxx index c558801..fe83053 100644 --- a/src/CCC/Batch_FactBatchManager_eCCC.hxx +++ b/src/CCC/Batch_FactBatchManager_eCCC.hxx @@ -47,8 +47,7 @@ namespace Batch { virtual BatchManager * operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node = 1) const; + const char * mpiImpl) const; }; } diff --git a/src/Core/Batch_Constants.cxx b/src/Core/Batch_Constants.cxx index fc04add..5a6dde1 100644 --- a/src/Core/Batch_Constants.cxx +++ b/src/Core/Batch_Constants.cxx @@ -54,6 +54,7 @@ namespace Batch { def_Constant(MODIFICATIONTIME); def_Constant(NAME); def_Constant(NBPROC); + def_Constant(NBPROCPERNODE); def_Constant(OUTFILE); def_Constant(PID); def_Constant(QUEUE); diff --git a/src/Core/Batch_Constants.hxx b/src/Core/Batch_Constants.hxx index b8c1b96..1190e75 100644 --- a/src/Core/Batch_Constants.hxx +++ b/src/Core/Batch_Constants.hxx @@ -65,6 +65,7 @@ namespace Batch { decl_extern_Constant(MODIFICATIONTIME); decl_extern_Constant(NAME); decl_extern_Constant(NBPROC); + decl_extern_Constant(NBPROCPERNODE); decl_extern_Constant(OUTFILE); decl_extern_Constant(PID); decl_extern_Constant(QUEUE); diff --git a/src/Core/Batch_FactBatchManager.hxx b/src/Core/Batch_FactBatchManager.hxx index 01b9df4..84ad191 100644 --- a/src/Core/Batch_FactBatchManager.hxx +++ b/src/Core/Batch_FactBatchManager.hxx @@ -50,8 +50,7 @@ namespace Batch { virtual Batch::BatchManager * operator() (const char * hostname, const char * username = "", CommunicationProtocolType protocolType = SSH, - const char * mpi = "nompi", - int nb_proc_per_node = 1) const = 0; + const char * mpi = "nompi") const = 0; std::string getType() const; std::string __repr__() const; diff --git a/src/Core/Batch_ParameterTypeMap.cxx b/src/Core/Batch_ParameterTypeMap.cxx index 7a14261..521e0bf 100644 --- a/src/Core/Batch_ParameterTypeMap.cxx +++ b/src/Core/Batch_ParameterTypeMap.cxx @@ -67,6 +67,7 @@ namespace Batch { addParameter("MODIFICATIONTIME", LONG, 1); addParameter("NAME", STRING, 1); addParameter("NBPROC", LONG, 1); + addParameter("NBPROCPERNODE", LONG, 1); addParameter("OUTFILE", COUPLE, 0); addParameter("PID", LONG, 1); addParameter("QUEUE", STRING, 1); diff --git a/src/LSF/Batch_FactBatchManager_eLSF.cxx b/src/LSF/Batch_FactBatchManager_eLSF.cxx index ee2585e..d069be8 100644 --- a/src/LSF/Batch_FactBatchManager_eLSF.cxx +++ b/src/LSF/Batch_FactBatchManager_eLSF.cxx @@ -50,8 +50,7 @@ namespace Batch { BatchManager * FactBatchManager_eLSF::operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node) const + const char * mpiImpl) const { // MESSAGE("Building new BatchManager_LSF on host '" << hostname << "'"); return new BatchManager_eLSF(this, hostname, username, protocolType, mpiImpl); diff --git a/src/LSF/Batch_FactBatchManager_eLSF.hxx b/src/LSF/Batch_FactBatchManager_eLSF.hxx index 9997521..3068869 100644 --- a/src/LSF/Batch_FactBatchManager_eLSF.hxx +++ b/src/LSF/Batch_FactBatchManager_eLSF.hxx @@ -47,8 +47,7 @@ namespace Batch { virtual BatchManager * operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node = 1) const; + const char * mpiImpl) const; }; diff --git a/src/LoadLeveler/Batch_BatchManager_eLL.cxx b/src/LoadLeveler/Batch_BatchManager_eLL.cxx index d377fab..fc729bf 100644 --- a/src/LoadLeveler/Batch_BatchManager_eLL.cxx +++ b/src/LoadLeveler/Batch_BatchManager_eLL.cxx @@ -45,10 +45,8 @@ namespace Batch { BatchManager_eLL::BatchManager_eLL(const FactBatchManager * parent, const char * host, const char * username, - CommunicationProtocolType protocolType, const char * mpiImpl, - int nb_proc_per_node) - : BatchManager(parent, host, username, protocolType, mpiImpl), - _nb_proc_per_node(nb_proc_per_node) + CommunicationProtocolType protocolType, const char * mpiImpl) + : BatchManager(parent, host, username, protocolType, mpiImpl) { // Nothing to do } @@ -144,6 +142,9 @@ namespace Batch { int nbproc = 1; if (params.find(NBPROC) != params.end()) nbproc = params[NBPROC]; + int nbprocpernode = 1; + if (params.find(NBPROCPERNODE) != params.end()) + nbprocpernode = params[NBPROCPERNODE]; if (params.find(EXCLUSIVE) != params.end()) { if (params[EXCLUSIVE]) @@ -164,7 +165,7 @@ namespace Batch { tempOutputFile << "# @ job_type = " << job_type << endl; if (job_type == "mpich") { - int nodes_requested = (nbproc + _nb_proc_per_node -1) / _nb_proc_per_node; + int nodes_requested = (nbproc + nbprocpernode -1) / nbprocpernode; tempOutputFile << "# @ node = " << nodes_requested << endl; tempOutputFile << "# @ total_tasks = " << nbproc << endl; } diff --git a/src/LoadLeveler/Batch_BatchManager_eLL.hxx b/src/LoadLeveler/Batch_BatchManager_eLL.hxx index 1b7ea39..9b6ae95 100644 --- a/src/LoadLeveler/Batch_BatchManager_eLL.hxx +++ b/src/LoadLeveler/Batch_BatchManager_eLL.hxx @@ -44,8 +44,7 @@ namespace Batch { public: BatchManager_eLL(const FactBatchManager * parent, const char * host = "localhost", const char * username = "", - CommunicationProtocolType protocolType = SSH, const char * mpiImpl = "nompi", - int nb_proc_per_node=1); + CommunicationProtocolType protocolType = SSH, const char * mpiImpl = "nompi"); virtual ~BatchManager_eLL(); // Methods to control jobs @@ -62,8 +61,6 @@ namespace Batch { protected: std::string buildCommandFile(const Job & job); - int _nb_proc_per_node; - }; } diff --git a/src/LoadLeveler/Batch_FactBatchManager_eLL.cxx b/src/LoadLeveler/Batch_FactBatchManager_eLL.cxx index 0fa4c7d..7ca8532 100644 --- a/src/LoadLeveler/Batch_FactBatchManager_eLL.cxx +++ b/src/LoadLeveler/Batch_FactBatchManager_eLL.cxx @@ -50,11 +50,10 @@ namespace Batch { BatchManager * FactBatchManager_eLL::operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node) const + const char * mpiImpl) const { // MESSAGE("Building new BatchManager_eLL on host '" << hostname << "'"); - return new BatchManager_eLL(this, hostname, username, protocolType, mpiImpl, nb_proc_per_node); + return new BatchManager_eLL(this, hostname, username, protocolType, mpiImpl); } } diff --git a/src/LoadLeveler/Batch_FactBatchManager_eLL.hxx b/src/LoadLeveler/Batch_FactBatchManager_eLL.hxx index 4d6d591..c0448f7 100644 --- a/src/LoadLeveler/Batch_FactBatchManager_eLL.hxx +++ b/src/LoadLeveler/Batch_FactBatchManager_eLL.hxx @@ -51,8 +51,7 @@ namespace Batch { virtual BatchManager * operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node = 1) const; + const char * mpiImpl) const; }; } diff --git a/src/Local/Batch_BatchManager_Local.cxx b/src/Local/Batch_BatchManager_Local.cxx index f09b2cd..8ca72e4 100644 --- a/src/Local/Batch_BatchManager_Local.cxx +++ b/src/Local/Batch_BatchManager_Local.cxx @@ -64,8 +64,7 @@ namespace Batch { // Constructeur BatchManager_Local::BatchManager_Local(const Batch::FactBatchManager * parent, const char * host, const char * username, - CommunicationProtocolType protocolType, const char * mpiImpl, - int nb_proc_per_node) + CommunicationProtocolType protocolType, const char * mpiImpl) : BatchManager(parent, host, username, protocolType, mpiImpl), _connect(0), _idCounter(0) { diff --git a/src/Local/Batch_BatchManager_Local.hxx b/src/Local/Batch_BatchManager_Local.hxx index ab73038..2fbd229 100644 --- a/src/Local/Batch_BatchManager_Local.hxx +++ b/src/Local/Batch_BatchManager_Local.hxx @@ -119,8 +119,7 @@ namespace Batch { BatchManager_Local(const Batch::FactBatchManager * parent, const char * host = "localhost", const char * username = "", - CommunicationProtocolType protocolType = SSH, const char * mpiImpl = "nompi", - int nb_proc_per_node = 1); + CommunicationProtocolType protocolType = SSH, const char * mpiImpl = "nompi"); virtual ~BatchManager_Local(); // Recupere le nom du serveur par defaut diff --git a/src/Local/Batch_FactBatchManager_Local.cxx b/src/Local/Batch_FactBatchManager_Local.cxx index 157a1b9..3c89fb8 100644 --- a/src/Local/Batch_FactBatchManager_Local.cxx +++ b/src/Local/Batch_FactBatchManager_Local.cxx @@ -53,11 +53,9 @@ namespace Batch { BatchManager * FactBatchManager_Local::operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpi, - int nb_proc_per_node) const + const char * mpi) const { - return new BatchManager_Local(this, hostname, username, - protocolType, mpi, nb_proc_per_node); + return new BatchManager_Local(this, hostname, username, protocolType, mpi); } } diff --git a/src/Local/Batch_FactBatchManager_Local.hxx b/src/Local/Batch_FactBatchManager_Local.hxx index cdbdc9c..d1da8e6 100644 --- a/src/Local/Batch_FactBatchManager_Local.hxx +++ b/src/Local/Batch_FactBatchManager_Local.hxx @@ -50,8 +50,7 @@ namespace Batch { virtual BatchManager * operator() (const char * hostname, const char * username = "", CommunicationProtocolType protocolType = SSH, - const char * mpi = "nompi", - int nb_proc_per_node = 1) const; + const char * mpi = "nompi") const; }; diff --git a/src/PBS/Batch_BatchManager_ePBS.cxx b/src/PBS/Batch_BatchManager_ePBS.cxx index ee8c624..1d3e063 100644 --- a/src/PBS/Batch_BatchManager_ePBS.cxx +++ b/src/PBS/Batch_BatchManager_ePBS.cxx @@ -46,10 +46,8 @@ namespace Batch { BatchManager_ePBS::BatchManager_ePBS(const FactBatchManager * parent, const char * host, const char * username, - CommunicationProtocolType protocolType, const char * mpiImpl, - int nb_proc_per_node) - : BatchManager(parent, host, username, protocolType, mpiImpl), - _nb_proc_per_node(nb_proc_per_node) + CommunicationProtocolType protocolType, const char * mpiImpl) + : BatchManager(parent, host, username, protocolType, mpiImpl) { // Nothing to do } @@ -180,31 +178,32 @@ namespace Batch { Parametre params = job.getParametre(); Environnement env = job.getEnvironnement(); - // Job Parameters - string workDir = ""; - string fileToExecute = ""; - int nbproc = 0; - int edt = 0; - int mem = 0; - string queue = ""; - // Mandatory parameters + string workDir; if (params.find(WORKDIR) != params.end()) workDir = params[WORKDIR].str(); else throw RunTimeException("params[WORKDIR] is not defined ! Please defined it, cannot submit this job"); + string fileToExecute; if (params.find(EXECUTABLE) != params.end()) fileToExecute = params[EXECUTABLE].str(); else throw RunTimeException("params[EXECUTABLE] is not defined ! Please defined it, cannot submit this job"); // Optional parameters - if (params.find(NBPROC) != params.end()) + int nbproc = 1; + if (params.find(NBPROC) != params.end()) nbproc = params[NBPROC]; + int nbprocpernode = 1; + if (params.find(NBPROCPERNODE) != params.end()) + nbprocpernode = params[NBPROCPERNODE]; + int edt = 0; if (params.find(MAXWALLTIME) != params.end()) edt = params[MAXWALLTIME]; + int mem = 0; if (params.find(MAXRAMSIZE) != params.end()) mem = params[MAXRAMSIZE]; + string queue = ""; if (params.find(QUEUE) != params.end()) queue = params[QUEUE].str(); @@ -224,8 +223,8 @@ namespace Batch { if (nbproc > 0) { - int nb_full_nodes = nbproc / _nb_proc_per_node; - int nb_proc_on_last_node = nbproc % _nb_proc_per_node; + int nb_full_nodes = nbproc / nbprocpernode; + int nb_proc_on_last_node = nbproc % nbprocpernode; // In exclusive mode, we reserve all procs on the nodes if (params.find(EXCLUSIVE) != params.end() && params[EXCLUSIVE] && nb_proc_on_last_node > 0) { @@ -237,7 +236,7 @@ namespace Batch { // Full nodes if (nb_full_nodes > 0) { - tempOutputFile << nb_full_nodes << ":ppn=" << _nb_proc_per_node; + tempOutputFile << nb_full_nodes << ":ppn=" << nbprocpernode; if (nb_proc_on_last_node > 0) { tempOutputFile << "+"; } @@ -269,7 +268,7 @@ namespace Batch { tempOutputFile << endl; } - // Abstraction of PBS_NODEFILE - TODO + // Define NODEFILE tempOutputFile << "export LIBBATCH_NODEFILE=$PBS_NODEFILE" << endl; // Launch the executable diff --git a/src/PBS/Batch_BatchManager_ePBS.hxx b/src/PBS/Batch_BatchManager_ePBS.hxx index 325f4ba..aba5df0 100644 --- a/src/PBS/Batch_BatchManager_ePBS.hxx +++ b/src/PBS/Batch_BatchManager_ePBS.hxx @@ -46,8 +46,7 @@ namespace Batch { // Constructeur et destructeur BatchManager_ePBS(const FactBatchManager * parent, const char * host="localhost", const char * username="", - CommunicationProtocolType protocolType = SSH, const char * mpiImpl="nompi", - int nb_proc_per_node=1); // connexion a la machine host + CommunicationProtocolType protocolType = SSH, const char * mpiImpl="nompi"); virtual ~BatchManager_ePBS(); // Recupere le nom du serveur par defaut @@ -72,9 +71,6 @@ namespace Batch { protected: std::string buildSubmissionScript(const Job & job); - private: - int _nb_proc_per_node; - #ifdef SWIG public: // Recupere le l'identifiant d'un job deja soumis au BatchManager diff --git a/src/PBS/Batch_FactBatchManager_ePBS.cxx b/src/PBS/Batch_FactBatchManager_ePBS.cxx index 32f711a..df41a54 100644 --- a/src/PBS/Batch_FactBatchManager_ePBS.cxx +++ b/src/PBS/Batch_FactBatchManager_ePBS.cxx @@ -50,10 +50,9 @@ namespace Batch { BatchManager * FactBatchManager_ePBS::operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node) const + const char * mpiImpl) const { - return new BatchManager_ePBS(this, hostname, username, protocolType, mpiImpl, nb_proc_per_node); + return new BatchManager_ePBS(this, hostname, username, protocolType, mpiImpl); } } diff --git a/src/PBS/Batch_FactBatchManager_ePBS.hxx b/src/PBS/Batch_FactBatchManager_ePBS.hxx index 2e0f49e..410f0d9 100644 --- a/src/PBS/Batch_FactBatchManager_ePBS.hxx +++ b/src/PBS/Batch_FactBatchManager_ePBS.hxx @@ -50,8 +50,7 @@ namespace Batch { virtual BatchManager * operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node = 1) const; + const char * mpiImpl) const; }; diff --git a/src/PBS/Test/Test_ePBS.cxx b/src/PBS/Test/Test_ePBS.cxx index 424beae..f707c8a 100644 --- a/src/PBS/Test/Test_ePBS.cxx +++ b/src/PBS/Test/Test_ePBS.cxx @@ -95,6 +95,7 @@ int main(int argc, char** argv) p[INFILE] += Couple("setb.sh", "tmp/Batch/setb.sh"); p[OUTFILE] = Couple("result.txt", "tmp/Batch/result.txt"); p[NBPROC] = 1; + p[NBPROCPERNODE] = 8; p[MAXWALLTIME] = 1; p[MAXRAMSIZE] = 128; p[HOMEDIR] = homedir; @@ -111,7 +112,7 @@ int main(int argc, char** argv) // Create a BatchManager of type ePBS on localhost FactBatchManager * fbm = c("PBS"); - BatchManager * bm = (*fbm)(host.c_str(), user.c_str(), protocol, "nompi", 8); + BatchManager * bm = (*fbm)(host.c_str(), user.c_str(), protocol, "nompi"); // Submit the job to the BatchManager JobId jobid = bm->submitJob(job); diff --git a/src/SGE/Batch_FactBatchManager_eSGE.cxx b/src/SGE/Batch_FactBatchManager_eSGE.cxx index 4dc7020..79cfc9d 100644 --- a/src/SGE/Batch_FactBatchManager_eSGE.cxx +++ b/src/SGE/Batch_FactBatchManager_eSGE.cxx @@ -50,8 +50,7 @@ namespace Batch { BatchManager * FactBatchManager_eSGE::operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node) const + const char * mpiImpl) const { // MESSAGE("Building new BatchManager_SGE on host '" << hostname << "'"); return new BatchManager_eSGE(this, hostname, username, protocolType, mpiImpl); diff --git a/src/SGE/Batch_FactBatchManager_eSGE.hxx b/src/SGE/Batch_FactBatchManager_eSGE.hxx index 4de6ac8..6eda148 100644 --- a/src/SGE/Batch_FactBatchManager_eSGE.hxx +++ b/src/SGE/Batch_FactBatchManager_eSGE.hxx @@ -48,8 +48,7 @@ namespace Batch { virtual BatchManager * operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node = 1) const; + const char * mpiImpl) const; }; diff --git a/src/Slurm/Batch_BatchManager_eSlurm.cxx b/src/Slurm/Batch_BatchManager_eSlurm.cxx index d63f185..f1e999e 100644 --- a/src/Slurm/Batch_BatchManager_eSlurm.cxx +++ b/src/Slurm/Batch_BatchManager_eSlurm.cxx @@ -44,8 +44,7 @@ namespace Batch { const char * host, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node) + const char * mpiImpl) : BatchManager(parent, host, username, protocolType, mpiImpl) { } diff --git a/src/Slurm/Batch_BatchManager_eSlurm.hxx b/src/Slurm/Batch_BatchManager_eSlurm.hxx index b086863..83a624c 100644 --- a/src/Slurm/Batch_BatchManager_eSlurm.hxx +++ b/src/Slurm/Batch_BatchManager_eSlurm.hxx @@ -47,8 +47,7 @@ namespace Batch { const char * host = "localhost", const char * username = "", CommunicationProtocolType protocolType = SSH, - const char * mpiImpl = "nompi", - int nb_proc_per_node = 1); + const char * mpiImpl = "nompi"); virtual ~BatchManager_eSlurm(); // Methods to control jobs diff --git a/src/Slurm/Batch_FactBatchManager_eSlurm.cxx b/src/Slurm/Batch_FactBatchManager_eSlurm.cxx index 9fd77ab..8f524f2 100644 --- a/src/Slurm/Batch_FactBatchManager_eSlurm.cxx +++ b/src/Slurm/Batch_FactBatchManager_eSlurm.cxx @@ -46,10 +46,9 @@ namespace Batch { BatchManager * FactBatchManager_eSlurm::operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node) const + const char * mpiImpl) const { - return new BatchManager_eSlurm(this, hostname, username, protocolType, mpiImpl, nb_proc_per_node); + return new BatchManager_eSlurm(this, hostname, username, protocolType, mpiImpl); } } diff --git a/src/Slurm/Batch_FactBatchManager_eSlurm.hxx b/src/Slurm/Batch_FactBatchManager_eSlurm.hxx index 7eace42..bf7aaa2 100644 --- a/src/Slurm/Batch_FactBatchManager_eSlurm.hxx +++ b/src/Slurm/Batch_FactBatchManager_eSlurm.hxx @@ -45,8 +45,7 @@ namespace Batch { virtual BatchManager * operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node = 1) const; + const char * mpiImpl) const; }; diff --git a/src/Vishnu/Batch_BatchManager_eVishnu.cxx b/src/Vishnu/Batch_BatchManager_eVishnu.cxx index 61ec2fd..927f3ce 100644 --- a/src/Vishnu/Batch_BatchManager_eVishnu.cxx +++ b/src/Vishnu/Batch_BatchManager_eVishnu.cxx @@ -50,11 +50,9 @@ namespace Batch { const char * host, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node) + const char * mpiImpl) : // Force SH protocol for Vishnu - BatchManager(parent, host, username, SH, mpiImpl), - _nb_proc_per_node(nb_proc_per_node) + BatchManager(parent, host, username, SH, mpiImpl) { } diff --git a/src/Vishnu/Batch_BatchManager_eVishnu.hxx b/src/Vishnu/Batch_BatchManager_eVishnu.hxx index 373a92e..5674e5b 100644 --- a/src/Vishnu/Batch_BatchManager_eVishnu.hxx +++ b/src/Vishnu/Batch_BatchManager_eVishnu.hxx @@ -47,8 +47,7 @@ namespace Batch { const char * host = "localhost", const char * username = "", CommunicationProtocolType protocolType = SSH, - const char * mpiImpl = "nompi", - int nb_proc_per_node = 1); + const char * mpiImpl = "nompi"); virtual ~BatchManager_eVishnu(); // Methods to control jobs @@ -68,8 +67,6 @@ namespace Batch { std::string buildCommandFile(const Job & job); void exportInputFiles(const Job & job); - int _nb_proc_per_node; - }; } diff --git a/src/Vishnu/Batch_FactBatchManager_eVishnu.cxx b/src/Vishnu/Batch_FactBatchManager_eVishnu.cxx index 5b8652c..932e383 100644 --- a/src/Vishnu/Batch_FactBatchManager_eVishnu.cxx +++ b/src/Vishnu/Batch_FactBatchManager_eVishnu.cxx @@ -46,11 +46,10 @@ namespace Batch { BatchManager * FactBatchManager_eVishnu::operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node) const + const char * mpiImpl) const { // MESSAGE("Building new BatchManager_eVishnu on host '" << hostname << "'"); - return new BatchManager_eVishnu(this, hostname, username, protocolType, mpiImpl, nb_proc_per_node); + return new BatchManager_eVishnu(this, hostname, username, protocolType, mpiImpl); } } diff --git a/src/Vishnu/Batch_FactBatchManager_eVishnu.hxx b/src/Vishnu/Batch_FactBatchManager_eVishnu.hxx index bee9b98..20b9bfe 100644 --- a/src/Vishnu/Batch_FactBatchManager_eVishnu.hxx +++ b/src/Vishnu/Batch_FactBatchManager_eVishnu.hxx @@ -46,8 +46,7 @@ namespace Batch { virtual BatchManager * operator() (const char * hostname, const char * username, CommunicationProtocolType protocolType, - const char * mpiImpl, - int nb_proc_per_node = 1) const; + const char * mpiImpl) const; }; -- 2.39.2