- Clang++
- CMake (version 3.22 or higher)
- Boost (required for end-to-end benchmarks)
- BZIP2 (required for PED benchmarks)
- OpenSSL (required for PED benchmarks)
- libcurl (required for PED benchmarks)
- g++ (required for PED benchmarks)
- pandas (required for plots)
- seaborn (required for plots)
- Java 8 (required for ELF)
- Maven 3.9.9 (required for ELF)
This script can be used to install all necessary dependencies on Ubuntu.
- Intel Ice Lake (x86_64, AVX512): Recommended AWS instance type: i4i.4xlarge, with at least 16 cores.
- AMD Zen 3 (x86_64, AVX2): Recommended AWS instance types: M6a and C6a.
- Apple M1
- AWS Graviton 2 (ARM64, NEON): Recommended AWS instance types: M6g, C6g, R6g, and T4g.
- AWS Graviton 3 (ARM64, NEON): Recommended AWS instance types: M7g, C7g, and R7g.
For further questions about hardware recommendations, feel free to ask.
- Plotter: Collects data and generates all figures in the paper.
- Uses data from the repository and additional data produced by running the script.
- Note: The script for Figure 6 is missing and needs to be completed.
- Table Generator: Generates Tables 4 and 7 from the paper, stores the generated tables in Markdown format in result_dir, and prints the tables to the terminal.
- The master script generates experimental result tables in Markdown format.
- Detailed instructions for compilation, deployment, execution, and script usage are provided in BENCHMARKING.md.
- Guidelines explain how to replicate experiments and benchmarks from the publication.
- Master script: Automates experiments, data collection, and workflow management.
- Outputs:
- A log file (
master_script.log
) with step completion reports (green) and tables (brown).
- A log file (
- MacBook Note: Requires
sudo
access to enable the cycle counter. - Font Warnings: May require additional font installation, which does not impact functionality.
- Outputs:
- Deployment time and effort: X hours
- Execution time: Approximately 1 hour for the full workflow (for reviewer preparation).