Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
More doc for SMPI
authorMartin Quinson <martin.quinson@ens-rennes.fr>
Thu, 23 Nov 2023 22:51:02 +0000 (23:51 +0100)
committerMartin Quinson <martin.quinson@ens-rennes.fr>
Thu, 23 Nov 2023 22:51:02 +0000 (23:51 +0100)
docs/source/app_smpi.rst
src/smpi/colls/smpi_coll.cpp

index a168562..84bb4fc 100644 (file)
@@ -618,7 +618,9 @@ Mixing S4U and MPI simulation
 
 Mixing both interfaces is very easy. This can be useful to easily implement a service in S4U that is provided by your
 infrastructure in some way, and test how your MPI application interacts with this service. Or you can use it to start more than
-one MPI application in your simulation, and study their interactions.
+one MPI application in your simulation, and study their interactions. For that, you just need to use
+:cpp:ref:`SMPI_app_instance_register` in a regular S4U program, as shown in the example below. Compile it as usual (with gcc or
+g++, **not** smpicc) and execute it directly (**not** with smpirun).
 
 .. doxygenfunction:: SMPI_app_instance_start
 
index c2c0000..cf22e98 100644 (file)
@@ -284,7 +284,8 @@ static s_mpi_coll_description_t* find_coll_description(const std::string& collec
   std::string name_list = table->at(0).name;
   for (unsigned long i = 1; i < table->size(); i++)
     name_list = name_list + ", " + table->at(i).name;
-  xbt_die("Collective '%s' has no algorithm '%s'! Valid algorithms: %s.", collective.c_str(), algo.c_str(), name_list.c_str());
+  xbt_die("Collective '%s' has no algorithm '%s'! Valid algorithms: %s. Please use --help-coll for details.",
+          collective.c_str(), algo.c_str(), name_list.c_str());
 }
 
 int (*colls::gather)(const void* send_buff, int send_count, MPI_Datatype send_type, void* recv_buff, int recv_count,