SimGrid  3.12
Versatile Simulation of Distributed Systems
Host Management Functions

This section describes the host structure of MSG. More...

Typedefs

typedef sg_host_t msg_host_t
 Host datatype.A location (or host) is any possible place where a process may run. Thus it is represented as a physical resource with computing capabilities, some mailboxes to enable running process to communicate with remote ones, and some private data that can be only accessed by local process.
 

Functions

msg_host_t MSG_host_by_name (const char *name)
 Finds a msg_host_t using its name. More...
 
msg_error_t MSG_host_set_data (msg_host_t host, void *data)
 Set the user data of a msg_host_t. More...
 
void * MSG_host_get_data (msg_host_t host)
 Return the user data of a msg_host_t. More...
 
const char * MSG_host_get_name (msg_host_t host)
 Return the name of the msg_host_t. More...
 
msg_host_t MSG_host_self (void)
 Return the location on which the current process is executed.
 
void MSG_host_on (msg_host_t host)
 Start the host if it is off. More...
 
void MSG_host_off (msg_host_t host)
 Stop the host if it is on. More...
 
int MSG_get_host_number (void)
 Return the current number MSG hosts.
 
xbt_dynar_t MSG_hosts_as_dynar (void)
 Return a dynar containing all the hosts declared at a given point of time. More...
 
int MSG_get_host_msgload (msg_host_t h)
 Return the number of MSG tasks currently running on a msg_host_t. The external load is not taken in account.
 
double MSG_get_host_speed (msg_host_t h)
 Return the speed of the processor (in flop/s), regardless of the current load on the machine.
 
int MSG_host_get_core_number (msg_host_t host)
 Return the number of cores. More...
 
xbt_swag_t MSG_host_get_process_list (msg_host_t host)
 Return the list of processes attached to an host. More...
 
const char * MSG_host_get_property_value (msg_host_t host, const char *name)
 Returns the value of a given host property. More...
 
xbt_dict_t MSG_host_get_properties (msg_host_t host)
 Returns a xbt_dict_t consisting of the list of properties assigned to this host. More...
 
void MSG_host_set_property_value (msg_host_t host, const char *name, char *value, void_f_pvoid_t free_ctn)
 Change the value of a given host property. More...
 
int MSG_host_is_on (msg_host_t host)
 Determine if a host is up and running. More...
 
int MSG_host_is_off (msg_host_t host)
 Determine if a host is currently off. More...
 
void MSG_host_set_params (msg_host_t host, vm_params_t params)
 Set the parameters of a given host. More...
 
void MSG_host_get_params (msg_host_t host, vm_params_t params)
 Get the parameters of a given host. More...
 
double MSG_host_get_power_peak_at (msg_host_t host, int pstate_index)
 Return the speed of the processor (in flop/s) at a given pstate. See also SURF Energy Plugin. More...
 
double MSG_host_get_current_power_peak (msg_host_t host)
 Return the current speed of the processor (in flop/s) More...
 
int MSG_host_get_nb_pstates (msg_host_t host)
 Return the total count of pstates defined for a host. See also SURF Energy Plugin. More...
 
void MSG_host_set_pstate (msg_host_t host, int pstate_index)
 Sets the speed of the processor (in flop/s) at a given pstate. See also SURF Energy Plugin. More...
 
int MSG_host_get_pstate (msg_host_t host)
 Gets the pstate at which the given host is currently running. See also SURF Energy Plugin. More...
 
double MSG_host_get_consumed_energy (msg_host_t host)
 Return the total energy consumed by a host (in Joules). See also SURF Energy Plugin. More...
 
double MSG_host_get_wattmin_at (msg_host_t host, int pstate)
 Returns the amount of watt dissipated at the given pstate when the host is idling.
 
double MSG_host_get_wattmax_at (msg_host_t host, int pstate)
 Returns the amount of watt dissipated at the given pstate when the host burns CPU at 100%.
 
xbt_dict_t MSG_host_get_mounted_storage_list (msg_host_t host)
 Return the list of mount point names on an host. More...
 
xbt_dynar_t MSG_host_get_attached_storage_list (msg_host_t host)
 Return the list of storages attached to an host. More...
 
xbt_dict_t MSG_host_get_storage_content (msg_host_t host)
 Return the content of mounted storages on an host. More...
 
void * MSG_storage_get_data (msg_storage_t storage)
 Returns the user data of a msg_storage_t. More...
 
void MSG_vm_set_property_value (msg_vm_t vm, const char *name, void *value, void_f_pvoid_t free_ctn)
 Change the value of a given host property. More...
 

Detailed Description

This section describes the host structure of MSG.

(msg_host_t) and the functions for managing it.

A location (or host) is any possible place where a process may run. Thus it may be represented as a physical resource with computing capabilities, some mailboxes to enable running process to communicate with remote ones, and some private data that can be only accessed by local process.

See also
msg_host_t

Function Documentation

msg_host_t MSG_host_by_name ( const char *  name)

Finds a msg_host_t using its name.

This is a name directory service

Parameters
namethe name of an host.
Returns
the corresponding host
msg_error_t MSG_host_set_data ( msg_host_t  host,
void *  data 
)

Set the user data of a msg_host_t.

This functions checks whether some data has already been associated to host or not and attach data to host if it is possible.

