Commit fbcef473 authored by erwan's avatar erwan
Browse files

Some enhancements in the README + fix the page job in the CI

parent 980d1175
Pipeline #40127 failed with stages
in 5 minutes and 3 seconds
......@@ -18,7 +18,7 @@ expe-sasa.4.0.3:
- make
artifacts:
paths:
- results
- result
# The same experiment using the lastest opam versions
expe-current:
......@@ -30,7 +30,7 @@ expe-current:
- make
artifacts:
paths:
- results
- result
# Ditto using the verimag-sync-tools image where everything is already
# installed
......@@ -43,7 +43,7 @@ expe-dockver:
- make
artifacts:
paths:
- results
- result
pages:
stage: deploy
......@@ -52,7 +52,7 @@ pages:
- apt-get install tree
script:
- mkdir .public
- cp -rf results .public/
- cp -rf result .public/
- tree -h -H '.' -L 2 --noreport --charset utf-8 --prune > index.html
- cd ..
- mv .public public
......
......@@ -3,6 +3,13 @@
all:
cd expe ; make && make save_result
git:
git commit -a -F log
amend:
git commit -a -F log --amend
ci:
gitlab-runner exec docker --docker-dns 152.77.1.22 expe-sasa.4.0.3
......
- [Artifact of the article **SASA: a SimulAtor of Self-stabilizing Algorithms** published in TAP 2020](#orgb1b850c)
- [Using The TAP Virtual Machine](#orgfdb62c9)
- [Using Docker](#org83d5d9b)
- [Instructions to generate the data contained in Fig.1 of Section 2: interactive session described in Section 2 of the paper.](#orge8b7dec)
- [Instructions to generate the data contained in Table 1 of Section 4](#orgd73d586)
- [Artifact of the article **SASA: a SimulAtor of Self-stabilizing Algorithms** published in TAP 2020](#orgc6f1dd8)
- [Using The TAP Virtual Machine](#org7d99bf4)
- [Using Docker](#orgc0e654b)
- [Instructions to generate the data contained in Fig.1 of Section 2](#orga6ee562)
- [Instructions to generate the data contained in Table 1 of Section 4](#org4984bb8)
<a id="orgb1b850c"></a>
<a id="orgc6f1dd8"></a>
# Artifact of the article **SASA: a SimulAtor of Self-stabilizing Algorithms** published in TAP 2020
......@@ -19,10 +20,11 @@ This artifact contains:
By following the instructions, you should be able to replay the experiments, but for more information on how to use the toolset, please visit:
<https://verimag.gricad-pages.univ-grenoble-alpes.fr/vtt/tags/sasa/> <https://verimag.gricad-pages.univ-grenoble-alpes.fr/synchrone/sasa/>
- <https://verimag.gricad-pages.univ-grenoble-alpes.fr/vtt/tags/sasa/>
- <https://verimag.gricad-pages.univ-grenoble-alpes.fr/synchrone/sasa/>
<a id="orgfdb62c9"></a>
<a id="org7d99bf4"></a>
## Using The TAP Virtual Machine
......@@ -33,14 +35,14 @@ They should be executed under a VM that you should find here: <https://struebli.
cf <https://tap.sosy-lab.org/2020/callforartifacts.php>
<a id="org83d5d9b"></a>
<a id="orgc0e654b"></a>
## Using Docker
You can mimic one the CI job defined in <.gitlab-ci>. For instance, if you want to do as in the `expe-dockver` job, you just need to run docker using the `jahierwan/verimag-sync-tools` image (which is available in the cloud) as follows:
You can mimic one the CI job defined in [.gitlab-ci.yml](https://gricad-gitlab.univ-grenoble-alpes.fr/verimag/reproducible-research/sasartifact/blob/master/.gitlab-ci.yml). For instance, if you want to do as in the `expe-dockver` job, you just need to run docker using the `jahierwan/verimag-sync-tools` image (which is available in the cloud) as follows:
```sh
git clone git@gricad-gitlab.univ-grenoble-alpes.fr:verimag/reproducible-research/sasartifact.git
https://gricad-gitlab.univ-grenoble-alpes.fr/verimag/reproducible-research/sasartifact.git
cd expe
docker run --user `id -u` \
-v "$PWD":/current_dir -w /current_dir \
......@@ -49,18 +51,26 @@ docker run --user `id -u` \
-i -t jahierwan/verimag-sync-tools $@
```
If the last command has run without problem, you are inside a docker image where:
- all the necessary tools are installed
- the `expe` directory (coming from the clone) is accessible
<a id="orge8b7dec"></a>
You can thus proceed with the instructions below.
### Instructions to generate the data contained in Fig.1 of Section 2: interactive session described in Section 2 of the paper.
The implementation of Algorithm 1 (top of Page 3) can be found in
<a id="orga6ee562"></a>
<expr/async-unison/p.ml>
### Instructions to generate the data contained in Fig.1 of Section 2
The implementation of Algorithm 1 (top of Page 3) can be found in [expe/async-unison/p.ml](https://gricad-gitlab.univ-grenoble-alpes.fr/verimag/reproducible-research/sasartifact/blob/master/expe/async-unison/p.ml)
In order to replay the interactive session described in Section 2, you need to type the following commands in a terminal:
cd async-unison make rdbg4
```sh
cd async-unison
make rdbg4
```
You ought to be prompted to type <Enter> or "q" and then <Enter>. Choose the first proposal and press the <Enter> key; this creates a default session using commands defined in the Makefile by the rdbg4 rule.
......@@ -78,25 +88,31 @@ Type <Enter> 3 more times to see Configurations 4, 5, and 6 of Fig.1.
Type "q" to exit.
<a id="orgd73d586"></a>
<a id="org4984bb8"></a>
### Instructions to generate the data contained in Table 1 of Section 4
In order to run the experiments described in Section 4, type in a terminal, from the `expe` directory:
In order to run the experiments described in Section 4, type in a terminal, from the [expe](https://gricad-gitlab.univ-grenoble-alpes.fr/verimag/reproducible-research/sasartifact/blob/master/expe) directory:
```sh
make expe
```
It launches the experiments on 2 small graphs (grid.dot and ER.dot). It should last a few minutes. Once the previous command returns, you can launch:
find . -name \\\*.log
```sh
find . -name \*.log
```
to see the generated log files. Those files contain the memory usage and the execution time of each individual experiment. If you launch:
make save<sub>result</sub>
```sh
make save_result
```
a (sed) script will parse those .log files to generate a "summary.org" file and save generated files in a directory named "result". The summary.org file ought to contain a summary of all the experiments you have just performed. Table 1 was obtained out of it.
The correspondance between directory names and the Column 1 names is
The correspondence between directory names and the Column 1 names is
- bfs-spanning-tree : BFS
- dfs : DFS-a
......@@ -107,11 +123,14 @@ The correspondance between directory names and the Column 1 names is
The corresponding algorithms are encoded in file p.ml of each directory.
If you want to generate the experiment results for the 2 bigger graphs (biggrid.dot and bigER.dot), you need to be more patient (a few hours) and to launch:
If you want to generate the experiment results for the 2 bigger graphs (`biggrid.dot` and `bigER.dot`), you need to be more patient (a few hours) and to launch:
make bigexpe make save<sub>result</sub>
```sh
make bigexpe
make save_result
```
Some remarks, comparing the results announced in the paper and the ones obtained in the VM:
- The number of seconds (time/step) may differ as the table was obtained using an other machine.
- 2 examples run out of memory on the VM: the dfs algo on hugeER.dot and biggrid.dot. Indeed, as one can notice in Table 1, those examples require more memory (6.6 and 29 G) than the TAP VM have.
- 2 examples may run out of memory on your machine: the dfs algo on `hugeER.dot` and `biggrid.dot`. Indeed, as one can notice in Table 1, those examples require more memory (6.6 and 29 G) than your machine have.
#+macro: git [[https://gricad-gitlab.univ-grenoble-alpes.fr/verimag/reproducible-research/sasartifact/blob/master/$1][$1]]
* Artifact of the article *SASA: a SimulAtor of Self-stabilizing Algorithms* published in TAP 2020
......@@ -14,8 +15,8 @@ By following the instructions, you should be able to replay the
experiments, but for more information on how to use the toolset,
please visit:
https://verimag.gricad-pages.univ-grenoble-alpes.fr/vtt/tags/sasa/
https://verimag.gricad-pages.univ-grenoble-alpes.fr/synchrone/sasa/
- https://verimag.gricad-pages.univ-grenoble-alpes.fr/vtt/tags/sasa/
- https://verimag.gricad-pages.univ-grenoble-alpes.fr/synchrone/sasa/
** Using The TAP Virtual Machine
......@@ -29,13 +30,13 @@ cf https://tap.sosy-lab.org/2020/callforartifacts.php
** Using Docker
You can mimic one the CI job defined in file:.gitlab-ci. For instance,
You can mimic one the CI job defined in {{{git(.gitlab-ci.yml)}}}. For instance,
if you want to do as in the =expe-dockver= job, you just need to run
docker using the =jahierwan/verimag-sync-tools= image (which is
available in the cloud) as follows:
#+BEGIN_SRC sh
git clone git@gricad-gitlab.univ-grenoble-alpes.fr:verimag/reproducible-research/sasartifact.git
https://gricad-gitlab.univ-grenoble-alpes.fr/verimag/reproducible-research/sasartifact.git
cd expe
docker run --user `id -u` \
-v "$PWD":/current_dir -w /current_dir \
......@@ -44,17 +45,26 @@ docker run --user `id -u` \
-i -t jahierwan/verimag-sync-tools $@
#+END_SRC
*** Instructions to generate the data contained in Fig.1 of Section 2: interactive session described in Section 2 of the paper.
The implementation of Algorithm 1 (top of Page 3) can be found in
If the last command has run without problem, you are inside a docker
image where:
- all the necessary tools are installed
- the =expe= directory (coming from the clone) is accessible
You can thus proceed with the instructions below.
file:expr/async-unison/p.ml
*** Instructions to generate the data contained in Fig.1 of Section 2
The implementation of Algorithm 1 (top of Page 3) can be found in
{{{git(expe/async-unison/p.ml)}}}
In order to replay the interactive session described in Section 2, you
need to type the following commands in a terminal:
cd async-unison
make rdbg4
#+BEGIN_SRC sh
cd async-unison
make rdbg4
#+END_SRC
You ought to be prompted to type <Enter> or "q" and then <Enter>.
Choose the first proposal and press the <Enter> key; this creates a
......@@ -83,27 +93,33 @@ Type "q" to exit.
*** Instructions to generate the data contained in Table 1 of Section 4
In order to run the experiments described in Section 4, type in a
terminal, from the =expe= directory:
terminal, from the {{{git(expe)}}} directory:
make expe
#+BEGIN_SRC sh
make expe
#+END_SRC
It launches the experiments on 2 small graphs (grid.dot and
ER.dot). It should last a few minutes. Once the previous command
returns, you can launch:
find . -name \*.log
#+BEGIN_SRC sh
find . -name \*.log
#+END_SRC
to see the generated log files. Those files contain the memory usage
and the execution time of each individual experiment. If you launch:
make save_result
#+BEGIN_SRC sh
make save_result
#+END_SRC
a (sed) script will parse those .log files to generate a "summary.org"
file and save generated files in a directory named "result". The
summary.org file ought to contain a summary of all the experiments you
have just performed. Table 1 was obtained out of it.
The correspondance between directory names and the Column 1 names is
The correspondence between directory names and the Column 1 names is
- bfs-spanning-tree : BFS
- dfs : DFS-a
- dfs-list: DFS-l
......@@ -114,17 +130,19 @@ The correspondance between directory names and the Column 1 names is
The corresponding algorithms are encoded in file p.ml of each directory.
If you want to generate the experiment results for the 2 bigger graphs
(biggrid.dot and bigER.dot), you need to be more patient (a few hours)
(=biggrid.dot= and =bigER.dot=), you need to be more patient (a few hours)
and to launch:
make bigexpe
make save_result
#+BEGIN_SRC sh
make bigexpe
make save_result
#+END_SRC
Some remarks, comparing the results announced in the paper and the ones
obtained in the VM:
- The number of seconds (time/step) may differ as the table was
obtained using an other machine.
- 2 examples run out of memory on the VM: the dfs algo on hugeER.dot
and biggrid.dot. Indeed, as one can notice in Table 1, those
examples require more memory (6.6 and 29 G) than the TAP VM have.
- 2 examples may run out of memory on your machine: the dfs algo on =hugeER.dot=
and =biggrid.dot=. Indeed, as one can notice in Table 1, those
examples require more memory (6.6 and 29 G) than your machine have.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment