#10508: Update ATLAS to version 3.9.x
---------------------------+------------------------------------------------
   Reporter:  vbraun       |          Owner:  tbd         
       Type:  enhancement  |         Status:  needs_work  
   Priority:  major        |      Milestone:  sage-5.0    
  Component:  packages     |       Keywords:  ATLAS       
Work_issues:               |       Upstream:  N/A         
   Reviewer:               |         Author:  Volker Braun
     Merged:               |   Dependencies:              
---------------------------+------------------------------------------------
Changes (by newvalueoldvalue):

  * status:  positive_review => needs_work
  * milestone:  sage-duplicate/invalid/wontfix => sage-5.0
  * author:  => Volker Braun


Old description:

> Update to the developer release atlas-3.9.32 according to advice of Clint
> Whaley. The new atlas release now builds netlib lapack itself, so the
> lapack tarball is now included in `/patches`. The lapack spkg is no
> longer needed and will be removed.
>
> I rewrote the ATLAS spkg-install (see also #10226) to
>   * python only without relying on other script languages
>   * allow customization of architectural defaults via the new
> `SAGE_ATLAS_ARCH` environment variable.
>   * still build a reasonable library if the automatic tuning process
> fails to find accurate timings.
>   * `SAGE_ATLAS_LIB=path` now searches in `path/libatlas.so` instead of
> `path/lib/libatlas.so` so it works for people with atlas in `/lib64`,
> too.
>   * Threading is now enabled by default. Whats the point of trying to
> squeeze more performance out of modern processors if you run on one core
> only?
>
> By default, ATLAS will now try twice to get timings, if that fails build
> with `SAGE_ATLAS_ARCH=fast`, and if that fails with
> `SAGE_ATLAS_ARCH=base`.
>
> From the new `SPKG.txt`:
> {{{
> The package can be configured via two environment variables:
>
>  * SAGE_ATLAS_LIB=path
>    If this environment variable is set, path/libatlas.so is used
>    and ATLAS is not compiled.
>
>  * SAGE_ATLAS_ARCH=arch[,isaext1][,isaext2]...[,isaextN]
>    The given architectural default and instruction set extensions are
>    used instead of the empirical tuning. Available architectures are
>
>      POWER3, POWER4, POWER5, PPCG4, PPCG5, POWER6, POWER7, P5, P5MMX,
>      PPRO, PII, PIII, PM, CoreSolo, CoreDuo, Core2Solo, Core2, Corei7,
>      P4, P4E, Efficeon, K7, HAMMER, AMD64K10h, UNKNOWNx86, IA64Itan,
>      IA64Itan2, USI, USII, USIII, USIV, UST2, UnknownUS, MIPSR1xK,
>      MIPSICE9
>
>    and instruction set extensions are
>
>      VSX, AltiVec, SSE3, SSE2, SSE1, 3DNow
>
>    In addition, you can also set
>
>     - SAGE_ATLAS_ARCH=fast picks defaults for a modern (2-3 year old)
>       CPU of your processor line, and
>
>     - SAGE_ATLAS_ARCH=base picks defaults that should work for a ~10
>       year old CPU.
>
>    For example,
>
>      SAGE_ATLAS_ARCH=Corei7,SSE3,SSE2,SSE1
>
>    would be appropriate for a Core i7 CPU.
> }}}
>
> The current spkg version is at
>
> http://www.stp.dias.ie/~vbraun/Sage/spkg/atlas-3.9.32.spkg

New description:

 Update to the developer release atlas-3.9.x according to advice of Clint
 Whaley. The new atlas release now builds netlib lapack itself, so the
 lapack tarball is now included in `/patches`. The lapack spkg is no longer
 needed and will be removed.

 I rewrote the ATLAS spkg-install (see also #10226) to
   * python only without relying on other script languages
   * allow customization of architectural defaults via the new
 `SAGE_ATLAS_ARCH` environment variable.
   * still build a reasonable library if the automatic tuning process fails
 to find accurate timings.
   * `SAGE_ATLAS_LIB=path` now searches in `path/libatlas.so` instead of
 `path/lib/libatlas.so` so it works for people with atlas in `/lib64`, too.
   * Threading is now enabled by default. Whats the point of trying to
 squeeze more performance out of modern processors if you run on one core
 only?

 By default, ATLAS will now try twice to get timings, if that fails build
 with `SAGE_ATLAS_ARCH=fast`, and if that fails with
 `SAGE_ATLAS_ARCH=base`.

 From the new `SPKG.txt`:
 {{{
 The package can be configured via two environment variables:

  * SAGE_ATLAS_LIB=path
    If this environment variable is set, path/libatlas.so is used
    and ATLAS is not compiled.

  * SAGE_ATLAS_ARCH=arch[,isaext1][,isaext2]...[,isaextN]
    The given architectural default and instruction set extensions are
    used instead of the empirical tuning. Available architectures are

      POWER3, POWER4, POWER5, PPCG4, PPCG5, POWER6, POWER7, P5, P5MMX,
      PPRO, PII, PIII, PM, CoreSolo, CoreDuo, Core2Solo, Core2, Corei7,
      P4, P4E, Efficeon, K7, HAMMER, AMD64K10h, UNKNOWNx86, IA64Itan,
      IA64Itan2, USI, USII, USIII, USIV, UST2, UnknownUS, MIPSR1xK,
      MIPSICE9

    and instruction set extensions are

      VSX, AltiVec, SSE3, SSE2, SSE1, 3DNow

    In addition, you can also set

     - SAGE_ATLAS_ARCH=fast picks defaults for a modern (2-3 year old)
       CPU of your processor line, and

     - SAGE_ATLAS_ARCH=base picks defaults that should work for a ~10
       year old CPU.

    For example,

      SAGE_ATLAS_ARCH=Corei7,SSE3,SSE2,SSE1

    would be appropriate for a Core i7 CPU.
 }}}

 The current spkg version is at

 http://www.stp.dias.ie/~vbraun/Sage/spkg/atlas-3.9.32.spkg

--

Comment:

 Seems like #12011 isn't a duplicate after all...

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10508#comment:35>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to