ATLAS

From HP-SEE Wiki

(Difference between revisions)
Jump to: navigation, search
(Created page with "__TOC__ * Web site: link * Described version: xx.xx * Licensing: e.g. LGPL 3, BSD... * User documentation: link * Download: link * Source code: link == Authors/Maintainers == *...")
Line 1: Line 1:
__TOC__
__TOC__
-
* Web site: link
+
* Web site: http://math-atlas.sourceforge.net
* Described version: xx.xx
* Described version: xx.xx
-
* Licensing: e.g. LGPL 3, BSD...
+
* Licensing: BSD-style free software license without the advertising clause
* User documentation: link
* User documentation: link
* Download: link
* Download: link
Line 12: Line 12:
== Summary ==
== Summary ==
-
One paragraph description of purpose, targer area, approach.
+
The ATLAS (Automatically Tuned Linear Algebra Software) project is an ongoing
 +
research effort focusing on applying empirical techniques in order to provide portable
 +
performance. At present, it provides C and Fortran77 interfaces to a portably efficient
 +
BLAS implementation, as well as a few routines from LAPACK.
 +
ATLAS is an instantiation of a paradigm in high performance library production and
 +
maintenance, called AEOS (Automated Empirical Optimization of Software). ATLAS
 +
produces a full BLAS (Basic Linear Algebra Subprograms) library as well as provides
 +
some optimized routines for LAPACK (Linear Algebra PACKage). Since LAPACK is an
 +
extremely comprehensive Fortran 77 package for solving the most commonly occurring
 +
problems in numerical linear algebra, the aim of ATLAS is not to provide a complete re-
 +
implementation of the same routines, but to provide a handful of highly optimized native
 +
routines. ATLAS uses advanced code optimization techniques and performs series of
 +
tests and benchmarks during compilation in order to decide on which variant of the
 +
same code is optimal for a given hardware architecture. For example, different orders
 +
and levels of loop unrolling are tested.
 +
For all supported operations, ATLAS achieves performance on par with machine-specific
 +
tuned libraries.
 +
The ATLAS software can be tuned for each particular hardware architecture, or one could
 +
use a pre-packaged (rpm, deb) version. The installation process can take several hours,
 +
but the gain in performance may justify that. In our use cases the ATLAS is a pre-
 +
requisite for installation of other software packages
== Features ==
== Features ==
Line 30: Line 50:
== Resource Centers ==
== Resource Centers ==
-
* RCs supporting it (with version number if not the same as above)
+
* BG, BG
 +
* HPCG, BG
 +
* NCIT-Cluster, RO
== Usage by Other Projects and Communities ==
== Usage by Other Projects and Communities ==

Revision as of 14:36, 20 July 2011

Contents


  • Web site: http://math-atlas.sourceforge.net
  • Described version: xx.xx
  • Licensing: BSD-style free software license without the advertising clause
  • User documentation: link
  • Download: link
  • Source code: link

Authors/Maintainers

  • Also origin, if the software comes from a specific project.

Summary

The ATLAS (Automatically Tuned Linear Algebra Software) project is an ongoing research effort focusing on applying empirical techniques in order to provide portable performance. At present, it provides C and Fortran77 interfaces to a portably efficient BLAS implementation, as well as a few routines from LAPACK. ATLAS is an instantiation of a paradigm in high performance library production and maintenance, called AEOS (Automated Empirical Optimization of Software). ATLAS produces a full BLAS (Basic Linear Algebra Subprograms) library as well as provides some optimized routines for LAPACK (Linear Algebra PACKage). Since LAPACK is an extremely comprehensive Fortran 77 package for solving the most commonly occurring problems in numerical linear algebra, the aim of ATLAS is not to provide a complete re- implementation of the same routines, but to provide a handful of highly optimized native routines. ATLAS uses advanced code optimization techniques and performs series of tests and benchmarks during compilation in order to decide on which variant of the same code is optimal for a given hardware architecture. For example, different orders and levels of loop unrolling are tested. For all supported operations, ATLAS achieves performance on par with machine-specific tuned libraries. The ATLAS software can be tuned for each particular hardware architecture, or one could use a pre-packaged (rpm, deb) version. The installation process can take several hours, but the gain in performance may justify that. In our use cases the ATLAS is a pre- requisite for installation of other software packages

Features

  • Listed features

Architectural/Functional Overview

  • high level design info, how it works, performance - may be a link, or several links

Usage Overview

  • If possible with small example - may be a link

Dependacies

  • list of all relevant dependencies on other libraries

HP-SEE Applications

  • Applications using it

Resource Centers

  • BG, BG
  • HPCG, BG
  • NCIT-Cluster, RO

Usage by Other Projects and Communities

  • If any

Recommendations for Configuration and Usage

Please describe here any common settings, configurations or conventions that would make the usage of this resource (library or tool) more interoperable or scalable across the HP-SEE resources. These recommendations should include anything that is related to the resource and is agreed upon by administrators and users, or across sites and applications. These recommendations should emerge from questions or discussions opened by site administrators or application developers, at any stage, including installation, development, usage, or adaptation for another HPC centre.

Provided descriptions should describe general or site specific aspects of resource installation, configuration and usage, or describe the guidelines or convention for deploying or using the resource within the local (user/site) or temporary environment (job). Examples are:

  • Common configuration settings of execution environment
  • Filesystem path or local access string
  • Environment variables to be set or used by applications
  • Options (e.g. additional modules) that are needed or required by applications and should be present
  • Minimum quantitative values (e.g. quotas) offered by the site
  • Location and format of some configuration or usage hint instructing applications on proper use of the resource or site specific policy
  • Key installation or configuration settings that should be set to a common value, or locally tweaked by local site admins
  • Conventions for application or job bound installation and usage of the resource
Personal tools