O- Improvements compared to CBP2016:
- The simulation speed has been greatly improved. For simple predictors such as Gshare or Bimodal, the simulation time went down from ~30 minutes down to ~1 minute when using a 6 core CPU.
- The predictors now have a configuration file
predictor.yml
which describes the parameters avalaible in predictor. - The framework supports AI optimization of predictor parameters with Google Vizier
Unfortunately the installation is a bit rough currently with several dependencies. If you experience difficulties, please don't hesitate and create a ticket :)
-
Clone this repository
-
Download the testing traces
As the testing trace files are too big to be hosted on Git, please download them from here and extract them such that your directory structure looks like this:
traces/evaluationTraces.Final/evaluationTraces/*.zst
. -
Install a C++ compiler
Compiler with support of C++20 is required. Clang-17 and GCC-13 were tested.
-
Install Boost library
For example on Ubuntu:
sudo apt install libboost-all-dev
The library is expected to be installed in
/usr/include/boost
. -
Task (make replacement)
See the installation steps https://taskfile.dev/installation/ and install either with your preferred package manager, or by downloading binary from Github releases and adding it to PATH.
-
Python libraries
Install Python libraries with:
pip install -r /path/to/requirements.txt
Note: Because Python is terrible, you will probably first need to create a Virtual Enviroment with
python -m venv /path/to/new/virtual/environment
. After that you can run thepip install
command. Don't forget that you then need to runsource <path-to-venv>/bin/activate
on each new shell.