SimGrid  3.9
Versatile Simulation of Distributed Systems
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Extending SimGrid

We start to put TAGS in simgrid source code for having tutorials to see where is the important parts ans steps to create:

  • a new MSG functions or a new API.
  • a new model in surf.
  • new tags in xml files

How to add a new MSG function?

Search for expression "TUTORIAL: New API".

user@caraja:~/workspace/simgrid/src$ cg "TUTORIAL: New API"
 0 msg/msg_new_api.c             15 /* TUTORIAL: New API*/
 1 simix/smx_smurf.c            582 /* TUTORIAL: New API*/
 2 simix/smx_smurf.c            616 /* TUTORIAL: New API*/
 3 simix/smx_smurf_private.h    102 /* TUTORIAL: New API*/
 4 simix/smx_smurf_private.h    629 /* TUTORIAL: New API*/
 5 simix/smx_private.h           28 /* TUTORIAL: New API*/
 6 simix/smx_private.h          101 /* TUTORIAL: New API*/
 7 simix/smx_private.h          182 /* TUTORIAL: New API*/
 8 simix/smx_global.c           454 /* TUTORIAL: New API*/
 9 simix/smx_new_api.c            8 /* TUTORIAL: New API*/
10 simix/smx_user.c            1684 /* TUTORIAL: New API*/
11 simix/smx_new_api_private.h    8 /* TUTORIAL: New API*/
12 simix/smx_process.c          338 /* TUTORIAL: New API*/

How to add a new model in surf?

Search for expression "TUTORIAL: New model".

user@caraja:~/workspace/simgrid/src$ cg "TUTORIAL: New model"
0 surf/new_model_private.h   2 /* TUTORIAL: New model
1 surf/surf.c              213 /* TUTORIAL: New model*/
2 surf/surf_config.c       380 /* TUTORIAL: New model*/
3 surf/surf_config.c       746 /* TUTORIAL: New model*/
4 surf/new_model.c           8 /* TUTORIAL: New model*/
5 include/surf/surf.h      157 /* TUTORIAL: New model*/
6 include/surf/surf.h      345 /* TUTORIAL: New model*/
7 include/surf/surf.h      661 /* TUTORIAL: New model*/

What is How to add a new tag for xml files?

Search for expression "TUTORIAL: New TAG".

user@caraja:~/workspace/simgrid/src$ cg "TUTORIAL: New TAG"
0 surf/sg_platf.c                    43 /* TUTORIAL: New TAG*/
1 surf/sg_platf.c                    89 /* TUTORIAL: New TAG*/
2 surf/sg_platf.c                   124 /* TUTORIAL: New TAG*/
3 surf/sg_platf.c                   337 /* TUTORIAL: New TAG*/
4 surf/surfxml_parse.c              769 /* TUTORIAL: New TAG*/
5 surf/surf_private.h               205 /* TUTORIAL: New TAG*/
6 surf/surfxml_parseplatf.c          64 /* TUTORIAL: New TAG*/
7 surf/surfxml_parseplatf.c          85 /* TUTORIAL: New TAG*/
8 include/simgrid/platf_interface.h  42 /* TUTORIAL: New TAG*/