<div dir="ltr">Thank you, Paul. Robert Buckley</div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Apr 20, 2015 at 5:49 PM, Paul Bone <span dir="ltr"><<a href="mailto:paul@bone.id.au" target="_blank">paul@bone.id.au</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Mon, Apr 20, 2015 at 05:19:26PM -0700, Delmas Buckley wrote:<br>
> Hello,<br>
><br>
> I'm trying to install mercury-13.05.1 on an older Mac PPC-G5 running OS X<br>
> 10.5.8. Attempting to install in /usr/local. Have done the following which<br>
> appears to have worked so far:<br>
><br>
> $ sudo sh configure --with-llds-base-grade=none<br>
><br>
> $ sudo make<br>
><br>
> My question relates to options to be used (or not) during make install.<br>
> I've read down the line of options listed in the 'fine tuning' portion of<br>
> INSTALL.<br>
><br>
> The set of library grades from which to choose is:<br>
><br>
> hlc.gc<br>
><br>
> hlc.gc.trseg<br>
><br>
> hlc.par.gc<br>
> reg.gc<br>
> reg.gc.debug<br>
> reg.gc.decldebug<br>
> reg.gc.memprof<br>
> reg.gc.prof<br>
> reg.gc.prof.deep<br>
> reg.gc.trseg<br>
> reg.gc.trseg.debug<br>
> reg.par.gc.stseg<br>
><br>
><br>
> I just do basic programming in Mercury, and, if possible, I'd like to be<br>
> able to do some simple profiling. My question is: which options, if any,<br>
> should I be using to accomplish those things?<br>
><br>
> $ sudo make install --enable-libgrades=< . . . ><br>
><br>
<br>
</div></div>--enable-libgrades is a ./configure option. There is a way to control this<br>
at the "make install" stage by setting the LIBGRADES variable.<br>
<br>
$ sudo make LIBGRADES=... install<br>
<br>
I'm afraid the grades situation is complicated. I want to improve the<br>
documentation on this very soon. But for now I suggest choosing either<br>
"reg" or "none" for your LLDS base grade. Reg may be faster but we haven't<br>
tested it (or anything else) on a PPC machine for a long time, you're in<br>
uncharted territory. Then choosing grades such as:<br>
<br>
hlc.gc,<br>
reg.gc,<br>
reg.gc.decldebug,<br>
reg.gc.memprof,<br>
reg.gc.prof,<br>
reg.gc.profdeep,<br>
<br>
This gives you "hlc.gc" which will probably be much faster than "reg.gc",<br>
each of the three profiling grades and a debugging grade. When you don't<br>
need profiling or debugging then hlc.gc is your fastest grade.<br>
<br>
Note that the deep profiling and possibly the debugging grades do not<br>
support tail recursion. If your programs run out of stack space there are<br>
two potential solutions, use a segmented stack (.stseg), or use a very large<br>
non-segmented stack. The latter can be wasteful and inconvenient however in<br>
this case I'd recommend it as I don't think the new-ish segmented stack code<br>
has been tested on PPC.<br>
<br>
Once again, you're in uncharted territory. If you find something<br>
interesting that others should know about it please let us know.<br>
<br>
Cheers.<br>
<span class="HOEnZb"><font color="#888888"><br>
<br>
--<br>
Paul Bone<br>
</font></span></blockquote></div><br></div>