[m-rev.] for review: genetic algorithm for searching the space of optimizations

Samrith UONG samuong at gmail.com
Thu Feb 9 13:02:23 AEDT 2006


On 2/8/06, Ralph Becket <rafe at cs.mu.oz.au> wrote:
> Samrith Uong, Wednesday,  8 February 2006:
> > On 2/6/06, Julien Fischer <juliensf at cs.mu.oz.au> wrote:
> >
> > Changed them.  But what's wrong with predicates?
>
> Predicates can't be used in expressions.  Functional style is preferable
> wherever applicable.

Fair enough.

> mcflags and MCFLAGS are bad naming choices because MCFLAGS is already
> used by mmake.  Can I suggest gaflags and GAFLAGS?

That's true.  I named it MCFLAGS because that is the name of the
variable used in makefiles, but that's probably not such a good idea. 
I've also realised that if we wanted to run this on an OS with a
case-insensitive filesystem, we can't have two files called "mcflags"
and "MCFLAGS".  I've renamed the directory MCFLAGS to "generations". 
How does the name "gator" sound?

> > There are a number of files in each of these directories.  The most
> > useful one is the file "ladder".  This file contains a table listing all
> > of the individuals in a population.  Each individual is given a number,
> > between 1 and the population size, in the first column of the table.
> > The second column contains the "fitness" of an individual.  The third
> > column contains the "genotype" of an individual, which is the list of
> > compiler options that are passed to the compiler.
>
> By population you mean "population of that particular generation"?

Yes.  I've changed it to this:

There are a number of files in each of these directories.  The most
useful one is the file "ladder".  This file contains a table listing all
of the individuals in a generation.  Each individual is given a number,
between 1 and the size of its generation, in the first column of the table.
The second column contains the "fitness" of an individual.  The third
column contains the "genotype" of an individual, which is the list of
compiler options that are passed to the compiler.

> > For each host, the following variables need to be defined.
> >
> >       host$i: the name of the host we are connecting to.  This is
> >               passed as a command-line argument to ssh(1).  Make sure
> >               you have a copy of the host's SSH public key in your
> >               cache before you run mcflags.
> >
> >       workspace$i: the path to a directory containing mcflags.  Note
> >               that nothing is written to this directory, it is just
> >               used to access the dotime and evaluate.conf files from
> >               a remote host.  It can be the same on all hosts, as long
> >               as this directory is also mounted on all of the remote
> >               machines.
> >
> >       benchmarks$i: similar to workspace$i, except it contains the
> >               benchmarks directory from CVS.  Note that each host must
> >               have its own benchmarks directory.
> >
> >       path$i: the path to the directory containing the compiler.  This
> >               is pre-pended to $PATH in the evaluate script.
>
> What are the $i here?

I've changed that top sentence to:

For each host, the following variables need to be defined, where $i is
an integer between 1 and $num_progs.

I've also done this in section 2.

--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list