IBM ESSLPESSL - PowerPoint PPT Presentation

1 / 8
About This Presentation
Title:

IBM ESSLPESSL

Description:

Engineering and Scientific Subroutine Library (ESSL) BLAS. Matrix operations ... Collection of mathematical subroutines that provides over 400 high-performance ... – PowerPoint PPT presentation

Number of Views:36
Avg rating:3.0/5.0
Slides: 9
Provided by: npa5
Category:
Tags: esslpessl | ibm | blas

less

Transcript and Presenter's Notes

Title: IBM ESSLPESSL


1
IBM ESSL/PESSL
  • Bob Sinkovits
  • Scientific Computing Department
  • SDSC
  • All hands Meeting
  • February 24-28, 2001

2
Engineering and Scientific Subroutine Library
(ESSL)
  • Collection of mathematical subroutines that
    provides over 400 high-performance mathematical
    functions
  • BLAS
  • Matrix operations
  • Linear solvers (Axb)
  • Eigensystems
  • FFTs, convolutions, etc.
  • Sorting and searching
  • Numerical quadrature
  • Random number generation
  • Interpolation

3
Why use ESSL?
  • ESSL routines have been specifically tuned for
    IBM architecture and should be your first
    choice. Much faster than downloading and
    compiling LINPACK!One exception comes to mind
    I would personally use SPRNG (Scalable parallel
    random number generator) for random number
    generation http//sprng.cs.fsu.edu/

4
Using ESSL
  • Insert ESSL calls into your C or Fortran program
  • Link C or Fortran codes with -lessl
  • Special C considerations
  • Need the line include ltessl.hgt
  • Scalars args that are not modified passed by
    value
  • Arrays, modified scalars, function names passed
    by reference
  • ESSL routines expect multidimensional arrays to
    be stored in column-major (Fortran style) order

5
Using ESSL in threaded codes
  • Need to link with -lessl_r to get threadsafe
    libraries
  • Using threaded ESSL when binding threads to
    processors can yield some unexpected behavior.
    Master thread may try to spawn its own threads,
    all of which run on a single processor parallel
    region call essl_routine(a,b,c) !Bad performance
    parallel region

6
PESSL
  • PESSL parallel ESSL, IBMs numerical library
    for distributed memory parallel applications.
    Contains subset of ScaLAPACK
  • PBLAS (levels 2 and 3)
  • Linear solvers (Axb)
  • Eigensystems
  • FFTs
  • Random number generation
  • BLACS

7
Using PESSL
  • Insert PESSL calls into your C or Fortran program
  • Link C or Fortran codes with -lpessl
  • Special C considerations
  • Need the line include ltpessl.hgt
  • Scalars args that are not modified passed by
    value
  • Arrays, modified scalars, function names passed
    by reference
  • ESSL routines expect multidimensional arrays to
    be stored in column-major (Fortran style) order

8
Useful ESSL/PESSL links
  • ESSL documentationhttp//www.austin.ibm.com/resou
    rce/aix_resource/sp_books/essl/sessl/essl312/essl
    002.html
  • PESSL documentationhttp//www.austin.ibm.com/reso
    urce/aix_resource/sp_books/essl/pessl/pessl212/pe
    ssl002.html
Write a Comment
User Comments (0)
About PowerShow.com