Differences between revisions 46 and 51 (spanning 5 versions)
Revision 46 as of 2010-09-13 01:41:23
Size: 25314
Editor: JohnPalmieri
Comment:
Revision 51 as of 2011-01-20 03:53:07
Size: 13231
Editor: DanDrake
Comment: menas no longer exists; http://groups.google.com/group/sage-skynet/browse_thread/thread/315c2366648f91e6
Deletions are marked like this. Additions are marked like this.
Line 4: Line 4:
It is very important to read

{{{
/usr/local/README.background_jobs
}}}

on the skynet machines, otherwise your builds will take a long time due to long-running CPU intensive tasks. That README file tells you how to stop those CPU intensive tasks.
Line 8: Line 16:
Current versions of Sage should build without problem on the skynet machines cicero, cleo, eno, flavius, iras, lena, mark, menas, sextus, taurus. As of this writing (July 2010) it will not build completely on fulvia -- see below.

Here is information about the skynet machines. For the linux boxes, this was obtained using the script at http://trac.sagemath.org/sage_trac/ticket/8048. For the Solaris machines (fulvia and mark), it was obtained using the commands listed in the description.
Current versions of Sage should build without problem on the skynet machines cicero, cleo, eno, flavius, fulvia, iras, lena, mark, mark2, sextus and taurus.

