Skip to content

A simulator for distributed algorithms in arbitrary networks

License

Notifications You must be signed in to change notification settings

twelho/da-simulator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

da-simulator

da-simulator is a highly parallel simulator capable of running arbitrary distributed algorithms of various models of computation (PN, LOCAL, CONGEST) on networks constructed from arbitrary graphs.

Features

  • Highly versatile
  • Network output in Graphviz DOT format
  • Deadlock detection and prevention
  • Communication round limiting
  • Thread-per-node architecture
  • (Relatively) easy to debug™
  • Written in 100% safe Rust

Usage

Note: da-simulator currently requires nightly Rust, see #63063. Hint: you can switch to the nighly channel by running rustup default nightly.

Select (or define) a network and an algorithm to simulate on that network in main.rs, then just run compile and run the application:

cargo run --release

Authors

License

Mozilla Public License Version 2.0 (LICENSE)

Acknowledgements

Special thanks to Jukka Suomela for the amazing Distributed Algorithms course for which this simulator has been developed for and from where the algorithms it simulates are sourced from.

About

A simulator for distributed algorithms in arbitrary networks

Resources

License

Stars

Watchers

Forks

Languages