On 5/28/07, Bill Hart <[EMAIL PROTECTED]> wrote:
> These days sage.math is often operating with all 16 cores going flat
> out.

This will stop.  I'm going to systematically ask all users of
sage.math to stop pushing the hardware like this.  The *primary*
purpose of sage.math is for SAGE software development and
collaboration, not individual research (except for the
research of William Stein).   I will apply for an NSF SCREMS grant, see
   http://www.nsf.gov/publications/pub_summ.jsp?ods_key=nsf04513
and if the NSF grants it then we can get some serious resources for
research computing.

> When it gets like this, FLINT slows down dramatically, but MAGMA does
> not. This makes timing comparisons meaningless (and slows down
> development).

My apologies.

> I'm wondering if anyone has any suggestions as to why this might be.
> How can their code take the same user time whether the machine is
> under load or not, and ours takes up to 50% longer.
>

One problem is that I recently accidentally reniced sshd to -5, which
caused all normal user processes to default to -5.   I've fixed this.

> I've checked the following things:
>
> 1) Cache hints: We are already using these as these make a noticeable
> difference. My theory about this is that when the kernel switches
> between different processes, any computation that was underway gets
> moved out of cache and the cache gets overwritten by the other
> process. Cache hints help by making sure cache coherency is optimised
> for the currently active process.
>
> 2) Nice number: MAGMA runs at a default nice level of -5 as does
> FLINT.

My fault -- this will switch to 0.

> 3) Memory management: a memory manager saves kernel time, but not user
> time as far as I can tell. However, the problem I've noted affects
> user time. I've experimented with replacing various parts of the
> memory allocation and deallocation code with the FLINT memory manager,
> but it doesn't seem to affect user time (though naturally it cuts
> kernel time).
>
> 4) gcc compiler optimizations: I use -O3 -fexpensive-optimizations -
> funroll-loops
>
> Does anyone know of anything else? Are there other compiler
> optimizations I should use? Is there something else about memory
> management that I don't know? Is it to do with the way our library is
> linked? Does it have to do with MAGMA having root privileges because
> it was installed by root or something?
>
> There has to be a simple explanation for this.

I definitely don't have an explanation, but you're right that there
is probably a simple one.  That said, it makes no sense at all to
do benchmarking on a system that is very heavily loaded.

 -- William

--~--~---------~--~----~------------~-------~--~----~
To post to this group, send email to sage-devel@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/sage-devel
URLs: http://sage.scipy.org/sage/ and http://modular.math.washington.edu/sage/
-~----------~----~----~----~------~----~------~--~---

Reply via email to