Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
S
sasa
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
verimag
synchrone
sasa
Commits
99bab12b
Commit
99bab12b
authored
6 years ago
by
erwan
Browse files
Options
Downloads
Patches
Plain Diff
Add a small documentation
parent
70f8ea57
No related branches found
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
doc/README.md
+81
-0
81 additions, 0 deletions
doc/README.md
doc/README.org
+72
-0
72 additions, 0 deletions
doc/README.org
with
153 additions
and
0 deletions
doc/README.md
0 → 100644
+
81
−
0
View file @
99bab12b
-
[
Dot files
](
#orgb64a426
)
-
[
Algorithms
](
#orgcbdd346
)
-
[
Installation (not yet working)
](
#org5811f90
)
Basically, one needs to provide
1.
a dot file
2.
the algorithms mentionned in the dot file
<a
id=
"orgb64a426"
></a>
# Dot files
Dot files should
-
follow the graphviz/dot format (cf
<https://en.wikipedia.org/wiki/DOT_(graph_description_language)>
).
-
contain nodes labelled by the
`algo`
field
```
dot
graph
ring
{
p1
[
algo
=
"some_algo.cmxs"
]
p2
[
algo
=
"some_algo.cmxs"
]
p3
[
algo
=
"some_algo.cmxs"
]
p4
[
algo
=
"some_algo.cmxs"
]
p5
[
algo
=
"some_algo.cmxs"
]
p6
[
algo
=
"some_algo.cmxs"
]
p7
[
algo
=
"some_algo.cmxs"
]
p1
--
p2
--
p3
--
p4
--
p5
--
p6
--
p7
--
p1
}
```
<a
id=
"orgcbdd346"
></a>
# Algorithms
Those algorithms must provide:
1.
a set of variables (registers)
2.
an
`enable`
fonction that says which actions are enabled (i.e., that can be activated)
3.
a
`step`
function that executes enabled actions
More precisely, each algorithm should provide 3 functions
-
`reg_vars`
-
`reg_enable`
-
`reg_step`
which profile is defined in
<
../
lib
/
algo
/
algo.mli
>
Each algorithm must then register them (using
`reg_vars`
,
`reg_enable`
, and
`reg_step`
respectively).
Algorithms must then be compiled with
`ocamlopt -shared`
to produce the cmxs files mentionned in the dot.
```
sh
ocamlopt
-shared
-I
+sasa algo.ml
-o
algo.cmxs
```
Some examples can be found in the
<
./
test
/>
directory.
<a
id=
"org5811f90"
></a>
# Installation (not yet working)
```
sh
# optional
opam repo add verimag-sync-repo
"http://www-verimag.imag.fr/DIST-TOOLS/SYNCHRONE/opam-repository"
opam update
-y
opam depext
-y
sasa
opam
install
-y
sasa
```
Once is is done, upgrading to the last version of the tools is as simple as:
```
yaml
opam update
opam upgrade
```
\ No newline at end of file
This diff is collapsed.
Click to expand it.
doc/README.org
0 → 100644
+
72
−
0
View file @
99bab12b
Basically, one needs to provide
1. a dot file
2. the algorithms mentionned in the dot file
* Dot files
Dot files should
- follow the graphviz/dot format (cf
https://en.wikipedia.org/wiki/DOT_(graph_description_language)).
- contain nodes labelled by the =algo= field
#+BEGIN_SRC dot
graph ring {
p1 [algo="some_algo.cmxs"]
p2 [algo="some_algo.cmxs"]
p3 [algo="some_algo.cmxs"]
p4 [algo="some_algo.cmxs"]
p5 [algo="some_algo.cmxs"]
p6 [algo="some_algo.cmxs"]
p7 [algo="some_algo.cmxs"]
p1 -- p2 -- p3 -- p4 -- p5 -- p6 -- p7 -- p1
}
#+END_SRC
* Algorithms
Those algorithms must provide:
1. a set of variables (registers)
2. an =enable= fonction that says which actions are enabled (i.e., that can be activated)
3. a =step= function that executes enabled actions
More precisely, each algorithm should provide 3 functions
- =reg_vars=
- =reg_enable=
- =reg_step=
which profile is defined in file:../lib/algo/algo.mli
Each algorithm must then register them (using =reg_vars=, =reg_enable=,
and =reg_step= respectively).
Algorithms must then be compiled with =ocamlopt -shared= to produce
the cmxs files mentionned in the dot.
#+BEGIN_SRC sh
ocamlopt -shared -I +sasa algo.ml -o algo.cmxs
#+END_SRC
Some examples can be found in the file:./test/ directory.
* Installation (not yet working)
#+BEGIN_SRC sh :tangle sh/install-opam.sh :noweb yes :tangle-mode (identity #o444)
# optional
opam repo add verimag-sync-repo "http://www-verimag.imag.fr/DIST-TOOLS/SYNCHRONE/opam-repository"
opam update -y
opam depext -y sasa
opam install -y sasa
#+END_SRC
Once is is done, upgrading to the last version of the tools is as
simple as:
#+BEGIN_SRC yaml
opam update
opam upgrade
#+END_SRC
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment