wrench
wrench copied to clipboard
WRENCH: Cyberinfrastructure Simulation Workbench
Cyberinfrastructure Simulation Workbench
WRENCH is an open-source library that provides high-level simulation abstractions that serve as building blocks for developing custom simulators of distributed computing systems, platforms, and applications.
More information and Documentation: WRENCH Project Website
WRENCH Research Paper:
- H. Casanova, R. Ferreira da Silva, R. Tanaka, S. Pandey, G. Jethwani, W. Koch, S. Albrecht, J. Oeth, and F. Suter, Developing Accurate and Scalable Simulators of Production Workflow Management Systems with WRENCH, Future Generation Computer Systems, vol. 112, p. 162-175, 2020.
Prerequisites
WRENCH is fully developed in C++. The code follows the C++17 standard, and thus older compilers tend to fail the compilation process. Therefore, we strongly recommend users to satisfy the following requirements:
- CMake - version 3.10 or higher
And, one of the following:
- g++ - version 7.5 or higher
- clang - version 9.0 or higher
Dependencies
Required Dependencies
- SimGrid - commit tag 1f1b85861ea71dd27d362b70f268b580c1f8c7c4
- JSON for Modern C++ - version 3.11.0 or higher
Optional Dependencies
- Google Test - version 1.8 or higher (only required for running test cases)
- Doxygen - version 1.8 or higher (only required for generating documentation)
-
Sphinx - version 4.5 or higher along with the following Python packages:
pip3 install sphinx-rtd-theme breathe recommonmark
(only required for generating documentation) - Batsched - version 1.4 - useful for expanded batch-scheduled resource simulation capabilities
-
Asio - necessary only for building
wrench-daemon
Building From Source
If all dependencies are installed, compiling and installing WRENCH is as simple as running:
mkdir build
cd build
cmake ..
make
sudo make install
For enabling the use of Batsched:
mkdir build
cd build
cmake -DENABLE_BATSCHED=on ..
make
sudo make install
To use a non-standard SimGrid installation path:
mkdir build
cd build
cmake -DSimGrid_PATH=/my/simgrid/path/ ..
make
sudo make install
Get in Touch
The main channel to reach the WRENCH team is via the support email: [email protected].
Bug Report / Feature Request: our preferred channel to report a bug or request a feature is via
WRENCH's Github Issues Track.
Citing WRENCH
When citing WRENCH, please use the following paper. You should also actually read that paper, as it provides a recent and general overview on the framework.
@article{wrench,
title = {Developing Accurate and Scalable Simulators of Production Workflow Management Systems with WRENCH},
author = {Casanova, Henri and Ferreira da Silva, Rafael and Tanaka, Ryan and Pandey, Suraj and Jethwani, Gautam and Koch, William and Albrecht, Spencer and Oeth, James and Suter, Fr\'{e}d\'{e}ric},
journal = {Future Generation Computer Systems},
volume = {112},
number = {},
pages = {162--175},
year = {2020},
doi = {10.1016/j.future.2020.05.030}
}
List of Contributors via Pull Requests
User | Description |
---|---|
@dohoangdzung | I/O with page cache simulation model (09/2020) |
Funding Support
WRENCH has been funded by the National Science Foundation (NSF), and the National Center for Scientific Research (CNRS).