Commit Graph

10 Commits

Author SHA1 Message Date
Al Liu ea7896f06c
Simulation streaming and gracefully shutdown (#119)
* add stream supports

* add test case

* add polars stream, and force to use stream for the runner

* using arcswap instead RefCell for producers

* finish gracefully shutdown

* - add IOProducer and IOSubscriber
- fix deadlock in sync runner
- fix testcases
2023-04-25 19:14:30 +08:00
Al Liu a19278480d
Pipe output data (#111) 2023-04-04 20:26:57 +08:00
gusto 901ebf4152
Message sending between simulation nodes (#110)
* Dummy node for simulations

* Shared network state for nodes

* Runner one step test

* Beginning of network interface

* Connect dummy node to network

* Network step tests

* Pop messages that are being sent

* Regions send receive tests

* Setup network in sync runner tests

* Dispatch and collect node messages during sim step

* Improve network interface receiver
2023-03-31 12:48:06 +03:00
Al Liu c882a58286
Add StalledViewWard (#109) 2023-03-30 16:35:29 +08:00
Daniel Sanchez 92ef9e5a77
Simulation app runners (#105)
* Integrate new runners, fit types...make it compile

* Added missing runners

* Fix rebased changes

* Make tests pass

* Clippy happy

* More clippy happy
2023-03-24 13:21:10 -07:00
Al Liu 4a90ba6926
chore: types wrapper (#104)
* chore: types wrapper
2023-03-24 19:50:30 +08:00
Al Liu ea589d018a
Simulation App: Make step cost configurable (#102)
* WIP: make step cost configurable

* fix fmt
2023-03-23 16:57:18 +08:00
gusto 2d8c9f1099
Tree overlay for simulation app (#101)
* Add simulations crate

* Firs working runner

* Cleanupt

* Extract overlay from runner

* Fix off id calls

* Fix testing values

* WIP: Tree overlay for simulation app

* Build tree overlay from depth and size

* Tree overlay generation tests

* WIP: Committee role in layout

* Use commtittee role when constructing node

* Pairprogramming role calculation

* WIP: Extract step runner to node

* Aggregate times from different overlay layers

* Runner for overlay with layers

* Use StepRng in runner tests

* Decouple role from node

* Define leader steps and behaviour

* Get possible node ids from the overlay

* Handle unknown state in flat overlay

* Use solver type for deserialization

* Remove refcell from nodes hashmap

* Create layout from the provided node ids

* Break runner loops into seperate functions

* Use for loop to collect node step times

* Revert leader times collection

* Add interegion latency tests

---------

Co-authored-by: danielsanchezq <sanchez.quiros.daniel@gmail.com>
2023-03-23 01:32:54 -07:00
Al Liu 8a1af8c234
Add configuration for simulation app (#94)
* make simulation app compile to wasm

* add configuration

* improve args parsing

* add steps in configuration

---------

Co-authored-by: Daniel Sanchez Quiros <sanchez.quiros.daniel@gmail.com>
2023-03-20 17:13:55 +08:00
Daniel Sanchez 6ce9fdf553
[WIP] Simulation app barebones (#90)
* Add simulations crate

* Kickstart modules

* Add overlay

* Use node steps

* Add initial carnot node

* Implement Carnot node costs simulation

* Firs working runner

* Cleanup

* Extract overlay from runner

* Fix off id calls

* Fix testing values

* Clippy happy

* make simulation app compile to wasm

---------

Co-authored-by: al8n <scygliu1@gmail.com>
2023-03-14 07:15:45 -07:00