25314
Comment:
|
13231
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
Cliquer http://trac.sagemath.org/sage_trac/ticket/9833 & http://trac.sagemath.org/sage_trac/ticket/9871
Maxima http://trac.sagemath.org/sage_trac/ticket/9099 (almost certainly caused by ECL's text relocations).
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 |