Skip to content

Commit

Permalink
Update Readme.md
Browse files Browse the repository at this point in the history
  • Loading branch information
hky1999 committed Jul 7, 2024
1 parent 24057d5 commit 1716c83
Showing 1 changed file with 44 additions and 6 deletions.
50 changes: 44 additions & 6 deletions apps/std/dora/Readme.md
Original file line number Diff line number Diff line change
@@ -1,27 +1,65 @@
# Dora on Arceos

* Dora
* For host: https://github.com/arceos-org/dora/tree/modify_spawn
* For ArceOS: https://github.com/arceos-org/dora/tree/arceos-porting
* ArceOS
* https://github.com/arceos-org/arceos/tree/dora-wip

## 1. Setup Dora coordinator and daemon on host

* In dora repo under `modify_spawn` branch

* on dora repo
```bash
# Build.
cargo build --release --all

# Run coordinator.
./target/release/dora coordinator
DORA_NODE_CONFIG_PATH=`pwd` ./target/release/dora daemon

# Run daemon.
DORA_NODE_CONFIG_PATH=`pwd` ./target/release/dora daemon
```

* on dora-benchmark
## 2. Generate configuration file for Dora nodes.

* In dora-benchmark repo: `/dora-benchmark/dora-rs/rs-latency`
```bash
./PATH/TO/dora start dataflow.yml
./PATH/TO/dora/you/just/compiled start dataflow.yml
```

* then you can get `rust-node.yml` and `rust-sink.yml` on dora repo.

* dora nodes on host
## 3. Boot Dora nodes based on these configuration file.

### To boot Dora nodes on host
```bash
# Build.
cargo build --release --all

# Run nodes.
DORA_NODE_CONFIG=`cat rust-node.yml` ./target/release/benchmark-example-node
DORA_NODE_CONFIG=`cat rust-sink.yml` ./target/release/benchmark-example-sink
```

*dora nodes on ArceOS
### To boot Dora nodes upon ArceOS

In ArceOS dir under `dora-wip` branch.

Pay attention to `dora-node-api` dependency,
this is just the `arceos-porting` branch of Dora repo,
We have separated their dirs to facilitate the compilation of Dora in the host and Dora dependencies for ArceOS std.

```Toml
[workspace.dependencies]
# dora-node-api = "0.3.5" # { path = "../../../dora/apis/rust/node" }
dora-node-api = { path = "../../Dora/dora-arceos/apis/rust/node" }
```

* Run ArceOS on QEMU/KVM
* make `disk.img` for ArceOS, make sure it contains the configuration files just generated for the Dora nodes.
* change `socket_addr` to : `socket_addr: "10.0.2.2:44631"` in configuration files.

```bash
# make sure sink.yml in your disk.img
make A=apps/std/dora/sink SMP=1 NET=y BLK=y LOG=debug STD=y build
Expand Down

0 comments on commit 1716c83

Please sign in to comment.