NAG Library for SMP & multicore

Description

Unrivalled functionality, increased speed and heightened performance for shared memory parallelism

The NAG Library for SMP & multicore is the largest commercial numerical algorithm library developed to harness the huge performance gains from the shared memory parallelism of Symmetric Multi-Processors (SMP) and multicore processors.

Many of the algorithms, or routines, in the Library are specifically tuned to run significantly faster on multi-socket and multicore systems.

Please click here to view some performance examples.

Read a write up of the NAG Library for SMP & multicore by a NAG user at the University of Manchester, including benchmarks.

New functionality at Mark 22

Why should I use the NAG Library for SMP & multicore?

The NAG Library for SMP & multicore has proven scalability, speed and correctness making it easy to exploit the power of SMP and multicore systems without requiring the user to modify their code. It contains all the powerful, robust and flexible algorithms in the NAG Library but is specifically optimized for SMP and multicore systems, so by purchasing the multicore version of the NAG Library you're future proofing your numerical software investment as your hardware grows.

Specialized multicore functionality

  • Dense and Sparse Linear Algebra
  • Fast fourier transforms (FFTs)
  • Random Number Generators
  • Quadrature
  • Partial Differenial Equations
  • Interpolation
  • Curve and Surface Fitting
  • Correlation and Regression Analysis
  • Multivariate Methods
  • Time Series Analysis
  • Financial Option Pricing
  • Dense linear algebra (LAPACK)
  • Sparse iterative solvers
  • Sparse direct solvers (based on SuperLU)
  • Sparse iterative eigensolvers (based on ARPACK)

Other areas that benefit from tuned routines

  • Ordinary differential equations (ODEs)
  • Optimization
  • Multivariate statistics
  • Linear algebra

Replacing NAG Fortran Library routines with their multi-core equivalents

The NAG Library for SMP & multicore is based on, and includes, the full functionality of the NAG Fortran Library so the arguments list and routines names are identical. This provides an easy upgrade path because the same code can call a routine that performs the same function, in either the Fortran Library or the NAG Library for SMP & multicore. The distinction between the two is only made when the final code is linked to a library. Applications that reference a NAG Library routine can therefore take advantage of the performance improvement simply by recompiling and linking your code on a multicore system.

No specialist parallel programming knowledge is required to apply the multicore techniques to your code. The parallelism is carried out automatically and transparently in certain distinct regions within the routines.

Online Documentation

The software in the library is accompanied by first-class online documentation giving you the detailed information you need to carry out your work quickly and effectively.

Regular Updates

To ensure that we fulfil your existing and future requirements, the library is regularly updated with new and enhanced algorithms for use in evolving business areas.

Expert Support

If you subscribe to our dedicated Customer Support Service, not only will you automatically receive any update that is produced, but you will have direct access via the NAG Response Centre to our experts, who are there to assist you with your technical queries or difficulties.

Quality Assurance

The validity of each component is tested on each of the machine ranges for which the product is available. Only when an implementation satisfies our stringent accuracy standards is it released. As a result, you can rely on the proven accuracy and reliability of the components to give you the right answers.

Documentation

Supporting Documentation

This release of the NAG Library for SMP & multicore has identical functionality and subroutine interfaces as the latest release of the NAG Fortran Library. The NAG Library for SMP & multicore now uses the same documentation and version numbering scheme as the NAG Fortran Library.

The Library is organized into Chapters - each being documented with its own Introduction and Contents list followed by a comprehensive document for each function detailing its purpose, description, list of parameters and possible error exits. Example programs and results are also supplied. All examples are available on-line to facilitate their use as templates for the users' calling programs.

The NAG Library for SMP & multicore Manual

The complete NAG Library for SMP & multicore Manual, Mark 22 can be viewed on-line in the following formats:

  • XHTML+MathML: a version of the manual using XHTML and MathML;
  • PDF+HTML: a full PDF manual which can be browsed using HTML index files;
  • PDF: the same manual as above, consisting of many PDF files, may be browsed using PDF bookmarks and links rather than HTML index files;
  • Single file PDF: the manual as a single PDF file (68MB);
  • Windows html help: Windows html help version as a single file (13MB);
    (Note: due to windows security restrictions the help file may not be read directly from the internet. Save a copy to your local disk, and then read the local copy. Also depending on the Windows version installed you may need to unblock files copied from the internet before they may be used (right click on the help file and select properties then select the "unblock" button).

Advice on viewing and navigating the first three formats can be found in the Online Documentation help document. You are strongly advised to read this document if you wish to try the XHTML+MathML format.

The two single file formats are more compact than the formats using one file per routine, but of course are a larger download if you only need to view the documentation for a few routines. The total file size for the PDF+HTML tables of contents is 229MB. The total size for XHTML and examples files is 84MB.

The Library is organised into Chapters - each being documented with its own Introduction and Contents list followed by a comprehensive document for each function detailing its purpose, description, list of parameters and possible error exits. Example programs and results are also supplied. All examples are available on-line to facilitate their use as templates for the users' calling programs.

The NAG SMP Library Manual, Mark 21 and prior

The previous release of the NAG SMP Library Manual is still available: Mark 21 and Release 2.

Installer's Notes and Users' Notes

Support documentation for the installation and use of each implementation of the NAG Library for SMP & multicore is available.

Product Availability

Platform Compiler Release Product
X86-64 Windows64 Intel Fortran Mark 22 FSW6A22DC
x86-32 Windows Intel Fortran Mark 22 FSW3222DC
x86-64 Linux64 gfortran Mark 22 FSL6A22DF
X86-64 Linux64 Intel Fortran Mark 22 FSL6I22DC
IBM Power4+ AIX64 XLF v 13.1.0 Mark 22 FSAI622DA
Fujitsu HX600 Fujitsu Fortran Mark 22 FSFL622DA
IBM Power4+ AIX XLF v 9.1 Mark 21 FSAI321DA
IBM Power4+ AIX64 XLF v 9.1 Mark 21 FSAI621DA
Itanium Linux64 Intel Fortran Mark 21 FSL6421DC
x86-64 Linux64 PGI f90 v6.1 Mark 21 FSL6A21DP
x86-64 Solaris Sun f95 v8.2 Mark 21 FSSA621DC
Sun Solaris 64 Sun f95 v8.0 Mark 21 FSSO621DC
Sun SPARC Solaris Sun f95 v8.0 Mark 21 FSSOL21DC
x86-32 Linux Intel Fortran Mark 20 FSLUX20DB
Hitachi SR8000 HI-UX/MPP Mark 20 FSHI820DA
HP PA-RISC 2.0 HP F90v2.4 Mark 20 FSHP820DA