Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Fix doxygen table generation
[simgrid.git] / doc / dev_guide / doxygen / xps.doc
1 /*! 
2 \page xps SimGrid Developer Guide - XPs
3
4 \section xps_dev_guide_pipol How to run test in pipol?
5
6 In order to use PIPOL you have to create your account here: http://pipol.inria.fr/
7
8 \subsection xps_dev_guide_pipol_general What is PIPOL?
9
10 The PIPOL platform is a porting, testing and compilation cluster. It hosts several hardware and software
11 architectures to perform its work. An user can reserve a resource (a specific hardware, an operating system...)
12 to be used interactively or automatically (with a "Nightly Builds" system) for software testing.
13
14 \subsection xps_dev_guide_pipol_frontend From PIPOL frontend
15
16 You first need to be connected into pipol ssh.
17 \verbatim
18 user@caraja:~$ ssh pipol.inria.fr
19 Linux pipol-server 2.6.26-2-amd64 #1 SMP Thu Nov 5 02:23:12 UTC 2009 x86_64
20 ***************************************************************************
21 *           You are just logged-on the PIPOL platform server              *
22 *   You can find some documentation about porting works on the platform   *
23 *         on the PIPOL's web site: http://pipol.inria.fr/docs/            *
24 *   To report bugs you can write to: pipol-sysadm@lists.gforge.inria.fr   *
25 ***************************************************************************
26
27
28 user@pipol:~$
29 \endverbatim
30 Then you can see pipol images availables for deployment
31
32 \verbatim
33 user@pipol:~$ pipol-sub si
34     amd64_2010-linux-centos-5.dd.gz
35     amd64_2010-linux-debian-squeeze.dd.gz
36     amd64_2010-linux-debian-testing.dd.gz
37     amd64_2010-linux-fedora-core13.dd.gz
38     amd64_2010-linux-fedora-core14.dd.gz
39     amd64_2010-linux-fedora-core16.dd.gz
40     amd64_2010-linux-ubuntu-lucid.dd.gz
41     amd64_2010-linux-ubuntu-maverick.dd.gz
42     amd64_2010-linux-ubuntu-natty.dd.gz
43     amd64_kvm-linux-debian-lenny
44     amd64_kvm-linux-debian-testing
45     amd64_kvm-windows-7
46     amd64-linux-centos-5.dd.gz
47     amd64-linux-debian-etch.dd.gz
48     amd64-linux-debian-lenny.dd.gz
49 ....
50     i386-linux-ubuntu-lucid.dd.gz
51     i386-linux-ubuntu-maverick.dd.gz
52     i386-linux-ubuntu-natty.dd.gz
53     i386-linux-ubuntu-precise.dd.gz
54     i386_mac-mac-osx-server-leopard.dd.gz
55     i386-unix-freebsd-7.dd.gz
56     i386-unix-opensolaris-10.dd.gz
57     i386-unix-opensolaris-11.dd.gz
58     i386-unix-solaris-10.dd.gz
59     ia64-linux-debian-lenny.dd
60     ia64-linux-debian-squeeze.dd
61     ia64-linux-fedora-core9.dd
62     ia64-linux-redhatEL-5.0.dd
63     x86_64_mac-mac-osx-server-snow-leopard.dd.gz
64     x86_mac-mac-osx-server-snow-leopard.dd.gz
65 \endverbatim
66
67 You can also see available architectures on host name:
68 \verbatim
69 navarro@pipol:~$ pipol-sub sa    
70 =================================================================
71                     Availables architectures:         
72 =================================================================
73
74 pipol18
75 :i386_2010:amd64_2010:
76 pipol19
77 :i386_2010:amd64_2010:
78 pipol20
79 :i386_2010:amd64_2010:
80 pipol1
81 :i386:amd64:
82 pipol2
83 :i386:amd64:
84 pipol3
85 :i386:amd64:
86 pipol4
87 :i386:amd64:
88 pipol5
89 :i386:amd64:
90 pipol6
91 :i386:amd64:
92 pipol7
93 :i386:amd64:
94 pipol8
95 :i386:amd64:
96 pipol14
97 :i386_kvm:amd64_kvm:
98 pipol15
99 :i386_kvm:amd64_kvm:
100 pipol16
101 :i386_kvm:amd64_kvm:
102 pipol17
103 :i386_kvm:amd64_kvm:
104 pipol11
105 :i386_mac:x86_mac:
106 pipol10
107 :ia64:
108 pipol9
109 :ia64:
110 pipol12
111 :x86_64_mac:
112 \endverbatim
113
114 When you have choose your image and host (not necessary) you deploy with command line:
115
116 pipol-sub esn \<image name\> \<host-name\> \<deployment-time\>
117 \verbatim
118 user@pipol:~$pipol-sub esn amd64_2010-linux-ubuntu-maverick.dd.gz pipol20 02:00
119 user@pipol:~$ssh pipol20
120 \endverbatim
121
122 You can now make all your tests.
123
124 \subsection xps_dev_guide_pipol_home From a computer
125
126 You have to renseign to simgrid configuration your pipol login.
127 \verbatim
128 $ cmake -Dpipol_user=user .
129 \endverbatim
130
131 Then you have two kind of command:
132 \li make \<image-name\>
133 \verbatim
134 $ make amd64_2010-linux-ubuntu-maverick
135 \endverbatim
136 This command copy your local simgrid directory to pipol and execute a configure, make and ctest.
137
138 \li make \<image_name\>_experimental
139 \verbatim
140 $ make amd64_2010-linux-ubuntu-maverick_experimental
141 \endverbatim
142 Same as previous but report into cdash
143
144 You can also see all available images from pipol
145 \verbatim
146 $ make pipol_test_list_images
147 \endverbatim
148
149
150 \section xps_dev_guide_cdash How to report tests in cdash?
151
152 Reporting experiment in cdash is very easy because it is done by ctest.
153
154 The easier way is to execute command line "ctest -D Experiemntal" in build directory. More option is available by ctest:
155 \verbatim
156   ctest -D Continuous
157   ctest -D Continuous(Start|Update|Configure|Build)
158   ctest -D Continuous(Test|Coverage|MemCheck|Submit)
159   ctest -D Experimental
160   ctest -D Experimental(Start|Update|Configure|Build)
161   ctest -D Experimental(Test|Coverage|MemCheck|Submit)
162   ctest -D Nightly
163   ctest -D Nightly(Start|Update|Configure|Build)
164   ctest -D Nightly(Test|Coverage|MemCheck|Submit)
165   ctest -D NightlyMemoryCheck
166 \endverbatim
167
168 If you want to have a code coverage, please add option on simgrid.
169 \verbatim
170 $ cmake -Denable_coverage=ON .
171 $ ctest -D ExperimentalStart
172 $ ctest -D ExperimentalConfigure
173 $ ctest -D ExperimentalBuild
174 $ ctest -D ExperimentalTest
175 $ ctest -D ExperimentalCoverage
176 $ ctest -D ExperimentalSubmit
177 \endverbatim
178
179 \section xps_dev_guide_g5k How to run simgrid scalability xps?
180
181 \subsection xps_dev_guide_g5k_campaign How to execute g5k campaign?
182
183 Quick steps deployment:
184
185 \li 1/ Create a G5K account
186
187 \li 2/ SSH to a frontend (must be rennes, nancy or toulouse for git protocol)
188
189 \li 3/ Install g5k-campaign
190 \verbatim
191 $ gem install g5k-campaign --source http://g5k-campaign.gforge.inria.fr/pkg -p http://proxy:3128 --no-ri --no-rdoc --user-install
192 \endverbatim  
193   
194 \li 4/ Configure the API
195 \verbatim
196 $  mkdir ~/.restfully
197 $  echo 'base_uri: https://api.grid5000.fr/stable/grid5000' > ~/.restfully/api.grid5000.fr.yml
198 $  chmod 0600 ~/.restfully/api.grid5000.fr.yml
199 \endverbatim
200
201 \li 5/ Git clone the SimGrid Scalability project
202 \verbatim
203 $  git clone git://scm.gforge.inria.fr/simgrid/simgrid-scalability-XPs.git
204 \endverbatim
205
206 \li 6/ Copy the run script into your home
207 \verbatim
208 $  cp simgrid-scalability-XPs/script-sh/run-g5k-scalab.sh ~/
209 \endverbatim
210
211 \li 7/ Create the result log directory (must be ~/log/)
212 \verbatim
213 $  mkdir ~/log
214 \endverbatim
215
216 \li 8/ Execute the g5k campaign on a revision "rev"
217 \verbatim
218 $  sh run-g5k-scalab.sh "rev"
219 \endverbatim
220
221 You can also have more parameters
222
223 \li 1/ -> 5/ Same as before
224
225 \li 6/ Open simgrid-scalability-XPs
226
227 \li 7/ Execute SGXP.pl to see parameters
228 \verbatim
229 $  perl SGXP.pl --help
230 \endverbatim
231
232 \li 8/ Execute SGXP.pl with your parameters like
233 \verbatim
234 $  ./SGXP.pl --site=nancy --cluster=graphene,griffon --test=chord,goal --rev="09bbc8de,3ca7b9a13"
235 \endverbatim
236
237 \subsection xps_dev_guide_g5k_log How to analyze logs?
238
239 To analyze log from g5k-campaign you must install R tool.
240
241 \li 0/ You can copy logs from g5k to your computer (recommanded)
242
243 \li 1/ Open ~/log/
244
245 \li 2/ Execute the perl analyzer for goal log
246 \verbatim
247 $  ~/simgrid-scalability-XPs/libperl/analyzer.pl goal.log.* > goal.csv
248 \endverbatim
249
250 \li 3/ Execute the R analyer for goal log
251 \verbatim
252 $  ~/simgrid-scalability-XPs/script-R/chord.R goal.csv output.chord.pdf
253 \endverbatim
254
255 */