Differences between revisions 26 and 85 (spanning 59 versions)
Revision 26 as of 2008-07-16 03:37:50
Size: 4746
Comment: add 3.05 issues page
Revision 85 as of 2021-02-19 11:37:43
Size: 2958
Editor: dimpase
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
== The Solaris Port of Sage == == Running Sage on Sun's Solaris operating system. ==
Line 3: Line 3:
This page tracks the Solaris port of Sage. This page describes the current status of Sage on SPARC Solaris 11.4 (Feb 2021)
Line 5: Line 5:
== Goal ==
 * Get Sage compiling and running with recent Sun Forte Compiler on Solaris 10 and higher on x86/x86-64/sparc
Building of 9.3.beta7 works with a number of packages from the system, and a number of patches.
Line 8: Line 7:
== Status ==
 * mabshoff is currently working on a 32 bit build on Solaris 9/Sparc. It should run on Solaris 10 and non-Sparc CPUs supported by Solaris, i.e. x86 and x86-64. There are a few build fixes and package issues to work around. But due to some issues in the coercion code/libSingular many doctests that involve mv polynomials fail.
 * new psutil is needed (version 5.8.0 works)
 * sparsesuite needs a patch to work with gcc
 * openblas needs a patch https://github.com/xianyi/OpenBLAS/pull/3110/
 * giac needs patches for alloca, module_info, libintl linking (it doesn't look for libintl in non-standard location /opt/csw/lib)
 *
Line 11: Line 13:
== Short Term Plan == ----
Line 13: Line 15:
 * build Sage 3.1 with gcc 4.2 in 32 bit mode
 * switch over to Sun Forte's cc and CC and add support for 64 bit mode
----
Line 16: Line 17:
== Build Fixes to Integrate ==
Line 18: Line 18:
 * [:/solaris/sage-3.0.5:Sage 3.0.5 build issues and doctest failures]
 * When switching to the Sun Forte cc make sure to disable the use of {{{-fast}}} for GMP since it leads to test failures with MPFR for example.
This page, which was primarily maintained by David Kirkby, describes the current status of Sage on the various versions of Solaris and on various hardware (SPARC and x86).
Line 21: Line 20:
== Open Issues ==
 * clisp fails to compile, but clisp 2.44.1 builds fine with gcc 3.4.6. It segfaults during "make check". This has been reported to clisp-devel and we are debugging the problem [clips will be replaced by ecl in the future. If clisp cannot be fixed and Maxima will not be ported to ecl this will likely mean that the replacement of Maxima will be accelerated]
 * libfplll's Solaris workaround for round() is wrong for negative numbers. This was pointed out by Paul Zimmermann. The other two patches have been merged upstream and will be in the next libfplll release [The workaround is only needed for Solaris 9. Since our goal is now Solaris 10 and above fixing this is not a high priority]
 * Symmetrica seems to segfault on Sparc [this might be related to coercion, so until proven Symmetrica is innocent. We have requested the alleged Symmetrica test suite to test this out, but nothing so far]
 * givaro-3.2.10.rc3.spkg includes fenv.h in src/src/kernel/zpz/givgfq.inl - this is an issue on Solaris 9, but works fine on Solaris 10
 * log2 isn't defined in math.h, but sun's math.h
As of 10th March 2011, the situation with Sage on Solaris is:
Line 28: Line 22:
== History of efforts == === SPARC ===
 * Sage built as a 32-bit application on Solaris 10. Works, and passes all tests.
 * Sage built as a 64-bit application on Solaris 10. Builds fully, but '''very''' unstable, and not really usable yet.
Line 30: Line 26:
 * 3.0.1-3.0.5: misc fixes
 * 3.0:
   * fix lcalc build on Solaris
 * 2.11:
  * add Solaris 9 specific stdint.h workaround since Solaris 9 only supports a draft standard of C99. Solaris 10 has no such problem [#2660 - 32 bits only so far]
 * 2.10.4:
  * no significant changes
 * 2.10.3
  * start of integrating 64 bit build support - this will take a while to get in
 * 2.10.2:
  * same as 2.10.1 since the emphasis wasn't on this port this release.
 * 2.10.1:
  * drop in of stdint.h in $SAGE_LOCAL/include makes everything compile up to libfplll
  * fix libfplll build issue [spkg at 1957, merged in 2.10.1.rc2]
  * known issue: ATLAS screws up the combined Lapack+ATLAS dynamic library build. Maybe this is ld related?
  * because of the above issue numpy cannot be imported properly. Creating an {{{liblapack.so}}} manually from {{{liblapack.a}}} and rebuilding numpy makes numpy work
  * rpy doesn't build: {{{error: conflicting types for 'uintptr_t'}}} - probable cause is 32 bit vs 64 bit issues
  * fix rubiks build issue [spkg at 1959, merged in 2.10.1.rc2]
  * apply sage-lib build fixes from #1328 and #1329. Make sure to copy solaris_fix.h also into sage/rings [merged in 2.10.1.rc3]
 * 2.8.15:
  * The release has many Solaris specific fixes, but we need to fix #1325 before we will have something that can be used as a beta build.
 * 2.8.14:
  * new bug in matrix code that provides a special class for multivariate polynomials as entries causes segfaults all over the map.
  * int_fast64_t needs to be 4 bytes large, otherwise Sage throws an exception at startup. This needs fixing and actually causes doctest failures with the modp code
  * libfplll miscompiles, fix clear, but needs to be merged upstream
  * FLINT miscompiles, fixed upstream
  * lcalc miscompiles, fixes need to be integrated
  * clisp compiles, but segfaults. Solution: use 2.39 binary until issue is solved
  * cvxopt doesn't work (complex.h missing)
  * 2-3 patches are needed to sage.spkg - easy fixes, need to be merged upstream
  * failed doctest: number of partitions broken - maybe fpu precision issues
  * failed doctest: Schubert polynomial triggers error in symmetrica
 * 2.8.3:
  * worked reasonably well after workarounds, about 10-12 doctest failures
  * work arounds needed: clisp, lcalc
  * missing/failed spkgs: cvxopt
 * pre 2.8:
  * various people (David Kirkby) worked on this, but I am not sure if Sage ever passed 100% of doctests
Sage has been built on several Solaris 10 SPARC systems, ranging from old machines to current models and from the first release of Solaris 10 (03/2005 edition) to the latest (05/2009 edition). So Sage should build on your Solaris 10 SPARC machine. Specific hardware/software combinations on which Sage has been built are
Line 69: Line 28:
== ToDo ==  * Sun T5240 !CoolThreads server with:
   * 2 x 1167 MHz T2+ Coolthreads processors
   * 16 cores
   * 128 threads
   * 32 GB RAM
   * Solaris 10 update 6 (05/2009 edition).
 * A Sun Blade 2000 workstation with:
   * 2 x 1200 MHz UltraSPARC III+ processors.
   * 8 GB RAM
   * Solaris 10 update 7 (05/2009 release) which at the time of writing (December 2009) is the latest release of Solaris 10.
 * Sun Netra T1 server with:
   * 1 x 500 MHz UltraSPARC-IIe processor
   * 1536 MB RAM
   * Solaris 10 03/2005 (the very first Solaris 10 release).
 * A Sun Blade 1000 workstation with:
   * 2 x 900 MHz UltraSPARC III+ processors.
   * 2 GB RAM
   * Solaris 10 03/2005 (the very first Solaris 10 release).
Line 71: Line 47:
 * make doctests pass 100% :)
 * open track tickets for all known issue
 * make building toolchain automatic
 * find way to make Sage aware of the toolchain
Further details about running Sage on SPARC hardware can be found at http://wiki.sagemath.org/Solaris-on-SPARC

=== x86 ===
 * Sage built as a 32-bit application on Solaris 10 on x86 . Works, and passes all tests.
 * Sage built as a 32-bit application on Solaris 11 Express. Works and pases all tests.
 * Sage built as a 32-bit application on OpenSolaris 06/2009. Works, and passes all tests.
 * Sage built as a 64-bit application on OpenSolaris. Fails to build at all, since R, the statistics page (see http://www.r-project.org/) will not build with gcc.
 
Sage has been built on several x86 systems including.

 * A Sun Ultra 27 running with:
  * 3.33 GHz quad core Intel W3580 Xeon.
  * 12 GB RAM
  * OpenSolaris 06/2009
 * Solaris 11 Express on a Sony Vaio laptop with:
  * Intel Core2 duo 2.0 GHz
  * 2 GB RAM
 * Dell server - unknown configuration.

Running Sage on Sun's Solaris operating system.

This page describes the current status of Sage on SPARC Solaris 11.4 (Feb 2021)

Building of 9.3.beta7 works with a number of packages from the system, and a number of patches.

  • new psutil is needed (version 5.8.0 works)
  • sparsesuite needs a patch to work with gcc
  • openblas needs a patch https://github.com/xianyi/OpenBLAS/pull/3110/

  • giac needs patches for alloca, module_info, libintl linking (it doesn't look for libintl in non-standard location /opt/csw/lib)



This page, which was primarily maintained by David Kirkby, describes the current status of Sage on the various versions of Solaris and on various hardware (SPARC and x86).

As of 10th March 2011, the situation with Sage on Solaris is:

SPARC

  • Sage built as a 32-bit application on Solaris 10. Works, and passes all tests.
  • Sage built as a 64-bit application on Solaris 10. Builds fully, but very unstable, and not really usable yet.

Sage has been built on several Solaris 10 SPARC systems, ranging from old machines to current models and from the first release of Solaris 10 (03/2005 edition) to the latest (05/2009 edition). So Sage should build on your Solaris 10 SPARC machine. Specific hardware/software combinations on which Sage has been built are

  • Sun T5240 CoolThreads server with:

    • 2 x 1167 MHz T2+ Coolthreads processors
    • 16 cores
    • 128 threads
    • 32 GB RAM
    • Solaris 10 update 6 (05/2009 edition).
  • A Sun Blade 2000 workstation with:
    • 2 x 1200 MHz UltraSPARC III+ processors.
    • 8 GB RAM
    • Solaris 10 update 7 (05/2009 release) which at the time of writing (December 2009) is the latest release of Solaris 10.
  • Sun Netra T1 server with:
    • 1 x 500 MHz UltraSPARC-IIe processor
    • 1536 MB RAM
    • Solaris 10 03/2005 (the very first Solaris 10 release).
  • A Sun Blade 1000 workstation with:
    • 2 x 900 MHz UltraSPARC III+ processors.
    • 2 GB RAM
    • Solaris 10 03/2005 (the very first Solaris 10 release).

Further details about running Sage on SPARC hardware can be found at http://wiki.sagemath.org/Solaris-on-SPARC

x86

  • Sage built as a 32-bit application on Solaris 10 on x86 . Works, and passes all tests.
  • Sage built as a 32-bit application on Solaris 11 Express. Works and pases all tests.
  • Sage built as a 32-bit application on OpenSolaris 06/2009. Works, and passes all tests.

  • Sage built as a 64-bit application on OpenSolaris. Fails to build at all, since R, the statistics page (see http://www.r-project.org/) will not build with gcc.

Sage has been built on several x86 systems including.

  • A Sun Ultra 27 running with:
    • 3.33 GHz quad core Intel W3580 Xeon.
    • 12 GB RAM
    • OpenSolaris 06/2009

  • Solaris 11 Express on a Sony Vaio laptop with:
    • Intel Core2 duo 2.0 GHz
    • 2 GB RAM
  • Dell server - unknown configuration.