SimGrid 3.6.2
Scalable simulation of distributed systems
|
A number of options can be given at runtime to change the default SimGrid behavior. In particular, you can change the default cpu and network models...
Experimental fullduplex support is now available on the svn branch. In order to fullduple to work your platform must have two links for each pair of interconnected hosts, see an example here:
simgrid_svn_sources/exemples/msg/gtnets/fullduplex-p.xml
Using fullduplex support ongoing and incoming communication flows are treated independently for most models. The exception is the LV08 model which adds 0.05 of usage on the opposite direction for each new created flow. This can be useful to simulate some important TCP phenomena such as ack compression.
Running a fullduplex example:
cd simgrid_svn_sources/exemples/msg/gtnets ./gtnets fullduplex-p.xml fullduplex-d.xml --cfg=fullduplex:1
The default simgrid network model uses a max-min based approach as explained in the research report A Network Model for Simulation of Grid Application. Other models have been proposed and implemented since then (see for example Accuracy Study and Improvement of Network Simulation in the SimGrid Framework) and can be activated at runtime. For example:
./mycode platform.xml deployment.xml --cfg=workstation/model:compound --cfg=network/model:LV08 -cfg=cpu/model:Cas01
Possible models for the network are currently "Constant", "CM02", "LegrandVelho", "GTNets", Reno", "Reno2", "Vegas". Others will probably be added in the future and many of the previous ones are experimental and are likely to disappear without notice... To know the list of the currently implemented models, you should use the --help-models command line option.
./masterslave_forwarder ../small_platform.xml deployment_masterslave.xml --help-models Long description of the workstation models accepted by this simulator: CLM03: Default workstation model, using LV08 and CM02 as network and CPU compound: Workstation model allowing you to use other network and CPU models ptask_L07: Workstation model with better parallel task modeling Long description of the CPU models accepted by this simulator: Cas01_fullupdate: CPU classical model time=size/power Cas01: Variation of Cas01_fullupdate with partial invalidation optimization of lmm system. Should produce the same values, only faster CpuTI: Variation of Cas01 with also trace integration. Should produce the same values, only faster if you use availability traces Long description of the network models accepted by this simulator: Constant: Simplistic network model where all communication take a constant time (one second) CM02: Realistic network model with lmm_solve and no correction factors LV08: Realistic network model with lmm_solve and these correction factors: latency*=10.4, bandwidth*=.92, S=8775 Reno: Model using lagrange_solve instead of lmm_solve (experts only) Reno2: Model using lagrange_solve instead of lmm_solve (experts only) Vegas: Model using lagrange_solve instead of lmm_solve (experts only)
To enable the experimental SimGrid model-checking support the program should be executed with the command line argument
--cfg=model-check:1
Properties are expressed as assertions using the function
void MC_assert(int prop);
Back to the main Simgrid Documentation page |
The version of Simgrid documented here is v3.6.2. Documentation of other versions can be found in their respective archive files (directory doc/html). |
Generated for SimGridAPI by
![]() |