The ACTS Collection: Robust and High Performance Libraries for Computational Sciences

Short Course Organizer:

Tony Drummond, Ph. D.
Lawrence Berkeley National Laboratory


February 27, 2004
SIAM Associated Conference: Parallel Processing 2004


This short course introduces state-of-the-art computational tools currently used worldwide in science and engineering. Such tools for addressing more complex physical and societal phenomena, along with the growth of computing resources, is driving the continuous growth of the gallery of computational sciences applications. This community includes scientists and designers and developers of high-end technology who require computerized modeling solutions. Computational science has also branched out into new fields realizing the need for efficient, robust, reusable, and portable software libraries providing implementations of numerical algorithms to solve core problems in traditional and emerging fields. We will focus on the use, implementations and applications of these libraries.

Lecturers (listed alphabetically):

Tony Drummond, Ph.D., Lawrence Berkeley National Laboratory
A researcher at LBNL. He is co-PI for the ACTS project. His research interests include the development and study of iterative techniques for the solution of large systems of equations, and high performance applications. He has co-organized several workshops on ACTS and has lectured on ACTS at several major national and international venues.

Sherry Li, Ph.D, Lawrence Berkeley National Laboratory
She is a researcher at LBNL and the UC Berkeley. She is known for her work on sparse matrix computations. She is the principal author of SuperLU, a parallel sparse direct linear equation solver. She has experience working with computational scientists, including the development teams of other ACTS tools.

Osni Marques, Ph.D., Lawrence Berkeley National Laboratory
A researcher at LBNL and the UC Berkeley Computer Sciences Department. He is the PI for the ACTS project. Osni’s research interests include the study, implementation and testing of algorithms for the solution of problems in numerical linear algebra, and high-end scientific computing and has co-organized and presented several ACTS tutorials.

Course Description

The ACTS Collection is a set of software tools that were developed mostly at US Department of Energy’s laboratories and in some cases in collaboration with other institutions. These tools make it easier for programmers to write high performance scientific applications for parallel computers and have been successfully used by many scientists to address their computational needs. The ACTS Collection actively promotes high performance algorithms and programming techniques, and has provided a framework for educating users of the HPC technology, and we are eagerly working to reach out other areas in computational sciences. For more information visit

This short course will briefly present background material that will help the audience understand better the concepts and effective use of the tools. Following, we will present introductory tutorials with detail examples and applications of the following tools:

• Tools for the solution of systems of equations: SuperLU and ScaLAPACK. Here we will cover the basic numerical techniques and functionalities addressed by these tools. Participants will learn how to select parameters and numerical algorithms based on their computational problem.
• Tools for numerical library tuning, PHiPAC and ATLAS, as well as performance monitoring TAU. We will present a brief introduction to the use of PHiPAC and ATLAS, as well as understanding of their output reports. We will also instrument different examples to illustrate the many uses of the TAU library. Some of these examples will involve the use of other tools present in the ACTS collection.
• PyACTS, a Python based interface to use one or several tools in the ACTS collection.

Lastly, we will briefly introduce the functionality of other tools present in the collection and that will not be covered in great detail in this short course. Examples of these other tools are: TAO, OPT++, PETSc, HYPRE, SUNDIALS, OVERTURE, CUMULVS and Global Arrays. This short course is organized in a way that is complementary to the 8-hour short course on “Algorithms and Software for Scalable Solution of PDEs”, organized by Prof. David Keyes, were tools like PETSc, HYPRE, SUNDIAL and TAO will be covered in more detailed.

Course Objectives

Promote the use of reliable software tools that scale in high performance computing systems. In addition, these tools have been ported to many state-of-the-art computational systems. Thus, they offer their users a transparent migration to a new system. In addition, they maintain or improve high scalability and software reliability levels without the users paying the high price of tuning their codes to a particular architecture. This course is intended as an introduction to the use and the functionality available in the ACTS Collection.

Level of the Material

The tutorial starts by introducing general concepts and notation used in these software libraries, followed by a walk through their functionality. We will present examples of their use with a gallery of applications benefiting from these techniques. The content level of the proposed tutorial will be 30% beginner, 50% intermediate and 20% advanced.

Target Audience

The target audience is scientists, engineers and scientific software support personnel who are developing new, porting existing, or maintaining numerical software for high-performance computing.

Recommended Background

Attendees most have a basic knowledge of parallel computing and numerical methods. Moderate knowledge to expertise on the domain of the scientific computing application or area where the computational problem arises.

Course Outline

The following is the proposed outline and distribution of the short course on the ACTS Collection. To the benefit of the course participants, this outline will be updated with new materials and topics as new developments in the ACTS Collection become available. However, the time limit, 4 hours, and main scope of the course will be preserved.

I) Introduction [40 minutes]
a) The ACTS Collection Project

b) Brief Introduction to the functionality available in the ACTS Collection
b.1) Numerical Tools: Hypre, Opt++, PETSc, ScaLAPACK, SupreLU, TAO, and Trilinos
b.2) Code Development: Global Arrays and Overture

b.3) Run time support: CUMULVS, Globus, PAWS, and TAU

b.4) Library Development: ATLAS and PHiPAC
b.5) Tool Interoperability
c) Scientific accomplishments and example applications.

II) Introduction to ScaLAPACK [50 minutes]
a) Design and implementation
b) Available functionality
c) Examples and applications

III) Introduction to SuperLU [50 minutes]

a) Design and implementation
b) Available functionality
c) Examples and applications

IV) Brief Introduction to OPT++ and TAO [30 minutes]

a) Design and implementation
b) Available functionality
c) Examples and applications

V) A Python based interface to the ACTS Collection: PyACTS [30 minutes]

a) Available functionality and intended use
b) Examples

VI) Code Profiling for Performance Analysis and Library Optimization [40 minutes]

a) The TAU Toolkit
a.1) Design and implementation
a.2) Available functionality
a.3) Examples and applications

Created: 7/29/03
Modified: 8/1/03