av-maramzin / sodden

An Olden benchmarks cmake harness

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Sodden - An Olden benchmarks cmake harness

Introduction

This is a CMake build harness for the Olden benchmarks.

The actual source files for each benchmark are not included, but use this instead.

Features

  • Building of all 10 C programs of the suite
  • Out-of-source builds thanks to cmake
  • Capability to create LLVM bitcode files thanks to llvm-ir-cmake-utils and LLVM opt pass pipelines (see the config/pipelines subdirectory).
  • Capability to configure and build any desired subset of the programs by using the corresponding configuration (see the suite_* files in the config subdirectory).

Requirements

  • cmake 3.0.0 or later
  • a sensible C compiler

How to use

  1. git clone --recursive this repo and git clone the benchmark source repo.

  2. Create symlinks to the src subdirectory of each benchmark program. This can be automated with the relevant script found in the utils/scripts/source_tree subdirectory of this repo, for example:

    create-symlink-bmk-subdir.sh -c suite_all.txt -s [path-to]/olden/ -t [path-to]/sodden/olden/ -l src

  3. Create a directory for an out-of-source build.

  4. Run cmake and cmake --build . from the previously created build directory. For examples on the various options have a look at the convenience build scripts located in the utils/scripts/source_tree subdirectory.

  5. Optionally, you can install the benchmarks by

    cmake -DCMAKE_INSTALL_PREFIX=[path-to-install] -P cmake_install.cmake

    Omitting CMAKE_INSTALL_PREFIX will use the ../install/ directory relative to the build directory.

About

An Olden benchmarks cmake harness


Languages

Language:CMake 78.0%Language:Shell 22.0%