Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix source for generated files.
[simgrid.git] / doc / index.doc
1 /*! \page index
2
3 <center>
4 \htmlonly
5 <table width="100%"> 
6         <tr> 
7                 <td valign="middle" align="left">                       
8                                 <img src="simgrid_logo_2011.png" alt="SimGrid - Scalable simulation of distributed systems, ranging from grids to peer-to-peer systems" />              
9                 </td> 
10                 <td valign="middle" align="left"> 
11 \endhtmlonly
12 \htmlinclude .index.doc.toc                     
13 \htmlonly
14                 </td> 
15         </tr> 
16 </table> 
17 \endhtmlonly
18 </center>
19
20 SimGrid is a toolkit that provides core functionalities for the simulation
21 of distributed applications in heterogeneous distributed environments.
22 \htmlonly <!-- ______BODY_BEGIN______ --!> \endhtmlonly
23 The specific goal of the project is to facilitate research in the area of
24 distributed and parallel application scheduling on distributed computing
25 platforms ranging from simple network of workstations to Computational
26 Grids.
27 \htmlonly <!-- ______BODY_END______ --!> \endhtmlonly
28
29   - The official webpage is <a href="http://simgrid.gforge.inria.fr/">simgrid.gforge.inria.fr</a>. 
30   - The Frequently Asked Questions are <a href="http://simgrid.gforge.inria.fr/faq.html">here</a>. 
31   - The development webpage is <a href="https://gforge.inria.fr/projects/simgrid//">gforge.inria.fr/projects/simgrid</a>. 
32   - The user mailing list is <simgrid-user@lists.gforge.inria.fr>
33   - The SimGrid software package can be downloaded from <a href="http://simgrid.gforge.inria.fr/download.php">here</a>.
34 <br>
35
36 <hr>
37
38 \section overview Overview of the toolkit components
39
40 As depicted by the following diagram, the SimGrid toolkit is basically
41 three-layered (click on the picture to jump to a specific component).
42
43 \htmlonly <!-- ______BODY_BEGIN______ --!> \endhtmlonly
44 \htmlonly
45 <center>
46 \endhtmlonly
47 \htmlinclude simgrid_modules.map
48 \htmlonly
49 <br><b>Relationships between the SimGrid components (click to jump to API)</b>
50 </center>
51 \endhtmlonly
52 \htmlonly <!-- ______BODY_END______ --!> \endhtmlonly
53
54 \subsection overview_envs Programmation environments layer
55
56 SimGrid provides several programmation environments built on top of a unique
57 simulation kernel. Each environment targets a specific audiance and
58 constitutes a different paradigm. To choose which of them you want to use,
59 you have to think about what you want to do and what would be the result of
60 your work.
61
62  - If you want to study a theoritical problem and compare several
63    heuristics, you probably want to try <b>\ref MSG_API</b> (yet another
64    historical name). It was designed exactly to that extend and should allow
65    you to build easily rather realistic multi-agents simulation. Yet,
66    realism is not the main goal of this environment and the most annoying
67    technical issues of real platforms are masked here. Check the \ref
68    MSG_API section for more information.
69
70  - If you want to study the behaviour of a MPI application using emulation
71    technics, you should have a look at the <b>\ref SMPI_API</b> (Simulated
72    MPI) programming environment. Unfortunately, this work is still underway.
73    Check the \ref SMPI_API section for more information. 
74    
75  - If you want to develop a real distributed application, then you may find
76    <b>\ref GRAS_API</b> (Grid Reality And Simulation) useful. This is an API
77    for the realization of distributed applications. 
78    \n\n
79    Moreover, there is two implementations of this API: one on top of the
80    SURF (allowing to develop and test your application within the comfort of
81    the simulator) and another suited for deployment on real platforms
82    (allowing the resulting application to be highly portable and extremely
83    efficient).
84    \n\n
85    Even if you do not plan to run your code for real, you may want to switch
86    to GRAS if you intend to use MSG in a very intensive way (e.g. for
87    simulating a peer-to-peer environment).
88    \n\n
89    See the \ref GRAS_API section for more details.
90
91 If your favorite programming environment/model is not there (BSP,
92 components, OpenMP, etc.) is not represented in the SimGrid toolkit yet, you may
93 consider adding it. You should contact us first on the 
94 <a href=http://lists.gforge.inria.fr/mailman/listinfo/simgrid-devel>SimGrid 
95 developers mailing list</a>, though.
96
97 \subsection overview_kernel Simulation kernel layer
98
99 The core functionnalities to simulate a virtual platform are provided by a
100 module called <b>\ref SURF_API</b>.  It is
101 very low-level and is not intended to be used as such by end-users. Instead,
102 it serve as a basis for the higher level layer.
103
104 SURF main features are a fast max-min linear solver and the ability to
105 change transparently the model used to describe the platform. This greatly
106 eases the comparison of the several models existing in the litterature.
107
108 See the \ref SURF_API section for more details.
109
110 \subsection overview_fondation Base layer
111
112 The base of the whole toolkit is constituted by the <b>\ref XBT_API
113 (eXtended Bundle of Tools)</b>.
114
115 It is a portable library providing some grounding features such as \ref
116 XBT_log, \ref XBT_ex and \ref XBT_config. XBT also encompass
117 the following convenient datastructures: \ref XBT_dynar, \ref XBT_fifo, \ref
118 XBT_dict, \ref XBT_heap, \ref XBT_set and \ref XBT_swag.
119
120 See the \ref XBT_API section for more details.
121
122
123 \htmlonly <!-- ______BODY_BEGIN______ --!> \endhtmlonly
124 <br>
125 The SimGrid software package can be downloaded from 
126 <a href="http://simgrid.gforge.inria.fr/download.php">here</a>.<br>
127
128 If you are interested in the history of SimGrid and in current and planned development,
129 you can find out more <a href="http://simgrid.gforge.inria.fr/history.html">here</a>.
130
131 Any question, remark or suggestion are welcome on the 
132 <a href="http://lists.gforge.inria.fr/mailman/listinfo/simgrid-user">SimGrid users
133 mailing list</a>.
134
135 \htmlonly <!-- ______BODY_END______ --!> \endhtmlonly
136
137 <hr>
138 \htmlonly
139 <center>
140 <a href="http://creativecommons.org/licenses/LGPL/2.1/"><img alt="CC-GNU LGPL" border="0" src="http://creativecommons.org/images/public/cc-LGPL-a.png" /></a>
141 </center>
142 \endhtmlonly
143
144 */