ATLAS

From HP-SEE Wiki

(Difference between revisions)
Jump to: navigation, search
(Recommendations for Configuration and Usage)
 
(One intermediate revision not shown)
Line 58: Line 58:
== Recommendations for Configuration and Usage ==
== Recommendations for Configuration and Usage ==
 +
Location of the libs
-
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.
+
This differs. On a PC they are located at /usr/lib64/atlas  The user should find the  
 +
corresponding location on her machine. We will refer to this directory as ATLAS-HOME.
-
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:
+
Using an ATLAS with fortran compiler
-
* Common configuration settings of execution environment
+
In case one wish to include an ATLAS BLAS routine in her main program the general approach is
-
* Filesystem path or local access string
+
f90 myprog.f -L$ATLAS-HOME/lib -lblas -o myprog
-
* 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
+
Replace ATLAS-HOME with corresponding location of atlas libraries on your machine.
-
* 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
+
As there may be more than one blas/lapack packages installed on the system (for example,
-
* Key installation or configuration settings that should be set to a common value, or locally tweaked by local site admins
+
lapack from the Netlib or from Intel-MKL) besides the ones from ATLAS, the user may
-
* Conventions for application or job bound installation and usage of the resource
+
check the library locations first and link correspondingly if wishes to use them.

Latest revision as of 07:00, 19 April 2012

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

Location of the libs

This differs. On a PC they are located at /usr/lib64/atlas The user should find the corresponding location on her machine. We will refer to this directory as ATLAS-HOME.

Using an ATLAS with fortran compiler

In case one wish to include an ATLAS BLAS routine in her main program the general approach is

f90 myprog.f -L$ATLAS-HOME/lib -lblas -o myprog

Replace ATLAS-HOME with corresponding location of atlas libraries on your machine.

As there may be more than one blas/lapack packages installed on the system (for example, lapack from the Netlib or from Intel-MKL) besides the ones from ATLAS, the user may check the library locations first and link correspondingly if wishes to use them.

Personal tools