14 ## Installation and usage |
14 ## Installation and usage |
15 |
15 |
16 ### Installing dependencies |
16 ### Installing dependencies |
17 |
17 |
18 Most dependencies are managed by the Cargo build system of [Rust]. You will |
18 Most dependencies are managed by the Cargo build system of [Rust]. You will |
19 only need to manually install the “stable” Rust system itself. At the time |
19 only need to manually install the “stable” Rust system itself. |
20 of writing this README, [alg_tools] also needs to be downloaded separately. |
20 At the time of writing this README, [alg_tools] also needs to be downloaded |
|
21 separately. |
21 |
22 |
22 1. Install the [Rust] infrastructure (including Cargo) with [rustup]. |
23 1. Install the [Rust] infrastructure (including Cargo) with [rustup]. |
23 2. Install a “stable” release of the Rust compiler. With rustup, installed in |
24 2. Download [alg_tools] and unpack it under the same directory as this |
24 the previous step, this can be done with |
|
25 ```console |
|
26 rustup toolchain install stable |
|
27 ``` |
|
28 3. Download [alg_tools] and unpack it under the same directory as this |
|
29 package. |
25 package. |
30 |
26 |
31 [rustup]: https://rustup.rs |
27 [rustup]: https://rustup.rs |
32 [alg_tools]: https://tuomov.iki.fi/software/alg_tools/ |
28 [alg_tools]: https://tuomov.iki.fi/software/alg_tools/ |
33 [Rust]: https://www.rust-lang.org/ |
29 [Rust]: https://www.rust-lang.org/ |
35 [Homebrew]: https://brew.sh |
31 [Homebrew]: https://brew.sh |
36 [arXiv:????]: https://arxiv.org/abs/???? |
32 [arXiv:????]: https://arxiv.org/abs/???? |
37 |
33 |
38 ### Building and running the experiments |
34 ### Building and running the experiments |
39 |
35 |
40 To compile the code and run the experiments in the manuscript, use |
36 To compile and install the program, use: |
41 ```console |
37 ```console |
42 cargo run |
38 cargo install --path=. |
43 ``` |
39 ``` |
44 When doing this for the first time, several dependencies will be downloaded. |
40 When doing this for the first time, several dependencies will be downloaded. |
|
41 After this, you may run the experiment with |
|
42 ```console |
|
43 non-riemannian-opt |
|
44 ``` |
45 |
45 |
46 Alternatively, you may build the executable with |
46 Alternatively, you may build (without installing) and run the experiments with |
47 ```console |
47 ```console |
48 cargo build --release |
48 cargo run --release |
49 ``` |
|
50 and then run it with |
|
51 ``` |
|
52 target/release/non-riemannian-opt |
|
53 ``` |
49 ``` |
54 |
50 |
55 ## Internals |
51 ## Internals |
56 |
52 |
57 If you are interested in the program internals, the integrated source code |
53 If you are interested in the program internals, the integrated source code |