Here is information about the skynet machines. For the linux boxes, this was obtained using the script at http://trac.sagemath.org/sage_trac/ticket/8048. For the Solaris 10 machines (fulvia, mark and mark2), it was obtained using the commands listed in the description.
Line 181: Line 189:
To attempt to build Sage on fulvia, set the following variables: To build Sage on fulvia, set the following variables:
Line 192: Line 200:
export SAGE_PARALLEL_SPKG_BUILD
}}}
As of this writing, the build will probably fail when building R. You can bypass this by touching the file {{{SAGE_ROOT/spkg/installed/r-2.10.1.p2}}} and then restarting the build. (This issue is being tracked at http://trac.sagemath.org/sage_trac/ticket/9040.) This should produce a Sage binary which works for most things, but is not perfect.
export SAGE_PARALLEL_SPKG_BUILD=yes
}}}
Line 197: Line 204:
Line 201: Line 209:
and continue as above. (The second setting replaces the earlier 32-bit setting.) As of this writing, the build will probably fail on a number of packages. There are replacements for all of these available, with the exception of the statistics package R.
 * singular (http://trac.sagemath.org/sage_trac/ticket/9397)
 * ATLAS (http://trac.sagemath.org/sage_trac/ticket/9508)
 * cvxopt (http://trac.sagemath.org/sage_trac/ticket/9657)
 * ecl (http://trac.sagemath.org/sage_trac/ticket/9643)
 * libfplll (http://trac.sagemath.org/sage_trac/ticket/7864)
 * pynac (http://trac.sagemath.org/sage_trac/ticket/7861)
 * numpy (http://trac.sagemath.org/sage_trac/ticket/8086)
 * zn_poly. (http://trac.sagemath.org/sage_trac/ticket/9358)

R (http://trac.sagemath.org/sage_trac/ticket/9040) will also fail and can be bypassed as described above.
and continue as above. (The second setting replaces the earlier 32-bit setting.) As of this writing, the build will certainly fail when building R. You can bypass this by touching the file {{{SAGE_ROOT/spkg/installed/r-2.10.1.p2}}} and then restarting the build. (This issue is being tracked at http://trac.sagemath.org/sage_trac/ticket/9040.) However, whilst it's possible to create a 64-bit version of Sage, it will fail to run properly, and will almost certainly crash either at startup, or whenever one tries to do something non-trivial. Some, and possibly all of the problems are caused by libraries having text relocations. These include

 * Cliquer http://trac.sagemath.org/sage_trac/ticket/9833 & http://trac.sagemath.org/sage_trac/ticket/9871
 * ECL http://trac.sagemath.org/sage_trac/ticket/9840
 * Maxima http://trac.sagemath.org/sage_trac/ticket/9099 (almost certainly caused by ECL's text relocations).
 * PolyBoRi http://trac.sagemath.org/sage_trac/ticket/9872
Line 315: Line 318:
If you want to try a 64-bit build, then in addition to the above, set

{{{
export SAGE64='yes'
export SAGE_FORTRAN_LIB="/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/lib/sparcv9/libgfortran.so"
}}}
and continue as above. (The second setting replaces the earlier 32-bit setting.) As of this writing (13th September 2010). it is possible to build a 64-bit version of Sage on SPARC systems. which is able to do some computations, but the resulting build is very unstable. The instability is at leasat in part due to the problems described above for 'fulvia', in that some of the libraries have text relocations.
Line 319: Line 330:
}}}

== Menas ==

----
basic info
{{{
uname -a: Linux menas 2.6.27.39-0.2-default #1 SMP 2009-11-23 12:57:38 +0100 x86_64 x86_64 x86_64 GNU/Linux
}}}
----
OS/system info
{{{
/etc/*-release: LSB_VERSION="core-2.0-noarch:core-3.2-noarch:core-2.0-x86_64:core-3.2-x86_64"
/etc/issue: Welcome to openSUSE 11.1 - Kernel \r (\l).'\r''\r''\r'
version: Linux version 2.6.27.39-0.2-default (geeko@buildhost) (gcc version 4.3.2 [gcc-4_3-branch revision 141291] (SUSE Linux) ) #1 SMP 2009-11-23 12:57:38 +0100
OS bitlength: 64-bit
}}}
----
CPU info
{{{
model name: Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
CPU Count: 1
cores per cpu: 4
total number of threads: 4
64-bit capable: yes (long-mode)
}}}
----
memory info
{{{
MemTotal: 8113336 kB
MemFree: 1637988 kB
SwapCached: 7516 kB
SwapTotal: 8393952 kB
SwapFree: 8348296 kB
}}}
----
misc info
{{{
gcc (GCC) 4.5.0
Line 446: Line 418:
|| fulvia || n/a || || fulvia || This needs to be measured ||
Line 450: Line 422:
|| menas || 81 minutes ||
Line 453: Line 424:

== The following is outdated information, preserved in case it's important for some obscure reason. This information applies to version 3.0.4 of Sage. ==

To get from rc0 to rc1 from within a built sage do this:
{{{
sage: hg_sage.apply('http://sage.math.washington.edu/home/was/patches/a.hg')
sage: hg_sage.merge()
sage: hg_sage.ci()
}}}
Then do "./sage -br" at the prompt.


== eno: x86_64-Linux-fc8 (status: 10/10) ==

Using gcc-4.3.1: I (william) can't build ntl. I'm totally stuck until getting past this.
Fixed by using this environment (put in my .bash_profile):
{{{
# From mabshoff
if [ `hostname` = "eno" ]; then
   export PATH=/usr/local/gcc-4.3.1/x86_64-Linux-fc8/bin/:$PATH
   export LD_LIBRARY_PATH=/usr/local/gcc-4.3.1/x86_64-Linux-fc8/lib64:/usr/local/gmp-4.2.2/x86_64-Linux-fc8-gcc-4.1.2-rh/lib:/usr/local/mpfr-2.3.1/x86_64-Linux-fc8-gmp-4.2.2-gcc-4.1.2-rh/lib

fi
}}}

Me (mabshoff) just build 4.0.3.rc1 with gcc 4.3.1 and all tests pass with flying colors.

== cicero: x86-Linux-fc8 (status: 10/10) ==

UPDATE: I just built rc2 using gcc-4.3.1, and I definitely do *not* get
an illegal instruction when testing devel/sage/sage/functions/special.py.
The only doctest failure I get is one digit being off in time_series.py (numerical
noise), which I've fixed in the release tree.
{{{
wstein@cicero sage-3.0.4.rc2]$ ./sage -t devel/sage/sage/functions/special.py
sage -t devel/sage/sage/functions/special.py
         [10.2 s]

----------------------------------------------------------------------
All tests passed!
}}}

I wonder if Mariah has some screwed up fortran libraries or something in her
path? From a clean bash login shell I setup my environment as follows
{{{
        export PATH=/usr/local/bin/x86-Linux-fc8/:$PATH
        LDPATH=/usr/local/gcc-4.3.1/x86-Linux-fc8/lib
        LDPATH=${LDPATH}:/usr/local/gmp-4.2.2/x86-Linux-fc8-gcc-4.1.2-rh/lib
        LDPATH=${LDPATH}:/usr/local/mpfr-2.3.1/x86-Linux-fc8-gmp-4.2.2-gcc-4.1.2-rh/lib
}}}

OLD:
Using gcc-4.1.2: built fine out of the box; all tests for rc1 pass.

Using gcc-4.3.1: Mariah gets an "illegal instruction" error when testing
{{{
sage -t devel/sage/sage/functions/special.py
}}}
See http://trac.sagemath.org/sage_trac/ticket/2303

Replicate sage-free:
{{{
sage -python
>>> import scipy.special; scipy.special.iv(float(1),complex(1,0))
/tmp/foo/sage-3.0.4.rc0-x86-Linux-fc8/local/bin/sage-sage: line 359: 2638 Illegal instruction python "$
}}}

* Michael suggested upgrading to the newest version of scipy. This is certainly worth a try.

== cleo: ia64-Linux-rhel5 (status: ?/10) ==

UPDATE: This machine's Linux kernel or something is screwed up, so it is not useful for build/testing purposes until it gets fixed.

Using gcc-4.1.2: Built fine out of the box. Currently testing; many tests have timed out since this machine is so slow. Possible serious singular crash in groups/matrix_gps/matrix_group.py, though it could be a timeout. There is something massively foobar'd about this machine or its file system or something. For example:
{{{
[wstein@cleo sage-3.0.4.rc0]$ time ./sage -c "print 1+1"
2
real 0m26.532s
user 0m1.447s
sys 0m3.224s
}}}
A 26 second startup time? Ick. Is there something seriously wrong with the build of Python?



== iras: ia64-Linux-suse (status: 10/10) ==
UPDATE:
these fail for me:
{{{
Singular crashing on startup via pexpect for these 3:
        sage -t devel/sage/sage/rings/polynomial/multi_polynomial_ideal_libsingular.pyx # 1 doctes
ts failed
        sage -t devel/sage/sage/rings/polynomial/multi_polynomial_ideal.py # 6 doctests failed
        sage -t devel/sage/sage/groups/matrix_gps/matrix_group.py # 3 doctests failed
}}}

Everything else listed below as failing does not fail for me anymore.

The above is all because somebody (malb) took the wrong singular spkg to make a new version thus
completely deleting the important patch here:
            http://trac.sagemath.org/sage_trac/ticket/2983

I reapplied it and made a new singular spkg.

------------

A complete crash example
{{{
sage: MS = MatrixSpace(GF(7),2,2); MatrixGroup([MS([[0,1],[-1,0]]),MS([[1,1],[2,3]])]).invariant_generators()
---------------------------------------------------------------------------
RuntimeError Traceback (most recent call last)

/home/wstein/iras/build/sage-3.0.4.rc0/<ipython console> in <module>()

/home/wstein/iras/build/sage-3.0.4.rc0/local/lib/python2.5/site-packages/sage/groups/matrix_g
ps/matrix_group.py in invariant_generators(self)
    799 singular.eval('list %s=group_reynolds((%s))'%(ReyName,Lgens))
    800 IRName = 't'+singular._next_var_name()
--> 801 singular.eval('matrix %s = invariant_algebra_reynolds(%s[1])'%(IRName,Rey
Name))
    802 OUT = [singular.eval(IRName+'[1,%d]'%(j)) for j in range(1,1+singular('nc
ols('+IRName+')'))]
    803 return [PR(gen) for gen in OUT]

/home/wstein/iras/build/sage-3.0.4.rc0/local/lib/python2.5/site-packages/sage/interfaces/sing
ular.py in eval(self, x, allow_semicolon, strip)
    425 x += ';'
    426
--> 427 s = Expect.eval(self, x)
    428
    429 if s.find("error") != -1 or s.find("Segment fault") != -1:

/home/wstein/iras/build/sage-3.0.4.rc0/local/lib/python2.5/site-packages/sage/interfaces/expe
ct.py in eval(self, code, strip, synchronize, **kwds)
    915 try:
    916 with gc_disabled():
--> 917 return '\n'.join([self._eval_line(L, **kwds) for L in code.split('\n'
) if L != ''])
    918 except KeyboardInterrupt:
    919 # DO NOT CATCH KeyboardInterrupt, as it is being caught

/home/wstein/iras/build/sage-3.0.4.rc0/local/lib/python2.5/site-packages/sage/interfaces/expe
ct.py in _eval_line(self, line, allow_use_file, wait_for_prompt)
    642 # we expect to get an EOF if we're quitting.
    643 return ''
--> 644 raise RuntimeError, "%s\n%s crashed executing %s"%(msg,self, line
)
    645 out = E.before
    646 else:

RuntimeError: End Of File (EOF) in read_nonblocking(). Exception style platform.
version: 2.0 ($Revision: 1.151 $)
command: /home/wstein/iras/build/sage-3.0.4.rc0/local/bin/Singular
args: ['/home/wstein/iras/build/sage-3.0.4.rc0/local/bin/Singular', '-t', '--ticks-per-sec',
'1000']
patterns:
    >
buffer (last 100 chars):
before (last 100 chars): `ncols` error at token `)`
   ? leaving finvar.lib::invariant_algebra_reynolds
Auf Wiedersehen.

after: <class 'pexpect.EOF'>
match: None
match_index: None
exitstatus: None
flag_eof: 1
pid: 6962
child_fd: 3
timeout: None
delimiter: <class 'pexpect.EOF'>
logfile: None
maxread: 1000
searchwindowsize: None
delaybeforesend: 0
Singular crashed executing matrix tsage4 = invariant_algebra_reynolds(tsage3[1]);
}}}


 * With gcc-4.3.1 the following tests all fail out of the box
{{{
The following tests failed:

(done) sage -t devel/sage/sage/rings/polynomial/polynomial_element.pyx # 1 doctests failed
        sage -t devel/sage/sage/rings/polynomial/multi_polynomial_ideal_libsingular.pyx # 1 doctes
ts failed
        sage -t devel/sage/sage/rings/polynomial/multi_polynomial_ideal.py # 6 doctests failed
        sage -t devel/sage/sage/rings/number_field/totallyreal.py # Segfault
        sage -t devel/sage/sage/plot/plot3d/transform.pyx # 1 doctests failed
        sage -t devel/sage/sage/misc/prandom.py # 1 doctests failed
        sage -t devel/sage/sage/matrix/matrix_symbolic_dense.pyx # 1 doctests failed
        sage -t devel/sage/sage/groups/matrix_gps/matrix_group.py # 3 doctests failed
        sage -t devel/sage/sage/functions/piecewise.py # 1 doctests failed
        sage -t devel/sage/sage/dsage/tests/testdoc.py # 10 doctests failed
        sage -t devel/sage/sage/dsage/interface/dsage_interface.py # 2 doctests failed
        sage -t devel/sage/sage/rings/polynomial/polynomial_integer_dense_flint.pyx # 0 doctests f
ailed
}}}


Update to 3.0.4.alpha2: With a fix to the python.spkg (build without -fwrapv) results in:
{{{

        sage -t -long devel/sage/sage/finance/time_series.pyx
        sage -t -long devel/sage/sage/misc/cython.py
        sage -t -long devel/sage/sage/rings/number_field/totallyreal.py
        sage -t -long devel/sage/sage/rings/polynomial/polynomial_element.pyx
        sage -t -long devel/sage/sage/rings/polynomial/polynomial_integer_dense_flint.pyx
}}}
It seems that all the above failures are know issue and we have leads for all of them.
In particular:
  * trac #3605 (ell_finite_field.py: libSingular - "Use of uninitialised value of size 8"
  * trac #3606 (totallyreal_data.py: "Use of uninitialised value of size 8"

 * There is a major bug in flint that freezes doctesting. See http://trac.sagemath.org/sage_trac/ticket/3616

 * segmentation fault
{{{

sh: line 1: 16098 Segmentation fault /home/wstein/iras/build/sage-3.0.4.rc0/local/bin/python /home/wstein/iras/build/sage-3.0.4.rc0/tmp/.doctest_totallyreal.py >/tmp/tmpW-loSD 2>/tmp/tmp8ZjloU
sage -t devel/sage/sage/rings/number_field/totallyreal.py

A mysterious error (perphaps a memory error?) occurred, which may have crashed doctest.
}}}

I think this is related to the valgrind issues that mabshoff observed and reported.

* Bill Hart says:

{{{
FLINT definitely isn't working on ia64.

I've tracked the problem a bit further through now that I know lots of
tests are failing in long_extras-test.

The problem appears to be in the function z_ll_mod_precomp in long_extras.c

This function uses udiv_qrnnd from GMP's longlong.h and not a whole
lot else, so that is a hint. This doesn't mean there is a bug in GMP,
it probably just means that on this architecture FLINT is setting
something up incorrectly before using longlong.h.

It shouldn't take too much to sort out. I mean the function that is
causing all the problems is only 20 lines of code and all pretty
basic.
}}}

Update from Bill Hart: There will be a FLINT 1.0.11 in a couple hours (i.e. July 9th, 2008)

== menas: x86_64-Linux-suse (status: 10/10) ==

UPDATE: trac #3628 -- http://trac.sagemath.org/sage_trac/ticket/3628
completely resolves this with no special spkg needed.

-----------------------------------------------

With gcc-4.2.1 and reverting to the old version of clisp all tests pass for sage-4.3.1.rc0:
{{{
sage -i clisp-2.41.p14.spkg
sage -f maxima-5.13.0.p2.spkg
}}}

Without reverting clisp, maxima hangs on certain integrals:
{{{
integrate(1/(x^3 *(a+b*x)^(1/3)), x);
}}}

I think reverting clisp will be ok for this architecture and for this release since the only reason for the new version was build support on more architectures.

Fix so that new clisp will at least build without not finding readline:
http://trac.sagemath.org/sage_trac/ticket/3628

=== Pentium4: Another "relevant" machine (status: 9/10) ===

 * (done) A bug in FLINT 1.011. See http://trac.sagemath.org/sage_trac/ticket/3627
 * doctests fail for:
{{{
        sage -t devel/sage/sage/dsage/tests/testdoc.py
        sage -t devel/sage/sage/server/simple/twist.py
}}}
These both involve network services. The testdoc failure is a pure timeout issue with a.wait(30),
so safe to ignore -- everything else in that file passes fine. I think the twist.py issue also
involves some sort of timeout. I am so tempted to redo the doctests for testdoc and twist or declare
them undoctestable... but that is for later.

Getting Sage to build and pass all tests on Skynet

It is very important to read

/usr/local/README.background_jobs

on the skynet machines, otherwise your builds will take a long time due to long-running CPU intensive tasks. That README file tells you how to stop those CPU intensive tasks.

Current tarballs are here:

http://sage.math.washington.edu/home/release/

Current versions of Sage should build without problem on the skynet machines cicero, cleo, eno, flavius, fulvia, iras, lena, mark, mark2, sextus and taurus.

Here is information about the skynet machines. For the linux boxes, this was obtained using the script at http://trac.sagemath.org/sage_trac/ticket/8048. For the Solaris 10 machines (fulvia, mark and mark2), it was obtained using the commands listed in the description.

Cicero


basic info

uname -a: Linux cicero 2.6.32.12-115.fc12.i686.PAE #1 SMP Fri Apr 30 20:14:08 UTC 2010 i686 i686 i386 GNU/Linux


OS/system info

/etc/*-release: not found! (This is generally not a problem.)
/etc/issue: Fedora release 12 (Constantine)'\r'Kernel \r on an \m (\l)'\r''\r'
version: Linux version 2.6.32.12-115.fc12.i686.PAE ([email protected]) (gcc version 4.4.3 20100127 (Red Hat 4.4.3-4) (GCC) ) #1 SMP Fri Apr 30 20:14:08 UTC 2010
OS bitlength: 32-bit (may not reflect hardware capabilities)


CPU info

model name: Intel(R) Pentium(R) 4 CPU 2.66GHz
CPU Count: 1
cores per cpu: either "1" or not directly available from /proc/cpuinfo
total number of threads: 1
64-bit capable: either "no" or not directly available from /proc/cpuinfo


memory info

MemTotal:        1025144 kB
MemFree:          436416 kB
SwapCached:         2944 kB
SwapTotal:       2064376 kB
SwapFree:        2021352 kB


misc info

gcc (GCC) 4.5.0

Cleo


basic info

uname -a: Linux cleo 2.6.18-128.1.1.el5 #1 SMP Mon Jan 26 13:57:09 EST 2009 ia64 ia64 ia64 GNU/Linux


OS/system info

/etc/*-release: not found! (This is generally not a problem.)
/etc/issue: Red Hat Enterprise Linux Server release 5.3 (Tikanga)'\r'Kernel \r on an \m'\r''\r'
version: Linux version 2.6.18-128.1.1.el5 ([email protected]) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-44)) #1 SMP Mon Jan 26 13:57:09 EST 2009
OS bitlength: 64-bit


CPU info

vendor: GenuineIntel
family: Itanium 2
arch: IA-64
CPU Count: 2
cores per cpu: 2
total number of threads: 4
64-bit capable: yes (IA-64)


memory info

MemTotal:      4061952 kB
MemFree:       1663840 kB
SwapCached:          0 kB
SwapTotal:     8388576 kB
SwapFree:      8388224 kB


misc info

gcc (GCC) 4.5.0

Eno


basic info

uname -a: Linux eno 2.6.32.12-115.fc12.x86_64 #1 SMP Fri Apr 30 19:46:25 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux


OS/system info

/etc/*-release: not found! (This is generally not a problem.)
/etc/issue: Fedora release 12 (Constantine)'\r'Kernel \r on an \m (\l)'\r''\r'
version: Linux version 2.6.32.12-115.fc12.x86_64 ([email protected]) (gcc version 4.4.3 20100127 (Red Hat 4.4.3-4) (GCC) ) #1 SMP Fri Apr 30 19:46:25 UTC 2010
OS bitlength: 64-bit


CPU info

model name: Intel(R) Xeon(R) CPU E5345 @ 2.33GHz
CPU Count: 2
cores per cpu: 4
total number of threads: 8
64-bit capable: yes (long-mode)


memory info

MemTotal:       16467944 kB
MemFree:         2018052 kB
SwapCached:        25784 kB
SwapTotal:      18579448 kB
SwapFree:       18534260 kB


misc info

gcc (GCC) 4.5.0

Flavius


basic info

uname -a: Linux flavius 2.6.32.12-115.fc12.x86_64 #1 SMP Fri Apr 30 19:46:25 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux


OS/system info

/etc/*-release: not found! (This is generally not a problem.)
/etc/issue: Fedora release 12 (Constantine)'\r'Kernel \r on an \m (\l)'\r''\r'
version: Linux version 2.6.32.12-115.fc12.x86_64 ([email protected]) (gcc version 4.4.3 20100127 (Red Hat 4.4.3-4) (GCC) ) #1 SMP Fri Apr 30 19:46:25 UTC 2010
OS bitlength: 64-bit


CPU info

model name: AMD Opteron(tm) Processor 248
CPU Count: either "1" or not directly available from /proc/cpuinfo
cores per cpu: either "1" or not directly available from /proc/cpuinfo
total number of threads: 2
64-bit capable: yes (long-mode)


memory info

MemTotal:        8778376 kB
MemFree:         1348220 kB
SwapCached:          100 kB
SwapTotal:       2031608 kB
SwapFree:        2030804 kB


misc info

gcc (GCC) 4.5.0

Fulvia

uname -a: SunOS fulvia 5.10 Generic_127128-11 i86pc i386 i86pc
cat /etc/release: Solaris 10 5/08 s10x_u5wos_10 X86
CPU count: 1 physical CPU (according to /usr/sbin/psrinfo -p)
4 threads (?) (according to /usr/sbin/psrinfo)
/usr/sbin/psrinfo -v: The i386 processor operates at 2400 MHz, and has an i387 compatible floating point processor.
/usr/sbin/prtconf | grep Memory: Memory size: 8126 Megabytes

To build Sage on fulvia, set the following variables:

export SAGE_PORT='yes'
export PATH=/home/palmieri/fulvia/bin:/usr/local/gcc-4.5.1/x86_64-SunOS-core2-sun-ld/bin:$PATH
export LD_LIBRARY_PATH="/usr/local/gcc-4.5.1/x86_64-SunOS-core2-sun-ld/lib/amd64:/usr/local/gcc-4.5.1/x86_64-SunOS-core2-sun-ld/lib"
export SAGE_FORTRAN="/usr/local/gcc-4.5.1/x86_64-SunOS-core2-sun-ld/bin/gfortran"
export SAGE_FORTRAN_LIB="/usr/local/gcc-4.5.1/x86_64-SunOS-core2-sun-ld/lib/libgfortran.so"

(The PATH includes /home/palmieri/fulvia/bin to make sure that GNU tar is present and first in the path.) You might also want to do

export MAKE='make -j2'  (or 'make -j3' or 'make -j4'?)
export SAGE_PARALLEL_SPKG_BUILD=yes

If you want to try a 64-bit build, then in addition to the above, set

export SAGE64='yes'
export SAGE_FORTRAN_LIB="/usr/local/gcc-4.5.1/x86_64-SunOS-core2-sun-ld/lib/amd64/libgfortran.so"

and continue as above. (The second setting replaces the earlier 32-bit setting.) As of this writing, the build will certainly fail when building R. You can bypass this by touching the file SAGE_ROOT/spkg/installed/r-2.10.1.p2 and then restarting the build. (This issue is being tracked at http://trac.sagemath.org/sage_trac/ticket/9040.) However, whilst it's possible to create a 64-bit version of Sage, it will fail to run properly, and will almost certainly crash either at startup, or whenever one tries to do something non-trivial. Some, and possibly all of the problems are caused by libraries having text relocations. These include

Iras


basic info

uname -a: Linux iras 2.6.16.46-0.12-default #1 SMP Thu May 17 14:00:09 UTC 2007 ia64 ia64 ia64 GNU/Linux


OS/system info

/etc/*-release: LSB_VERSION="core-2.0-noarch:core-3.0-noarch:core-2.0-ia64:core-3.0-ia64"
/etc/issue: '\r'Welcome to SUSE Linux Enterprise Server 10 SP1 (ia64) - Kernel \r (\l).'\r''\r''\r'
version: Linux version 2.6.16.46-0.12-default (geeko@buildhost) (gcc version 4.1.2 20070115 (prerelease) (SUSE Linux)) #1 SMP Thu May 17 14:00:09 UTC 2007
OS bitlength: 64-bit


CPU info

vendor: GenuineIntel
family: 32
arch: IA-64
CPU Count: 2
cores per cpu: 2
total number of threads: 4
64-bit capable: yes (IA-64)


memory info

MemTotal:      3998256 kB
MemFree:       1549984 kB
SwapCached:          0 kB
SwapTotal:     2097120 kB
SwapFree:      2096592 kB


misc info

gcc (GCC) 4.5.0

Lena


basic info

uname -a: Linux lena 2.6.32.12-115.fc12.x86_64 #1 SMP Fri Apr 30 19:46:25 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux


OS/system info

/etc/*-release: not found! (This is generally not a problem.)
/etc/issue: Fedora release 12 (Constantine)'\r'Kernel \r on an \m (\l)'\r''\r'
version: Linux version 2.6.32.12-115.fc12.x86_64 ([email protected]) (gcc version 4.4.3 20100127 (Red Hat 4.4.3-4) (GCC) ) #1 SMP Fri Apr 30 19:46:25 UTC 2010
OS bitlength: 64-bit


CPU info

model name: AMD Phenom(tm) II X4 940 Processor
CPU Count: 1
cores per cpu: 4
total number of threads: 4
64-bit capable: yes (long-mode)


memory info

MemTotal:       16340044 kB
MemFree:         1629512 kB
SwapCached:            0 kB
SwapTotal:      18350072 kB
SwapFree:       18350072 kB


misc info

gcc (GCC) 4.5.0

Mark

uname -a: SunOS mark 5.10 Generic_127111-01 sun4u sparc SUNW,Sun-Blade-2500
cat /etc/release: Solaris 10 1/06 s10s_u1wos_19a SPARC
CPU count: 2 physical CPUs (according to /usr/sbin/psrinfo -p)
2 threads (according to /usr/sbin/psrinfo)
/usr/sbin/psrinfo -v: The sparcv9 processor operates at 1280 MHz, and has a sparcv9 floating point processor.
/usr/sbin/prtconf | grep Memory: Memory size: 4096 Megabytes

As of version 4.5.2.rc1, Sage should build on mark without trouble (although it takes a long time). For this to work, you need to set the following environment variables:

export PATH=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/bin:$PATH

export LD_LIBRARY_PATH=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/lib:/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/lib/sparcv9:/usr/local/flex-2.5.35/sparc-SunOS-ultrasparc3-gcc-4.4.3/lib

export SAGE_FORTRAN=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/bin/gfortran

export SAGE_FORTRAN_LIB=/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/lib/libgfortran.so

If you want to try a 64-bit build, then in addition to the above, set

export SAGE64='yes'
export SAGE_FORTRAN_LIB="/usr/local/gcc-4.5.1/sparc-SunOS-ultrasparc3-sun-as-ld/lib/sparcv9/libgfortran.so"

and continue as above. (The second setting replaces the earlier 32-bit setting.) As of this writing (13th September 2010). it is possible to build a 64-bit version of Sage on SPARC systems. which is able to do some computations, but the resulting build is very unstable. The instability is at leasat in part due to the problems described above for 'fulvia', in that some of the libraries have text relocations.

Mark2

same as "mark"

Sextus


basic info

uname -a: Linux sextus 2.6.32.12-115.fc12.x86_64 #1 SMP Fri Apr 30 19:46:25 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux


OS/system info

/etc/*-release: not found! (This is generally not a problem.)
/etc/issue: Fedora release 12 (Constantine)'\r'Kernel \r on an \m (\l)'\r''\r'
version: Linux version 2.6.32.12-115.fc12.x86_64 ([email protected]) (gcc version 4.4.3 20100127 (Red Hat 4.4.3-4) (GCC) ) #1 SMP Fri Apr 30 19:46:25 UTC 2010
OS bitlength: 64-bit


CPU info

model name: Intel(R) Xeon(TM) CPU 3.60GHz
CPU Count: 1
cores per cpu: 1
total number of threads: 2
64-bit capable: yes (long-mode)


memory info

MemTotal:        1022612 kB
MemFree:          617012 kB
SwapCached:         3752 kB
SwapTotal:      16777208 kB
SwapFree:       16764052 kB


misc info

gcc (GCC) 4.5.0

Taurus


basic info

uname -a: Linux taurus 2.6.32.12-115.fc12.x86_64 #1 SMP Fri Apr 30 19:46:25 UTC 2010 x86_64 x86_64 x86_64 GNU/Linux


OS/system info

/etc/*-release: not found! (This is generally not a problem.)
/etc/issue: Fedora release 12 (Constantine)'\r'Kernel \r on an \m (\l)'\r''\r'
version: Linux version 2.6.32.12-115.fc12.x86_64 ([email protected]) (gcc version 4.4.3 20100127 (Red Hat 4.4.3-4) (GCC) ) #1 SMP Fri Apr 30 19:46:25 UTC 2010
OS bitlength: 64-bit


CPU info

model name: Intel(R) Xeon(R) CPU X5570 @ 2.93GHz
CPU Count: 2
cores per cpu: 4
total number of threads: 16
64-bit capable: yes (long-mode)


memory info

MemTotal:       12318660 kB
MemFree:         3820936 kB
SwapCached:        14372 kB
SwapTotal:      14417912 kB
SwapFree:       14377820 kB


misc info

gcc (GCC) 4.5.0

Some completely unreliable timings

Here is how long it took to build Sage 4.5.2.alpha1 (not including the documentation) on the various skynet machines. These were all built with SAGE_PARALLEL_SPKG_BUILD set to 'yes' and MAKE='make -jN', with N replaced by the number of cores on the machine in question.

cicero

332 minutes

cleo

186 minutes

eno

46 minutes

flavius

128 minutes

fulvia

This needs to be measured

iras

190 minutes

lena

53 minutes

mark

> 8 hours

sextus

195 minutes

taurus

36 minutes