#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.