]> SALOME platform Git repositories - modules/kernel.git/commitdiff
Salome HOME
add ompi mpi implementation for cea mars cluster
authorsecher <secher>
Wed, 24 Oct 2012 08:37:23 +0000 (08:37 +0000)
committersecher <secher>
Wed, 24 Oct 2012 08:37:23 +0000 (08:37 +0000)
src/Launcher/BatchTest.cxx
src/Launcher/Launcher.cxx
src/ResourcesManager/SALOME_ResourcesCatalog_Handler.cxx
src/ResourcesManager/SALOME_ResourcesCatalog_Parser.cxx
src/ResourcesManager/SALOME_ResourcesCatalog_Parser.hxx
src/ResourcesManager/SALOME_ResourcesManager.cxx

index 37076b0fb61880a32d252c6f490b3c805951290c..d765f51e8c1ababac7f863f833d791167a235697 100644 (file)
@@ -478,6 +478,8 @@ BatchTest::test_jobsubmit_mpi()
     mpiImpl = new MpiImpl_MPICH2();
   else if(mpi_type == "openmpi")
     mpiImpl = new MpiImpl_OPENMPI();
+  else if(mpi_type == "ompi")
+    mpiImpl = new MpiImpl_OMPI();
   else if(mpi_type == "slurmmpi")
     mpiImpl = new MpiImpl_SLURM();
   else
index 62bfe647bfbcf7a1941b03d091ecda1bfa79a30a..d749f82587af34507f38d211575416211076af4a 100644 (file)
@@ -403,6 +403,9 @@ Launcher_cpp::FactoryBatchManager(ParserResourcesType& params)
     case openmpi:
       mpi = "openmpi";
       break;
+    case ompi:
+      mpi = "ompi";
+      break;
     case slurmmpi:
       mpi = "slurmmpi";
       break;
index f65db96c038e02206a098dba67123dff16560971..ae42569dd2c2ee34aa32563a28ce15cc295ee5ae 100755 (executable)
@@ -248,6 +248,8 @@ SALOME_ResourcesCatalog_Handler::ProcessCluster(xmlNodePtr cluster_descr, Parser
       resource.mpi = mpich2;
     else if (anMpi == "openmpi")
       resource.mpi = openmpi;
+    else if (anMpi == "ompi")
+      resource.mpi = ompi;
     else if  (anMpi == "slurmmpi")
       resource.mpi = slurmmpi;
     else if  (anMpi == "prun")
@@ -543,6 +545,8 @@ SALOME_ResourcesCatalog_Handler::ProcessMachine(xmlNodePtr machine_descr, Parser
       resource.mpi = mpich2;
     else if (anMpi == "openmpi")
       resource.mpi = openmpi;
+    else if (anMpi == "ompi")
+      resource.mpi = ompi;
     else if  (anMpi == "slurmmpi")
       resource.mpi = slurmmpi;
     else if  (anMpi == "prun")
@@ -768,6 +772,9 @@ void SALOME_ResourcesCatalog_Handler::PrepareDocToXmlFile(xmlDocPtr theDoc)
       case openmpi:
         xmlNewProp(node, BAD_CAST test_mpi, BAD_CAST "openmpi");
         break;
+      case ompi:
+        xmlNewProp(node, BAD_CAST test_mpi, BAD_CAST "ompi");
+        break;
       case slurmmpi:
         xmlNewProp(node, BAD_CAST test_mpi, BAD_CAST "slurmmpi");
         break;
index 50360f72f0eabd2c8169ef2e97d7208422535397..9cf3cfa99d6e7a9065e19150c9f076dd84969036 100644 (file)
@@ -263,6 +263,8 @@ ParserResourcesType::PrintMpiImplType() const
     return "mpich2";
   else if (mpi == openmpi)
     return "openmpi";
+  else if (mpi == ompi)
+    return "ompi";
   else if (mpi == slurmmpi)
     return "slurmmpi";
   else
index 20a390db1f239a37b39a5df7a9fb6f7b3b2d421b..1ac87b3400ea9e38b298dab2945c4a9835b0cd43 100755 (executable)
@@ -47,7 +47,7 @@ enum AccessModeType {interactive, batch};
 
 enum BatchType {none, pbs, lsf, sge, ssh_batch, ccc, ll, slurm, vishnu};
 
-enum MpiImplType {nompi, lam, mpich1, mpich2, openmpi, slurmmpi, prun};
+enum MpiImplType {nompi, lam, mpich1, mpich2, openmpi, ompi, slurmmpi, prun};
 
 class RESOURCESMANAGER_EXPORT ResourceDataToSort
   {
index eb932fdc84dbbd98adae1909b161e91b26f2dadc..30a1c1b44eadfb65d220409d7d1aad8dc4a3e868 100644 (file)
@@ -237,6 +237,8 @@ SALOME_ResourcesManager::GetResourceDefinition(const char * name)
     p_ptr->mpiImpl = "mpich2";
   else if( resource.mpi == openmpi )
     p_ptr->mpiImpl = "openmpi";
+  else if( resource.mpi == ompi )
+    p_ptr->mpiImpl = "ompi";
   else if( resource.mpi == slurmmpi )
     p_ptr->mpiImpl = "slurmmpi";
   else if( resource.mpi == prun )
@@ -315,6 +317,8 @@ SALOME_ResourcesManager::AddResource(const Engines::ResourceDefinition& new_reso
     resource.mpi = mpich2;
   else if (anMpi == "openmpi")
     resource.mpi = openmpi;
+  else if (anMpi == "ompi")
+    resource.mpi = ompi;
   else if  (anMpi == "slurmmpi")
     resource.mpi = slurmmpi;
   else if  (anMpi == "prun")
@@ -499,7 +503,7 @@ SALOME_ResourcesManager::getMachineFile(std::string resource_name,
           cluster_it++;
         }
       }
-      else if (resource.mpi == openmpi)
+      else if ((resource.mpi == openmpi) || (resource.mpi == ompi))
       {
         // Creating machine file
         machine_file_name = tmpnam(NULL);