|
SimGrid
3.18
Versatile Simulation of Distributed Systems
|
#include "simgrid/s4u/Actor.hpp"#include "src/simix/popping_private.hpp"#include "src/surf/PropertyHolder.hpp"#include <boost/intrusive/list.hpp>#include <list>#include <map>Classes | |
| struct | s_smx_process_exit_fun_t |
| class | simgrid::simix::ProcessArg |
| class | simgrid::simix::ActorImpl |
Namespaces | |
| simgrid | |
| Alltoall Bruck. | |
| simgrid::simix | |
Typedefs | |
| typedef simgrid::simix::ProcessArg * | smx_process_arg_t |
| typedef simgrid::simix::ActorImpl * | smx_actor_t |
Variables | |
| void(* | SMPI_switch_data_segment )(int dest) |
| typedef simgrid::simix::ActorImpl* smx_actor_t |
| smx_actor_t SIMIX_process_create | ( | const char * | name, |
| std::function< void()> | code, | ||
| void * | data, | ||
| sg_host_t | host, | ||
| std::map< std::string, std::string > * | properties, | ||
| smx_actor_t | parent_process | ||
| ) |
| void SIMIX_process_runall | ( | ) |
Executes the processes from simix_global->process_to_run.
The processes of simix_global->process_to_run are run (in parallel if possible). On exit, simix_global->process_to_run is empty, and simix_global->process_that_ran contains the list of processes that just ran. The two lists are swapped so, be careful when using them before and after a call to this function.
| void SIMIX_process_kill | ( | smx_actor_t | process, |
| smx_actor_t | issuer | ||
| ) |
Internal function to kill a SIMIX process.
This function may be called when a SIMCALL_PROCESS_KILL simcall occurs, or directly for SIMIX internal purposes.
| process | poor victim |
| issuer | the process which has sent the PROCESS_KILL. Important to not schedule twice the same process. |
| void SIMIX_process_killall | ( | smx_actor_t | issuer, |
| int | reset_pid | ||
| ) |
Kills all running processes.
| issuer | this one will not be killed |
| void SIMIX_process_cleanup | ( | smx_actor_t | arg | ) |
Moves a process to the list of processes to destroy.
| void SIMIX_process_empty_trash | ( | ) |
Garbage collection.
Should be called some time to time to free the memory allocated for processes that have finished (or killed).
| void SIMIX_process_yield | ( | smx_actor_t | self | ) |
Calling this function makes the process to yield.
Only the current process can call this function, giving back the control to maestro.
| self | the current process |
| void SIMIX_process_change_host | ( | smx_actor_t | process, |
| sg_host_t | dest | ||
| ) |
| void SIMIX_process_set_data | ( | smx_actor_t | process, |
| void * | data | ||
| ) |
| smx_actor_t SIMIX_process_get_by_name | ( | const char * | name | ) |
| void SIMIX_process_auto_restart_set | ( | smx_actor_t | process, |
| int | auto_restart | ||
| ) |
Sets the auto-restart status of the process.
If set to 1, the process will be automatically restarted when its host comes back.
| void SIMIX_process_sleep_destroy | ( | smx_activity_t | synchro | ) |
| smx_activity_t SIMIX_process_join | ( | smx_actor_t | issuer, |
| smx_actor_t | process, | ||
| double | timeout | ||
| ) |