SimGrid
3.13
Versatile Simulation of Distributed Systems
|
Functions to declare the kind of models that you want to use. More...
Functions | |
void | surf_cpu_model_init_Cas01 (void) |
Initializes the CPU model with the model Cas01. More... | |
void | surf_cpu_model_init_ti (void) |
Initializes the CPU model with trace integration [Deprecated]. More... | |
void | surf_network_model_init_SMPI (void) |
Same as network model 'LagrangeVelho', only with different correction factors. More... | |
void | surf_network_model_init_IB (void) |
Same as network model 'LagrangeVelho', only with different correction factors. More... | |
void | surf_network_model_init_LegrandVelho (void) |
Initializes the platform with the network model 'LegrandVelho'. More... | |
void | surf_network_model_init_Constant (void) |
Initializes the platform with the network model 'Constant'. More... | |
void | surf_network_model_init_CM02 (void) |
Initializes the platform with the network model CM02. More... | |
void | surf_network_model_init_Reno (void) |
Initializes the platform with the network model Reno. More... | |
void | surf_network_model_init_Reno2 (void) |
Initializes the platform with the network model Reno2. More... | |
void | surf_network_model_init_Vegas (void) |
Initializes the platform with the network model Vegas. More... | |
void | surf_storage_model_init_default (void) |
The storage model. More... | |
void | surf_host_model_init_compound (void) |
Initializes the platform with a compound host model. More... | |
void | surf_host_model_init_current_default (void) |
Initializes the platform with the current best network and cpu models at hand. More... | |
void | surf_host_model_init_ptask_L07 (void) |
Initializes the platform with the model L07. More... | |
void | surf_vm_model_init_HL13 (void) |
Initializes the platform with the current best network and cpu models at hand. More... | |
Functions to declare the kind of models that you want to use.
Initializes the CPU model with the model Cas01.
By default, this model uses the lazy optimization mechanism that relies on partial invalidation in LMM and a heap for lazy action update. You can change this behavior by setting the cpu/optim configuration variable to a different value.
You shouldn't have to call it by yourself.
Initializes the CPU model with trace integration [Deprecated].
You shouldn't have to call it by yourself.
Same as network model 'LagrangeVelho', only with different correction factors.
This model is proposed by Pierre-Nicolas Clauss and Martin Quinson and Stéphane Génaud based on the model 'LV08' and different correction factors depending on the communication size (< 1KiB, < 64KiB, >= 64KiB). See comments in the code for more information.
Same as network model 'LagrangeVelho', only with different correction factors.
This model impelments a variant of the contention model on Infinband networks based on the works of Jérôme Vienne : http://mescal.imag.fr/membres/jean-marc.vincent/index.html/PhD/Vienne.pdf
Initializes the platform with the network model 'LegrandVelho'.
This model is proposed by Arnaud Legrand and Pedro Velho based on the results obtained with the GTNets simulator for onelink and dogbone sharing scenarios. See comments in the code for more information.
Initializes the platform with the network model 'Constant'.
In this model, the communication time between two network cards is constant, hence no need for a routing table. This is particularly useful when simulating huge distributed algorithms where scalability is really an issue. This function is called in conjunction with surf_host_model_init_compound.
Initializes the platform with the network model CM02.
You sould call this function by yourself only if you plan using surf_host_model_init_compound. See comments in the code for more information.
Initializes the platform with the network model Reno.
The problem is related to max( sum( arctan(C * Df * xi) ) ).
Reference: [LOW03] S. H. Low. A duality model of TCP and queue management algorithms. IEEE/ACM Transaction on Networking, 11(4):525-536, 2003.
Call this function only if you plan using surf_host_model_init_compound.
Initializes the platform with the network model Reno2.
The problem is related to max( sum( arctan(C * Df * xi) ) ).
Reference: [LOW01] S. H. Low. A duality model of TCP and queue management algorithms. IEEE/ACM Transaction on Networking, 11(4):525-536, 2003.
Call this function only if you plan using surf_host_model_init_compound.
Initializes the platform with the network model Vegas.
This problem is related to max( sum( a * Df * ln(xi) ) ) which is equivalent to the proportional fairness.
Reference: [LOW03] S. H. Low. A duality model of TCP and queue management algorithms. IEEE/ACM Transaction on Networking, 11(4):525-536, 2003.
Call this function only if you plan using surf_host_model_init_compound.
Initializes the platform with a compound host model.
This function should be called after a cpu_model and a network_model have been set up.
Initializes the platform with the current best network and cpu models at hand.
This platform model separates the host model and the network model. The host model will be initialized with the model compound, the network model with the model LV08 (with cross traffic support) and the CPU model with the model Cas01. Such model is subject to modification with warning in the ChangeLog so monitor it!
Initializes the platform with the model L07.
With this model, only parallel tasks can be used. Resource sharing is done by identifying bottlenecks and giving an equal share of the model to each action.
Initializes the platform with the current best network and cpu models at hand.
This platform model seperates the host model and the network model. The host model will be initialized with the model compound, the network model with the model LV08 (with cross traffic support) and the CPU model with the model Cas01. Such model is subject to modification with warning in the ChangeLog so monitor it!
surf_cpu_model_t surf_cpu_model_pm |
The CPU model object for the physical machine layer.
surf_cpu_model_t surf_cpu_model_vm |
The CPU model object for the virtual machine layer.
s_surf_model_description_t surf_optimization_mode_description[] |
The list of all available optimization modes (both for cpu and networks).
These optimization modes can be set using –cfg=cpu/optim:... and –cfg=network/optim:...
s_surf_model_description_t surf_cpu_model_description[] |
The list of all available cpu model models.
surf_network_model_t surf_network_model |
The network model.
When creating a new API on top on SURF, you shouldn't use the network model unless you know what you are doing. Only the host model should be accessed because depending on the platform model, the network model can be NULL.
s_surf_model_description_t surf_network_model_description[] |
The list of all available network model models.
s_surf_model_description_t surf_storage_model_description[] |
The list of all available storage modes.
This storage mode can be set using –cfg=storage/model:...
surf_host_model_t surf_host_model |
The host model.
Note that when you create an API on top of SURF, the host model should be the only one you use because depending on the platform model, the network model and the CPU model may not exist.
surf_vm_model_t surf_vm_model |
The vm model.
Note that when you create an API on top of SURF,the vm model should be the only one you use because depending on the platform model, the network model and the CPU model may not exist.
s_surf_model_description_t surf_host_model_description[] |
The list of all available host model models.
s_surf_model_description_t surf_vm_model_description[] |
The list of all available vm model models.
xbt_dynar_t all_existing_models |
List of initialized models.