@@ -8,36 +8,37 @@ These instructions are valid for the folders `2025w25/` and onwards.
8
8
### Running the simulation
9
9
10
10
1 . Navigate to the folder for the study, for example ` 2025w31c/ ` .
11
- 2 . Copy or link the Rust simulator ` sim-cli ` executable to that folder.
11
+ 2 . Make sure to have the following tools installed: ` yaml2json ` , ` jq ` and ` pigz `
12
+ - * Nix:* use the default dev shell of the ` sims/ ` flake ` nix develop .. `
13
+ 3 . Copy or link the Rust simulator ` sim-cli ` executable to that folder.
12
14
- If you want to reproduce the study, check out the git commit listed in the ` sim-cli.hash ` file.
13
- - Otherwise, run ` cargo build --release ` in the [ sim-rs] ( ../../sim-rs/ ) folder.
14
- 3 . Copy of link the Haskell ` leios-trace-processor ` executable to that folder.
15
+ - Build with ` cargo build --release ` in the [ sim-rs] ( ../../sim-rs/ ) folder.
16
+ - Link with ` ln -s ../../../sim-rs/target/release/sim-cli ` from the study folder.
17
+ 4 . Copy of link the Haskell ` leios-trace-processor ` executable to that folder.
15
18
- * Cabal:* compile using ` cabal build all ` .
16
- - * Nix:* compile using ` nix build # leios-trace-processor ` .
17
- 4 . You can execute individual scenarios by executing the ` run.sh ` script in the relevant folder.
19
+ - * Nix:* compile using ` nix build ../..#leios-trace-processor && ln -s result/bin/ leios-trace-processor ` .
20
+ 5 . You can execute individual scenarios by executing the ` run.sh ` script in the relevant folder.
18
21
- * Nix:* run ` ./run.sh ` , which will automatically fetch the package dependencies.
19
22
- * Without Nix:* run ` bash run.sh ` , but make sure you have the dependent tools already installled, which are listed in the first lines of ` run.sh ` .
20
- 5 . The results folder will contain results:
23
+ 6 . The results folder will contain results:
21
24
- ` sim.log.gz ` : the simulation log file, but with a few of the minor message types discarded.
22
25
- ` lifecycle.csv.gz ` : transaction lifecycle results.
23
26
- ` resoruces.csv.gz ` : resource usage results.
24
27
- ` receipts.csv.gz ` : message diffusion results.
25
28
- ` cpus.csv.gz ` : CPU usage results.
26
29
- ` sizes.csv.gz ` : BLock size results.
27
- 6 . You can also run several simulations at once using the ` parallel ` command-line tool.
28
-
30
+ 7 . You can also run several simulations at once using the ` parallel ` command-line tool.
29
31
30
32
### Combining the results
31
33
32
- 7 . Execute the ` combine-results.sh ` script to bundle the results from multiple runs into the ` results/ ` folder.
34
+ 8 . Execute the ` combine-results.sh ` script to bundle the results from multiple runs into the ` results/ ` folder.
33
35
- * Nix:* run ` ./combine-results.sh ` .
34
36
- * Without nix:* run ` bash combine-results.sh ` after installing the required dependencies.
35
-
36
37
37
38
### Plot the results in Jupyter
38
39
39
- 8 . Start a Jupter notebook server using the command ` nix run #../sims/ ` .
40
- 9 . In the web browser, navigate to the relevant experiment folder and open any ` .ipynb ` files of interest.
40
+ 9 . Start a Jupter notebook server using the command ` nix run #../sims/ ` .
41
+ 10 . In the web browser, navigate to the relevant experiment folder and open any ` .ipynb ` files of interest.
41
42
42
43
43
44
## Data dictionary
0 commit comments