X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/d6d6125ce98df87b1f8a2407f3245513847af6cd..4a4af34fa10d3d571f864d01298cb496b989f501:/include/simgrid/simix.h diff --git a/include/simgrid/simix.h b/include/simgrid/simix.h index 3fca936d2a..70fc02cba3 100644 --- a/include/simgrid/simix.h +++ b/include/simgrid/simix.h @@ -1,4 +1,4 @@ -/* Copyright (c) 2007-2010, 2012-2014. The SimGrid Team. +/* Copyright (c) 2007-2010, 2012-2015. The SimGrid Team. * All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it @@ -79,7 +79,7 @@ typedef struct s_smx_synchro *smx_synchro_t; /* FIXME: replace by specialized sy /** @brief Process datatype @ingroup simix_process_management - A processt may be defined as a code, with some private + A process may be defined as a code, with some private data, executing in a location. \see m_process_management @{ */ @@ -102,7 +102,7 @@ typedef enum { * int argc, char **argv: parameters passed to code * xbt_dict_t pros: properties */ -typedef void (*smx_creation_func_t) ( /* process */ smx_process_t*, +typedef smx_process_t (*smx_creation_func_t) ( /* name */ const char*, /* code */ xbt_main_func_t, /* userdata */ void*, @@ -321,28 +321,28 @@ XBT_PUBLIC(double) simcall_host_get_consumed_energy(sg_host_t host); XBT_PUBLIC(double) simcall_host_get_wattmin_at(sg_host_t host, int pstate); XBT_PUBLIC(double) simcall_host_get_wattmax_at(sg_host_t host, int pstate); -XBT_PUBLIC(smx_synchro_t) simcall_host_execute(const char *name, sg_host_t host, +XBT_PUBLIC(smx_synchro_t) simcall_process_execute(const char *name, double flops_amount, double priority, double bound, unsigned long affinity_mask); -XBT_PUBLIC(smx_synchro_t) simcall_host_parallel_execute(const char *name, +XBT_PUBLIC(smx_synchro_t) simcall_process_parallel_execute(const char *name, int host_nb, sg_host_t *host_list, double *flops_amount, double *bytes_amount, double amount, double rate); -XBT_PUBLIC(void) simcall_host_execution_destroy(smx_synchro_t execution); -XBT_PUBLIC(void) simcall_host_execution_cancel(smx_synchro_t execution); -XBT_PUBLIC(double) simcall_host_execution_get_remains(smx_synchro_t execution); -XBT_PUBLIC(e_smx_state_t) simcall_host_execution_get_state(smx_synchro_t execution); -XBT_PUBLIC(void) simcall_host_execution_set_priority(smx_synchro_t execution, double priority); -XBT_PUBLIC(void) simcall_host_execution_set_bound(smx_synchro_t execution, double bound); -XBT_PUBLIC(void) simcall_host_execution_set_affinity(smx_synchro_t execution, sg_host_t host, unsigned long mask); -XBT_PUBLIC(e_smx_state_t) simcall_host_execution_wait(smx_synchro_t execution); +XBT_PUBLIC(void) simcall_process_execution_destroy(smx_synchro_t execution); +XBT_PUBLIC(void) simcall_process_execution_cancel(smx_synchro_t execution); +XBT_PUBLIC(double) simcall_process_execution_get_remains(smx_synchro_t execution); +XBT_PUBLIC(e_smx_state_t) simcall_process_execution_get_state(smx_synchro_t execution); +XBT_PUBLIC(void) simcall_process_execution_set_priority(smx_synchro_t execution, double priority); +XBT_PUBLIC(void) simcall_process_execution_set_bound(smx_synchro_t execution, double bound); +XBT_PUBLIC(void) simcall_process_execution_set_affinity(smx_synchro_t execution, sg_host_t host, unsigned long mask); +XBT_PUBLIC(e_smx_state_t) simcall_process_execution_wait(smx_synchro_t execution); XBT_PUBLIC(xbt_dict_t) simcall_host_get_mounted_storage_list(sg_host_t host); XBT_PUBLIC(xbt_dynar_t) simcall_host_get_attached_storage_list(sg_host_t host); -XBT_PUBLIC(void) simcall_host_get_params(sg_host_t vm, ws_params_t param); -XBT_PUBLIC(void) simcall_host_set_params(sg_host_t vm, ws_params_t param); +XBT_PUBLIC(void) simcall_host_get_params(sg_host_t vm, vm_params_t param); +XBT_PUBLIC(void) simcall_host_set_params(sg_host_t vm, vm_params_t param); /******************************* VM simcalls ********************************/ // Create the vm_workstation at the SURF level @@ -363,8 +363,7 @@ XBT_PUBLIC(void) simcall_vm_shutdown(sg_host_t vm); /**************************** Process simcalls ********************************/ /* Constructor and Destructor */ -XBT_PUBLIC(void) simcall_process_create(smx_process_t *process, - const char *name, +XBT_PUBLIC(smx_process_t) simcall_process_create(const char *name, xbt_main_func_t code, void *data, const char *hostname, @@ -380,8 +379,6 @@ XBT_PUBLIC(void) SIMIX_process_throw(smx_process_t process, xbt_errcat_t cat, in /* Process handling */ XBT_PUBLIC(void) simcall_process_cleanup(smx_process_t process); -XBT_PUBLIC(void) simcall_process_change_host(smx_process_t process, - sg_host_t dest); XBT_PUBLIC(void) simcall_process_suspend(smx_process_t process); XBT_PUBLIC(void) simcall_process_resume(smx_process_t process); @@ -389,6 +386,7 @@ XBT_PUBLIC(void) simcall_process_resume(smx_process_t process); XBT_PUBLIC(int) simcall_process_count(void); XBT_PUBLIC(void *) simcall_process_get_data(smx_process_t process); XBT_PUBLIC(void) simcall_process_set_data(smx_process_t process, void *data); +XBT_PUBLIC(void) simcall_process_set_host(smx_process_t process, sg_host_t dest); XBT_PUBLIC(sg_host_t) simcall_process_get_host(smx_process_t process); XBT_PUBLIC(const char *) simcall_process_get_name(smx_process_t process); XBT_PUBLIC(int) simcall_process_get_PID(smx_process_t process); @@ -396,6 +394,7 @@ XBT_PUBLIC(int) simcall_process_get_PPID(smx_process_t process); XBT_PUBLIC(int) simcall_process_is_suspended(smx_process_t process); XBT_PUBLIC(xbt_dict_t) simcall_process_get_properties(smx_process_t host); XBT_PUBLIC(void) simcall_process_set_kill_time(smx_process_t process, double kill_time); +XBT_PUBLIC(double) simcall_process_get_kill_time(smx_process_t process); XBT_PUBLIC(void) simcall_process_on_exit(smx_process_t process, int_f_pvoid_pvoid_t fun, void *data); XBT_PUBLIC(void) simcall_process_auto_restart_set(smx_process_t process, int auto_restart); XBT_PUBLIC(smx_process_t) simcall_process_restart(smx_process_t process); @@ -418,14 +417,14 @@ XBT_PUBLIC(xbt_dict_t) SIMIX_get_rdv_points(void); /***** Communication simcalls *****/ -XBT_PUBLIC(void) simcall_comm_send(smx_process_t src, smx_rdv_t rdv, double task_size, +XBT_PUBLIC(void) simcall_comm_send(smx_process_t sender, smx_rdv_t rdv, double task_size, double rate, void *src_buff, size_t src_buff_size, int (*match_fun)(void *, void *, smx_synchro_t), void (*copy_data_fun)(smx_synchro_t, void*, size_t), void *data, double timeout); -XBT_PUBLIC(smx_synchro_t) simcall_comm_isend(smx_process_t src, smx_rdv_t rdv, +XBT_PUBLIC(smx_synchro_t) simcall_comm_isend(smx_process_t sender, smx_rdv_t rdv, double task_size, double rate, void *src_buff, size_t src_buff_size, @@ -434,13 +433,13 @@ XBT_PUBLIC(smx_synchro_t) simcall_comm_isend(smx_process_t src, smx_rdv_t rdv, void (*copy_data_fun)(smx_synchro_t, void*, size_t), void *data, int detached); -XBT_PUBLIC(void) simcall_comm_recv(smx_rdv_t rdv, void *dst_buff, +XBT_PUBLIC(void) simcall_comm_recv(smx_process_t receiver, smx_rdv_t rdv, void *dst_buff, size_t * dst_buff_size, int (*match_fun)(void *, void *, smx_synchro_t), void (*copy_data_fun)(smx_synchro_t, void*, size_t), void *data, double timeout, double rate); -XBT_PUBLIC(smx_synchro_t) simcall_comm_irecv(smx_rdv_t rdv, void *dst_buff, +XBT_PUBLIC(smx_synchro_t) simcall_comm_irecv(smx_process_t receiver, smx_rdv_t rdv, void *dst_buff, size_t * dst_buff_size, int (*match_fun)(void *, void *, smx_synchro_t), void (*copy_data_fun)(smx_synchro_t, void*, size_t),