chronovise
chronovise: Measurement-Based Probabilistic Timing Analysis framework - Published in JOSS (2018)
Science Score: 93.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 1 DOI reference(s) in JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
○Committers with academic emails
-
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Repository
Measurement-Based Probabilistic Timing Analysis framework
Basic Info
- Host: GitHub
- Owner: federeghe
- License: apache-2.0
- Language: C++
- Default Branch: master
- Size: 19.7 MB
Statistics
- Stars: 6
- Watchers: 2
- Forks: 6
- Open Issues: 5
- Releases: 1
Topics
Metadata Files
README.md
chronovise
chronovise is a framework to perform Measurement-Based Probabilistic Timing Analyses (MBPTA). MBPTA is a recent proposed technique in the field of probabilistic real-time computing, that relies on execution time observations to infer the probabilistic Worst-Case Execution Time (pWCET). The framework has been developed to be easily customizable and adaptable by the researcher for both testing new MBPTA algorithms and evaluating the pWCET of a certain system/software.
| Branch | Description | Status |
|--------------|----------------|--------------|
| master | Stable | |
| master-next | Development |
|
| master | Coverage |
|
| - | Paper |
|
What you need
- A modern compiler with C++14 support (gcc >= 5.0 or clang/LLVM >= 4.0) and the CMake building tool.
- The code should be cross-platform because we do not use any Linux-specific feature. However, we usually test it only on Linux. Please fill a bug if it does not work with other operating systems.
Dependencies:
* [optional] ceres-solver installed (both libraries and header files). You can use one of the distribution
package -- e.g. Ubuntu*,
Fedora,
Arch Linux -- or build it from the source.
Please check the ceres-solver documentation.
This package is needed if you want to run Maximum Likelihood Estimation routines.
* [optional] Google Test if you want to run the test suite.
* Be aware that the current Ubuntu package has a dependency bug.
Building
To build the main library and the examples, perform the standard git and cmake sequence of commands:
bash
$ git clone https://github.com/federeghe/chronovise.git
$ cd chronovise
$ mkdir build
$ cd build
$ cmake ..
If you do not have access to ceres-solver you can disable modules that depends on it specifying the
appropriate macro in cmake command (default: CERES_SOLVER is ON):
$ cmake -DCERES_SOLVER=OFF ..
You can also enable OpenMP to speedup the EVT process (default: USE_OPENMP is OFF):
$ cmake -DUSE_OPENMP=ON ..
In case that you have multiple complilers installed in your system, you can specify a compatible compiler as follows:
$ CC=gcc-5 CXX=g++-5 cmake ..
Then, to compile:
$ make
(you can also specify the appropriate -j option to make to decrease the compilation time).
Test suite
The test suite is based on Google Test, so you need to install it in your machine before proceeding. If you are not going to develop the chronovise framework you don't probably need the test suite and you can skip this section.
Building the test suite (pay attention to tests):
make tests
and run it:
make check
This may take some minutes to complete. Please note that occasionally the test suite can fail: some tests are based on random samples and it can infrequently happen that an unlikely configuration occurs. This is typical of statistical tests that fails with a probability of 5\%. If the test suite provides you a failure, please re-run it a couple of times to check that is not a random spot.
Run the examples
The framework is shipped with two examples automatically compiled with the framework: HelloWorld
and SimpleHelloWorld. The source files are located under the samples/ directory. The
HelloWorld sample application is available only if ceres-solver is available.
You can run them inside the build directory via:
./samples/hello_world
and
./samples/simple_hello_world
If you do not plan to use it as a library, you may also want to check some ready-to-use applications in the directory apps.
Please read the documentation for further details.
Documentation
Goto the documentation index file.
Development & Issues & Support
Can I contribute? Sure!
The code is hosted in mirroring on GitHub and
on a private university server. All bug reports and pull requests must be open on the GitHub
repository. If you need support or you want to discuss new contributions please ask directly
to the head developer: Federico Reghenzani
License
This code is licensed under Apache-2.0, please refer to the LICENSE file.
The logo is a derivative work of the following original images: * the clock designed by Tkgd2007 from WikimediaCommons; * the vise designed by SmashIcon from Flaticon.
Owner
- Name: Federico Reghenzani
- Login: federeghe
- Kind: user
- Location: Italy
- Company: Politecnico di Milano
- Website: https://reghenzani.faculty.polimi.it/
- Twitter: federeghe
- Repositories: 22
- Profile: https://github.com/federeghe
JOSS Publication
chronovise: Measurement-Based Probabilistic Timing Analysis framework
Authors
Tags
probabilistic real-time mbpta worst-case execution time extreme value theoryGitHub Events
Total
- Push event: 1
- Pull request event: 1
- Fork event: 2
Last Year
- Push event: 1
- Pull request event: 1
- Fork event: 2
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Federico Reghenzani | f****i@p****t | 295 |
| Giuseppe Massari | j****a@g****m | 4 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 17
- Total pull requests: 2
- Average time to close issues: 16 days
- Average time to close pull requests: N/A
- Total issue authors: 3
- Total pull request authors: 2
- Average comments per issue: 1.47
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 1
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 1
- Average comments per issue: 0
- Average comments per pull request: 0.0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- federeghe (11)
- lkosmid (5)
- denisovlev (1)
Pull Request Authors
- nicolasbenatti (2)
- AlterB (1)
