package aperf

  1. Overview
  2. Docs
OCaml tools for loop perforation

Install

Dune Dependency

Authors

Maintainers

Sources

v0.1.2.tar.gz
sha256=aea2cc46292e3b6869d0e159942ff29ca920e21571e1c9e0f024525d7343b0dc
md5=68f60133dd5d805efd43f1518c03a601

Description

Published: 11 Aug 2016

README

aperf — OCaml tools for loop perforation

Examples

k-means

k-means has two loops that can be perforated

  1. the loop over the points when finding new centers

  2. the number of iterations of the step algorithm

I have trained the automatic perforation over 10 input sets, each of 100,000 2-dimensional points with each dimension in the range [0,50].

For a baseline, here are the exhaustive results where we try all combinations of loop perforations between 0 and 100% by steps of 5%:

And here are the results for the automatic perforation:

Each trained perforation was then tested on a different set of live data: 10 input sets, each of 1,000,000 2-dimensional points with each dimension in the range [0,50].

Below is a combined graph where the trained results are in red and the live results are in blue. The green points are the additional configurations which the live data set discovered. Green lines are when accuracy increased for a configuration from the training run to the live run and a red line is when accuracy decreased.

Dependencies (6)

  1. ppx_tools
  2. cmdliner
  3. topkg build
  4. ocamlbuild build
  5. ocamlfind build
  6. ocaml >= "4.03" & < "4.08.0"

Dev Dependencies

None

Used by

None

Conflicts

None

OCaml

Innovation. Community. Security.