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

Silius

> date
Fri Aug 19 19:32:36 GMT 2011
> uname -a
Linux silius 2.6.32.43-0.4-ppc64 #1 SMP 2011-07-14 14:47:44 +0200 ppc64 ppc64 ppc64 GNU/Linux
> cat /etc/issue
Welcome to SUSE Linux Enterprise Server 11 SP1  (ppc64) - Kernel \r (\l).
> cat /proc/cpuinfo
processor       : 0
cpu             : POWER7 (architected), altivec supported
clock           : 3000.000000MHz
revision        : 2.1 (pvr 003f 0201)

processor       : 4
cpu             : POWER7 (architected), altivec supported
clock           : 3000.000000MHz
revision        : 2.1 (pvr 003f 0201)
...
processor       : 60
cpu             : POWER7 (architected), altivec supported
clock           : 3000.000000MHz
revision        : 2.1 (pvr 003f 0201)

timebase        : 512000000
platform        : pSeries
model           : IBM,8233-E8B
machine         : CHRP IBM,8233-E8B


> free
             total       used       free     shared    buffers     cached
Mem:      32211328   22843008    9368320          0     369280   17518592
-/+ buffers/cache:    4955136   27256192
Swap:      2104320          0    2104320

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