Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Cosmetics: conslidate TODO list.
[simgrid.git] / src / smpi / internals / smpi_global.cpp
index 408be49..085ca5f 100644 (file)
@@ -5,6 +5,7 @@
 
 #include "mc/mc.h"
 #include "simgrid/s4u/Engine.hpp"
+#include "simgrid/plugins/file_system.h"
 #include "smpi_coll.hpp"
 #include "smpi_f2c.hpp"
 #include "smpi_host.hpp"
@@ -20,6 +21,7 @@
 #include <dlfcn.h>
 #include <fcntl.h>
 #include <fstream>
+#include <sys/stat.h>
 
 #if not defined(__APPLE__)
 #include <link.h>
@@ -127,6 +129,10 @@ MPI_Comm smpi_process_comm_self(){
   return smpi_process()->comm_self();
 }
 
+MPI_Info smpi_process_info_env(){
+  return smpi_process()->info_env();
+}
+
 void smpi_process_init(int *argc, char ***argv){
   simgrid::smpi::ActorExt::init();
 }
@@ -139,15 +145,6 @@ void smpi_process_set_user_data(void *data){
   simgrid::s4u::Actor::self()->get_impl()->set_user_data(data);
 }
 
-
-int smpi_global_size()
-{
-  char *value = getenv("SMPI_GLOBAL_SIZE");
-  xbt_assert(value,"Please set env var SMPI_GLOBAL_SIZE to the expected number of processes.");
-
-  return xbt_str_parse_int(value, "SMPI_GLOBAL_SIZE contains a non-numerical value: %s");
-}
-
 void smpi_comm_set_copy_data_callback(void (*callback) (smx_activity_t, void*, size_t))
 {
   static void (*saved_callback)(smx_activity_t, void*, size_t);
@@ -366,7 +363,6 @@ void smpi_global_destroy()
 
   if (smpi_privatize_global_variables == SmpiPrivStrategies::MMAP)
     smpi_destroy_global_memory_segments();
-  smpi_free_static();
   if(simgrid::smpi::F2C::lookup() != nullptr)
     simgrid::smpi::F2C::delete_lookup();
 }
@@ -669,7 +665,7 @@ int smpi_main(const char* executable, int argc, char* argv[])
   SIMIX_global_init(&argc, argv);
 
   SMPI_switch_data_segment = &smpi_switch_data_segment;
-
+  sg_storage_file_system_init();
   // parse the platform file: get the host list
   simgrid::s4u::Engine::get_instance()->load_platform(argv[1]);
   SIMIX_comm_set_copy_data_callback(smpi_comm_copy_buffer_callback);