Skip to content

eschulte/stuop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

                     Student Program Optimization

DESCRIPTION:

    Use the Genetic Optimization Algorithm (GOA) [1] to optimize
    student programs.  This repository is used to perform reproducible
    experiments across multiple;
    - implementations (by multiple students)
    - languages (C, OCaml, Cool...)
    - optimization targets (runtime, executable size...)
    - compilers, compiler flags, machines, and architectures (TODO).

    [1] https://github.com/eschulte/goa

USAGE:

    Optimize
        $ make evolve-c-cycles

    Collect results from a remote machine
        $ make collect REMOTE_DIR=host:/experiments/stuop

    Graph and print the results of an optimization pass
        $ make graph-cycle-stats
        $ make print-cycle-reduction

    Evaluate the success of a series of runs
        $ find results/cycles/* -name "*.store" \
          |sed 's/store$/stats/' \
          |xargs make

About

Evolutionary optimization of student programming assignments

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published