README.md 1.33 KB
Newer Older
Mateusz Pawlik's avatar
Mateusz Pawlik committed
1
# Experiments for paper "Minimal Edit-Based Diffs for Large Trees"
Mateusz Pawlik's avatar
Mateusz Pawlik committed
2

Mateusz Pawlik's avatar
Mateusz Pawlik committed
3
## Building the project
Mateusz Pawlik's avatar
Mateusz Pawlik committed
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

Get the external libraries.
```
mkdir external
cd external
git clone git@frosch.cosy.sbg.ac.at:wmann/common-code.git
git clone --branch develop git@github.com:DatabaseGroup/tree-similarity.git
cd ..
```

Build the project.
```
mkdir build
cd build
cmake ..
make
Mateusz Pawlik's avatar
Mateusz Pawlik committed
20
21
22
23
24
25
26
```

## Fetch the data

The data for the experiments resides in a separate repository. Clone it and
follow all steps to prepare the data.

Mateusz Pawlik's avatar
Mateusz Pawlik committed
27
```
28
git clone git@frosch.cosy.sbg.ac.at:mpawlik/diffs-large-trees-data.git
Mateusz Pawlik's avatar
Mateusz Pawlik committed
29
30
```

Mateusz Pawlik's avatar
Mateusz Pawlik committed
31
32
## Execute the experiments

Mateusz Pawlik's avatar
Update.    
Mateusz Pawlik committed
33
The runtime of all experiments executed consecutively can be as long as **8
Mateusz Pawlik's avatar
Mateusz Pawlik committed
34
hours** (virtual machine on a server with AMD Opteron 2.3GHz).
Mateusz Pawlik's avatar
Update.    
Mateusz Pawlik committed
35
36
37

Execute the script `src/all_exp.sh` from within `build` directory to execute
all experiments. The script takes two arguments:
Mateusz Pawlik's avatar
Mateusz Pawlik committed
38
39
- path to data - the path to the data repository,
- path to output directory.
Mateusz Pawlik's avatar
Update.    
Mateusz Pawlik committed
40

Mateusz Pawlik's avatar
Typo.    
Mateusz Pawlik committed
41
For example, `./../src/all_exp.sh ~/Remote/diffs-large-trees-data/ ../repro_results/`.
Mateusz Pawlik's avatar
Mateusz Pawlik committed
42
43
44

## Compile the plots

Mateusz Pawlik's avatar
Update.    
Mateusz Pawlik committed
45
46
47
48
49
50
51
Execute the script `src/all_plots.sh` from within `src` directory to produce
all plots. The script takes three arguments:
- path to results directory,
- path to output plots directory,
- `png | pdf` file type of the produced plots.

For example, `./all_plots.sh ../repro_results/ ../repro_plots/ pdf`.