void* MSG_host_get_data ( msg_host_t  host)

Return the user data of a msg_host_t.

This functions checks whether host is a valid pointer or not and return the user data associated to host if it is possible.

const char* MSG_host_get_name ( msg_host_t  host)

Return the name of the msg_host_t.

This functions checks whether host is a valid pointer or not and return its name.

void MSG_host_on ( msg_host_t  host)

Start the host if it is off.

See also MSG_host_is_on() and MSG_host_is_off() to test the current state of the host and SURF Energy Plugin for more info on DVFS.

void MSG_host_off ( msg_host_t  host)

Stop the host if it is on.

See also MSG_host_is_on() and MSG_host_is_off() to test the current state of the host and SURF Energy Plugin for more info on DVFS.

xbt_dynar_t MSG_hosts_as_dynar ( void  )

Return a dynar containing all the hosts declared at a given point of time.

Remarks
The host order in the returned array is generally different from the host creation/declaration order in the XML platform (we use a hash table internally)
int MSG_host_get_core_number ( msg_host_t  host)

Return the number of cores.

Parameters
hosta host
Returns
the number of cores
xbt_swag_t MSG_host_get_process_list ( msg_host_t  host)

Return the list of processes attached to an host.

Parameters
hosta host
Returns
a swag with the attached processes
const char* MSG_host_get_property_value ( msg_host_t  host,
const char *  name 
)

Returns the value of a given host property.

Parameters
hosta host
namea property name
Returns
value of a property (or NULL if property not set)
xbt_dict_t MSG_host_get_properties ( msg_host_t  host)

Returns a xbt_dict_t consisting of the list of properties assigned to this host.

Parameters
hosta host
Returns
a dict containing the properties
void MSG_host_set_property_value ( msg_host_t  host,
const char *  name,
char *  value,
void_f_pvoid_t  free_ctn 
)

Change the value of a given host property.

Parameters
hosta host
namea property name
valuewhat to change the property to
free_ctnthe freeing function to use to kill the value on need
int MSG_host_is_on ( msg_host_t  host)

Determine if a host is up and running.

See also MSG_host_on() and MSG_host_off() to switch the host ON and OFF and SURF Energy Plugin for more info on DVFS.

Parameters
hosthost to test
Returns
Returns true if the host is up and running, and false if it's currently down
int MSG_host_is_off ( msg_host_t  host)

Determine if a host is currently off.

See also MSG_host_on() and MSG_host_off() to switch the host ON and OFF and SURF Energy Plugin for more info on DVFS.

void MSG_host_set_params ( msg_host_t  host,
vm_params_t  params 
)

Set the parameters of a given host.

Parameters
hosta host
paramsa prameter object
void MSG_host_get_params ( msg_host_t  host,
vm_params_t  params 
)

Get the parameters of a given host.

Parameters
hosta host
paramsa prameter object
double MSG_host_get_power_peak_at ( msg_host_t  host,
int  pstate_index 
)

Return the speed of the processor (in flop/s) at a given pstate. See also SURF Energy Plugin.

Parameters
hosthost to test
pstate_indexpstate to test
Returns
Returns the processor speed associated with pstate_index
double MSG_host_get_current_power_peak ( msg_host_t  host)

Return the current speed of the processor (in flop/s)

Parameters
hosthost to test
Returns
Returns the current processor speed
int MSG_host_get_nb_pstates ( msg_host_t  host)

Return the total count of pstates defined for a host. See also SURF Energy Plugin.

Parameters
hosthost to test
void MSG_host_set_pstate ( msg_host_t  host,
int  pstate_index 
)

Sets the speed of the processor (in flop/s) at a given pstate. See also SURF Energy Plugin.

Parameters
hosthost to test
pstate_indexpstate to switch to
int MSG_host_get_pstate ( msg_host_t  host)

Gets the pstate at which the given host is currently running. See also SURF Energy Plugin.

Parameters
hosthost to test
double MSG_host_get_consumed_energy ( msg_host_t  host)

Return the total energy consumed by a host (in Joules). See also SURF Energy Plugin.

Parameters
hosthost to test
Returns
Returns the consumed energy
xbt_dict_t MSG_host_get_mounted_storage_list ( msg_host_t  host)

Return the list of mount point names on an host.

Parameters
hosta host
Returns
a dict containing all mount point on the host (mount_name => msg_storage_t)
xbt_dynar_t MSG_host_get_attached_storage_list ( msg_host_t  host)

Return the list of storages attached to an host.

Parameters
hosta host
Returns
a dynar containing all storages (name) attached to the host
xbt_dict_t MSG_host_get_storage_content ( msg_host_t  host)

Return the content of mounted storages on an host.

Parameters
hosta host
Returns
a dict containing content (as a dict) of all storages mounted on the host
void* MSG_storage_get_data ( msg_storage_t  storage)

Returns the user data of a msg_storage_t.

This functions checks whether storage is a valid pointer or not and returns the user data associated to storage if it is possible.

void MSG_vm_set_property_value ( msg_vm_t  vm,
const char *  name,
void *  value,
void_f_pvoid_t  free_ctn 
)

Change the value of a given host property.

Parameters
vma vm
namea property name
valuewhat to change the property to
free_ctnthe freeing function to use to kill the value on need