Permalink
Commits on Feb 16, 2012
Commits on Feb 10, 2012
Commits on Jan 24, 2012
  1. Added new flat data dump to fibon-analyse

    The flat dump will dump multiple rows per benchmark with
    each row tagged with size and tune entries. This view is
    sometimes useful for plotting the data in R.
    committed Jan 24, 2012
  2. Add command line option to dump config in ini format

    The computed configuration for each benchmark is written to
    stdout in a ini-style format.
    committed Jan 24, 2012
Commits on Dec 22, 2011
  1. Follow changes in benchmarks and config submodules

    Added support for GHC 7.4
    committed Dec 22, 2011
Commits on Dec 19, 2011
  1. Allow benchmarks to be run in parallel

    Sometimes for testing purposes it is useful to run the
    benchmarks in parallel as well as building them in parallel.
    For collecting running times it does not make sense to do
    this, but for testing that everything is working a parallel
    run is ok.
    
    We add a new -p flag that will let the benchmarks be run in
    parallel if the the runtime has enough threads (e.g. we are
    using +RTS -N).
    committed Dec 19, 2011
  2. Run build steps in parallel

    We can now run the build steps in parallel to speed the
    overall collection of results. To support parallel builds we
    now depend on the parallel-io package that provides a
    thread pool for executing IO actions. To control the number
    of threads used, you must pass the rts flags such as:
    
      $ fibon-run +RTS -N2 -RTS
    
    This commit also introduces a dependency on the unix
    package. We had to use this to install our own signal
    handler to get CTRL-C to be correctly handled so that it
    immediatly shuts down the program. Without the custom signal
    handler it only kills one thread and so it is very difficult
    to have an early termination of the program.
    committed Dec 18, 2011
Commits on Dec 13, 2011
  1. Spawn cabal processes with correct working dir

    This commit changes the way that cabal processes are spawned
    so that they start with the correct working directory.
    Previously we first changed the working directory of the
    parent process and then spawned the cabal process. Doing it
    that way prevents us from spawning multiple cabal processes
    in parallel on different threads since the working directory
    is a shared resource among multiple threads. We should now
    be able to run multiple cabal processes which would let us
    parallelize the build.
    committed Dec 13, 2011
  2. Add ability to reuse build results from old runs

    We can now reuse the results of builds from old runs. Using
    the old build results allow us to build the program under a
    given configuration one time and then run it and collect
    results many times. This feature is useful if you want to
    collect performance numbers for configuration paramaters
    that are passed at runtime instead of build time (for
    example running with a different number of threads).
    
    To reuse the build results pass the directory name as it
    appers under the run/ directory in the fibon root. For
    example,
    
      $ fibon-run -c head -r 401.head
    
    will result the build results from run/401.head
    committed Dec 13, 2011
Commits on Dec 11, 2011
  1. Change fibon-run to build and run in separate phases

    This commit changes the way the benchmarks are built and
    run. Instead of running all actions for a given benchmark
    (e.g. Sanity, Build, Run) one benchmark at a time we now run
    all the benchmarks one action at a time. So now we will run
    all Sanity actions, then all Build actions, then all Run
    actions. Splitting the actions this way will allow us to run
    the Sanity and Build actions in parallel, if so desired and
    let us reuse build artifacts from different runs.
    committed Dec 9, 2011
Commits on Dec 9, 2011
  1. Delete old commented out code

    committed Dec 9, 2011
Commits on Nov 1, 2011
  1. Follow changes in benchmarks submodule

    New commits for working with GHC 7.3
    committed Nov 1, 2011
  2. Add a gc table to available output options

    The gc table has an column for wall time, mut time, and gc
    time.
    committed Nov 1, 2011
Commits on Oct 6, 2011
  1. Updated README with how to avoid long running times

    Had questions from several people on why the benchmarks were
    running so slow. The main reason was the switch to longer
    running times for the Ref size without updating the config
    files to account for the increased time.
    
    Added a FAQ section that describes options to make
    benchmarking faster.
    committed Oct 6, 2011
  2. Follow updates in benchmarks and config submodules

    Benchmarks
    > Fix Gf build for ghc 7.1
    > Updated syb to version 0.3.2 for funsat benchmark
    
    Config
    > Added config for llvm-gcc GC comparisons
    committed Oct 6, 2011
Commits on Jun 23, 2011
  1. Track changes in benchmarks submodule

      > Disable parallelism in Cpsa by default
    committed Jun 23, 2011
Commits on May 19, 2011
  1. Track changes in config and benchmarks

    The benchmarks now contain the new larger Ref sizes.
    committed May 19, 2011
Commits on May 16, 2011
  1. Added a helper module for writing new benchmarks

    The BenchmarkHelper module contains useful functions for writing
    long running benchmarks. It contains a utility for parsing command
    line arguments that strips out a -r N argument that can be used
    internally by a program to run multiple times. Also, it exposes
    the deepseq function so that benchmarks can use it to evaluate
    data without printing it out which is useful when the program will
    loop many times.
    committed May 11, 2011
  2. Added Train as a new input size

    The Train input size can be used for feedback based optimizations.
    We plan to increase the standard running time for the Ref size so
    we can work with longer running programs. The train input size is
    therefore an option for when we want a quicker run but still get
    some meaningful results.
    
    Also updated fibon-init to include new Train data size.
    committed May 11, 2011
  3. Fix compiler warnings

    committed May 10, 2011
Commits on Mar 21, 2011
  1. Track changes in benchmarks submodule

    New commits to fix errors after renaming executables.
    committed Mar 21, 2011
Commits on Mar 17, 2011
Commits on Feb 24, 2011
  1. Track changes in config submodule

    committed Feb 24, 2011
  2. Change the ghc table spec to not print stg data

    Added a new spec called "ghc+stg" that prints the full ghc data
    along with the additional stg timings.
    committed Feb 24, 2011
  3. Added new table output that dumps all results

    The new format dumps the values of each column for each input file
    in a single table. The format is intended to be used as input for
    another program (such as R).
    committed Feb 24, 2011
  4. Added ability to pick table spec from command line

    This commit adds a command line flag to specify the table spec to
    use for output. In addition, we added a new table that dumps out all
    of the stats collected from a ghc stats file.
    committed Feb 21, 2011
Commits on Feb 21, 2011
  1. Add stg timer stats to fibon-analyze

    This commit makes the ghc stats parser aware of the experimental stg
    timer. The stg timer counts the time that a ghc program spends
    executing code for the stg machine. We add support for stg timer
    output in the ghc stats file along with a basic table to display the
    results.
    committed Feb 21, 2011
Commits on Feb 7, 2011
Commits on Feb 4, 2011
  1. Track changes in submodules

    committed Feb 4, 2011
Commits on Feb 2, 2011