~ubuntu-branches/ubuntu/raring/simgrid/raring

« back to all changes in this revision

Viewing changes to doc/doxygen/internals.doc

  • Committer: Package Import Robot
  • Author(s): Martin Quinson
  • Date: 2013-01-31 00:24:51 UTC
  • mfrom: (10.1.6 sid)
  • Revision ID: package-import@ubuntu.com-20130131002451-krejhf7w7h24lpsc
Tags: 3.9~rc1-1
* New upstream release: the "Grasgory" release. Major changes:
  - Gras was completely removed from this version.
  - Documentation reorganization to ease browsing it.
  - New default value for the TCP_gamma parameter: 4MiB

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*! @page internals SimGrid internals
 
2
 
 
3
This page does not exist yet, sorry. We are currently refurbishing the
 
4
user documentation -- the internal documentation will follow (FIXME).
 
5
 
 
6
There is two main things you want to know about the internals of
 
7
SimGrid. First, you need to understand the component organization, as
 
8
SimGrid is heavily layered, with each level being rather highly
 
9
specialized and optimized toward a task. For that, please keep reading
 
10
this page. If you work actively on the SimGrid project, the second
 
11
point you need to understand is about the infrastructure of the
 
12
SimGrid project, ie how to extend the framework in any way, how the
 
13
automatic tests are run, and so on. These informations are split on
 
14
several pages, as follows:
 
15
 
 
16
 - @subpage inside_doxygen
 
17
 - @subpage inside_extending
 
18
 - @subpage inside_cmake
 
19
 - @subpage inside_release
 
20
 - @subpage inside_autotests
 
21
 
 
22
 
 
23
\htmlonly
 
24
<center>
 
25
\endhtmlonly
 
26
\htmlinclude simgrid_modules.map
 
27
\htmlonly
 
28
<br><b>SimGrid Components (click to jump to API)</b>
 
29
</center>
 
30
\endhtmlonly
 
31
 
 
32
 
 
33
\section ug_overview Overview of the toolkit components
 
34
 
 
35
 
 
36
\subsection ug_overview_envs Programmation environments layer
 
37
 
 
38
SimGrid provides several programmation environments built on top of a unique
 
39
simulation kernel. Each environment targets a specific audiance and
 
40
constitutes a different paradigm. To choose which of them you want to use,
 
41
you have to think about what you want to do and what would be the result of
 
42
your work.
 
43
 
 
44
 - If you want to study a theoritical problem and compare several
 
45
   heuristics, you probably want to try <b>\ref MSG_API</b> (yet another
 
46
   historical name). It was designed exactly to that extend and should allow
 
47
   you to build easily rather realistic multi-agents simulation. Yet,
 
48
   realism is not the main goal of this environment and the most annoying
 
49
   technical issues of real platforms are masked here. Check the \ref
 
50
   MSG_API section for more information.
 
51
 
 
52
 - If you want to study the behaviour of a MPI application using emulation
 
53
   technics, you should have a look at the <b>\ref SMPI_API</b> (Simulated
 
54
   MPI) programming environment. Unfortunately, this work is still underway.
 
55
   Check the \ref SMPI_API section for more information.
 
56
 
 
57
If your favorite programming environment/model is not there (BSP,
 
58
components, OpenMP, etc.) is not represented in the SimGrid toolkit yet, you may
 
59
consider adding it. You should contact us first on the
 
60
<a href=http://lists.gforge.inria.fr/mailman/listinfo/simgrid-devel>SimGrid
 
61
developers mailing list</a>, though.
 
62
 
 
63
\subsection ug_overview_kernel Simulation kernel layer
 
64
 
 
65
The core functionnalities to simulate a virtual platform are provided by a
 
66
module called <b>\ref SURF_API</b>.  It is
 
67
very low-level and is not intended to be used as such by end-users. Instead,
 
68
it serve as a basis for the higher level layer.
 
69
 
 
70
SURF main features are a fast max-min linear solver and the ability to
 
71
change transparently the model used to describe the platform. This greatly
 
72
eases the comparison of the several models existing in the litterature.
 
73
 
 
74
See the \ref SURF_API section for more details.
 
75
 
 
76
\subsection ug_overview_fondation Base layer
 
77
 
 
78
The base of the whole toolkit is constituted by the <b>\ref XBT_API
 
79
(eXtended Bundle of Tools)</b>.
 
80
 
 
81
It is a portable library providing some grounding features such as \ref
 
82
XBT_log, \ref XBT_ex and \ref XBT_config. XBT also encompass
 
83
the following convenient datastructures: \ref XBT_dynar, \ref XBT_fifo, \ref
 
84
XBT_dict, \ref XBT_heap, \ref XBT_set and \ref XBT_swag.
 
85
 
 
86
See the \ref XBT_API section for more details.
 
87
 
 
88
 
 
89
\subsection ug_lucas_layer Tracing simulation
 
90
Finally, a transversal module allows you to trace your simulation. More documentation in the section \ref TRACE_doc
 
91
 
 
92
*/
 
 
b'\\ No newline at end of file'