NAG Fortran Library, Mark 19

FLSG619DAL - License Managed

Silicon Graphics (IRIX 6) Double Precision

Installer's Note



Contents


1. Introduction

This document is essential reading for whoever is responsible for the installation of the NAG Fortran Library Implementation specified in the title. The installer will be supplied with a printed copy of this document. Both this (doc/in.html) and the Users' Note (doc/un.html) are supplied on the distribution medium.

Whenever the NAG Fortran Library has been supplied in compiled form, that form is considered to be the standard library file. The use of all supplied software must be in accordance with the terms and conditions of the Software Licence signed by NAG and each site. Any request to use NAG software on a computer other than the one licensed must be referred to NAG (see Section 6).

2. Implementation Provided

2.1. Applicability

This implementation is a compiled, tested, ready-to-use version of the NAG Fortran Library that is considered suitable for operation on the computer systems detailed below:

hardware:         Silicon Graphics MIPS III or MIPS IV machine
operating system: IRIX 6.5 or compatible
Fortran compiler: SGI MIPSpro 7.3 Fortran 77 or 90

For information about implementations of the NAG Fortran Library for use on other computer systems please contact NAG.

2.2. Derivation

This implementation was produced at NAG Ltd., Oxford on the computing system detailed below:

hardware:         Silicon Graphics Origin 2000 (R10000)
operating system: IRIX 6.5
Fortran compiler: SGI MIPSpro 7.3 Fortran 77
compiler options: -n32 -mips3 (for MIPS III ISA / n32 ABI)
                  -n32 -mips4 (for MIPS  IV ISA / n32 ABI)
                  -64  -mips3 (for MIPS III ISA / n64 ABI)
                  -64  -mips4 (for MIPS  IV ISA / n64 ABI)

The entire NAG Fortran Library, Mark 19, was compiled with level 3 optimization (-O3), except for the following routines, which had to be compiled at lesser optimization levels:

c06fprt.f (-O2)    d01anyt.f (-O2)    d02nmst.f (-O2)    d02nmxt.f (-O2)
d05bdyt.f (-O2)    e04hbzt.f (-O2)    e04kdft.f (-O1)    e04lbrt.f (-O2)
f01axzt.f (-O2)    x03aayt.f (-O2)

The libraries have been tested using the Basic Linear Algebra Subprograms (BLAS) and linear algebra routines (LAPACK) provided by NAG (see the Chapter Introductions for F06, F07 and F08 in the NAG Fortran Library Manual). They have also been tested using the set of BLAS and LAPACK supplied by Silicon Graphics in the CHALLENGEcomplib libraries, complib.sgimath version 3.1 on Origin 2000 (R10000).

3. Distribution Medium

3.1. Recording Details

The implementation is distributed in tar format on CD-ROM, unless otherwise indicated on the medium and accompanying despatch note.

For further details, refer to other documentation supplied or contact NAG (see Section 6).

3.2. Contents

The following shows the directory/file organization of the materials as they will be installed.
                      |-- in.html
                      |-- un.html
                      |-- nag_fl_un.[3|z]
                      |-- essint
                      |-- summary
            |-- doc --|-- news
            |         |-- replaced
            |         |-- calls
            |         |-- called
            |         |-- blas_lapack_to_nag
            |         |-- nag_to_blas_lapack
flsg619da --|
            |-- lib[32|64] --|-- mips[3|4] --|-- *
            |
            |-- interface_blocks_lib32 --|-- *.mod
            |-- interface_blocks_lib64 --|-- *.mod
            |
            |              |-- source ---|-- ??????e.f
            |-- examples --|-- data -----|-- ??????e.d
            |              |-- results --|-- ??????e.r
            |
            |              |-- bin ------|-- * (directories of FLEXlm binaries 
            |              |                    for supported platforms)
            |-- license ---|
            |              |             |-- flexfaq ---|-- *.htm (FLEXlm FAQ)
            |              |-- htmlman --|                         
            |                            |-- flexuser --|-- *.htm (FLEXLM End 
            |                                                      User Manual)
            |
            |-- scripts ---|-- *

The library directories (lib32/mips3, lib32/mips4, lib64/mips3 and lib64/mips4) each contain the following files:

libnag.a      - archive library
libnag.so     - shareable library
libnag_csm.a  - archive library requiring complib.sgimath
libnag_csm.so - shareable library requiring complib.sgimath

3.3. File Sizes

The files require approximately the following disk space:
each archive library:     26.5-35.0 Mb
each shareable library:   16.2-19.3 Mb  
interface blocks:               6.0 Mb
example program material:       5.0 Mb
documentation files:            2.5 Mb
licensing materials:           15.7 Mb

4. Library Installation

4.1. Installation

To install all material use the Unix tar utility, e.g.

cd /opt
tar xvf /cdrom/fl19.tar
(assuming the CD-ROM has been mounted as /cdrom).

The installer should decide on which of the eight archive and the eight corresponding shareable libraries should be installed. To install all primary material (to be made available to users), use the Unix tar utility to read documentation, compiled libraries, interface blocks and examples, e.g.

cd /opt
tar xvf /cdrom/fl19.tar flsg619da/doc flsg619da/lib32/mips4 \
                        flsg619da/interface_blocks_lib32 \
                        flsg619da/examples flsg619da/scripts/nagexample
for the MIPS IV / n32 libraries.

It is advisable that the libraries are kept in the installed directory, /opt/flsg619da/, and appropriate symbolic links 'libnag.a', 'libnag.so', 'libnag_csm.a' and 'libnag_csm.so' made to them from the appropriate system library directories where the linker (ld) will find them, e.g.

ln -s /opt/flsg619da/lib32/mips4/libnag.a  /usr/lib32/mips4/libnag.a
ln -s /opt/flsg619da/lib32/mips4/libnag.so /usr/lib32/mips4/libnag.so
ln -s /opt/flsg619da/lib32/mips4/libnag_csm.a  /usr/lib32/mips4/libnag_csm.a
ln -s /opt/flsg619da/lib32/mips4/libnag_csm.so /usr/lib32/mips4/libnag_csm.so
for the MIPS IV / n32 libraries.

For the MIPS III / n32 libraries the appropriate directory is /usr/lib32/mips3; for the MIPS III and MIPS IV / n64 libraries the appropriate directories are /usr/lib64/mips3 and /usr/lib64/mips4 respectively.

The script nagexample refers to the local directory containing the example programs. The file should be copied to (for example) /usr/local/bin, modified to reflect the local installation, and its protection set to world execute.

The man page, which directs users to the HTML form of the Users' Note, is provided as an nroff source file and also as a packed, pre-formatted file for systems without the Documentor's Work Bench software option. The relevant file belongs in section 3 of man. It should be moved a directory in the man search path, e.g.

either

cd doc
mv nag_fl_un.3 /usr/local/man/man3
or
cd doc
mv nag_fl_un.z /usr/local/man/cat3

The NAG Fortran Library Interface Blocks define the type and arguments of each user callable NAG Fortran Library routine. These are not essential to calling the NAG Fortran Library from Fortran 90 programs. Their purpose is to allow the Fortran 90 compiler to check that NAG Fortran Library routines are called correctly.

The interface block files (interface_blocks_lib32/*.mod and interface_blocks_lib64/*.mod) are supplied in pre-compiled module form. They should be moved to a suitable location so that access is convenient, e.g.

mkdir /usr/local/lib/fl77_modules_lib32
mv interface_blocks_lib32/* /usr/local/lib/fl77_modules_lib32
 
mkdir /usr/local/lib/fl77_modules_lib64
mv interface_blocks_lib64/* /usr/local/lib/fl77_modules_lib64

The -I"pathname" option should then be specified on each f90 invocation (where "pathname" is /usr/local/lib/fl77_modules_lib32 or /usr/local/lib/fl77_modules_lib64) to tell the compiler where to find the modules.

4.2. License Management

The use of the NAG Fortran Library is controlled by the FLEXlm network license management system (FLEXlm is a registered trademark of Globetrotter Software Inc). This release of the NAG Fortran Library uses version 7.0 of FLEXlm. The remainder of this section describes how a FLEXlm license key should be installed to enable the use of the Library. Further details about FLEXlm and how it may be configured to suit your local circumstances are included in the FLEXlm End User Manual and FAQ supplied in the directory flsg619da/license/htmlman.

For the NAG Fortran Library you will be provided with an uncounted license key for use on a specific machine.

An uncounted license key consists of one FEATURE or INCREMENT line for each product licensed, for example:

FEATURE NAG_FL NAG 19.000 31-jul-2000 0 CBDA2041DC1BC45D2B68 \
               "SG6A," 80896b27

This enables an unlimited number of instances of version 19 of the application NAG_FL until the date specified on the system with hostid 80896b27 only. Note that the line is continued by escaping the newline character with '\'.

You will have to inform NAG of the hostid of the system. To obtain the hostid, locate the FLEXlm utility program 'lmutil' in flsg619da/license/bin/sgi64_u6 or flsg619da/license/bin/sgi32_u6, and run it with argument 'lmhostid'.

Once you have obtained the license key, store the text of it in a file, say /usr/local/lib/nag/license.dat

The location of this file must be made known to the NAG application by setting the environment variable LM_LICENSE_FILE to the full pathname of the file before the application is invoked.

For example, in the C-shell, type:

setenv LM_LICENSE_FILE /usr/local/lib/nag/license.dat
or in the Bourne shell, type:
LM_LICENSE_FILE=/usr/local/lib/nag/license.dat
export LM_LICENSE_FILE

No other actions are required to install an uncounted license.

4.3. Checking Accessibility

The installer should ensure that the advice given to users in Section 3.1 of the Users' Note (doc/un.html) is suitable for the installation. This can be done by running a few example programs following that advice; a suitable sample would be A02AAF, G05FFF and X03AAF. The installation can also be tested using the script nagexample.

The specific library used by the linker depends on the compilation options, if any, specified by the user and on the system processor. On systems such as the Silicon Graphics Power Indigo2, based on a R8000 processor, the default, if the SGI_ABI environment variable has not been set, is 64-bit and MIPS IV. On systems such as the Silicon Graphics Origin 2000, based on a R10000 processor, the default, if the SGI_ABI environment variable has not been set, is high performance 32-bit (-n32) and MIPS IV.

A script, runex, is supplied in the scripts directory, as part of the implementation. The script can be used for testing any of the installed libraries as follows.

In the C shell use the commands:

setenv NAG_OPTIONS '-n32 -mips4'
runex c02aff
In the Bourne shell the equivalent commands would be:
NAG_OPTIONS='-n32 -mips4'
export NAG_OPTIONS
runex c02aff
where NAG_OPTIONS contains the compiler ABI and ISA options.

Since several compiled NAG libraries are included in this implementation, it is advisable that each should be checked as above. If any externally provided library of Basic Linear Algebra Subprograms (BLAS) is to be used then the following example programs should also be run:

F06EAF - testing real Level 1 BLAS
F06GAF - testing complex Level 1 BLAS
F06ERF - testing real sparse Level 1 BLAS
F06GRF - testing complex sparse Level 1 BLAS
F06PAF - testing real Level 2 BLAS
F06SAF - testing complex Level 2 BLAS
F06YAF - testing real Level 3 BLAS
F06ZAF - testing complex Level 3 BLAS

Note that the last four example programs take longer to execute than the average example program. The Users' Note may contain extra information needed when running these tests.

4.4. Release to Users

The Users' Note (doc/un.html) should be checked and amended as necessary (particularly Section 3.1). It can then be made available to users directly, or be absorbed into local access information.

The following material should also be made accessible to users:

documentation files:

doc/essint
doc/summary
doc/news
doc/replaced
doc/calls
doc/called
doc/blas_lapack_to_nag
doc/nag_to_blas_lapack
compiled libraries:
lib[32|64]/mips[3|4]/libnag.a
lib[32|64]/mips[3|4]/libnag.so
lib[32|64]/mips[3|4]/libnag_csm.a
lib[32|64]/mips[3|4]/libnag_csm.so
interface block files:
interface_blocks_lib[32|64]/*.mod
example program material:
examples/source/??????e.f
examples/data/??????e.d
examples/results/??????e.r
scripts/nagexample

Note that the example material has been adapted, if necessary, from that printed in the NAG Fortran Library Manual, so that programs are suitable for execution with this implementation with no further changes (but see Section 4.5.2 for comments about possible differences in results obtained). Making the example material directly available to users provides them with easily adaptable templates for their own problems.

4.5. Further Information

4.5.1. Output Unit Dependencies (X04)

Certain NAG routines use explicit WRITE statements to produce output directly. The choice of output unit used can be controlled by using X04AAF and X04ABF, described in the NAG Fortran Library Manual. The defaults for this implementation are given in the Users' Note.

4.5.2. Example Programs

The example results distributed were generated at Mark 19, using the software described in Section 2.2. These example results may not be exactly reproducible if the example programs are run in a slightly different environment (for example, a different Fortran compiler, a different compiler library, different arithmetic hardware, or a different set of BLAS or LAPACK routines). The results which are most sensitive to such differences are: eigenvectors (which may differ by a scalar multiple, often -1, but sometimes complex); numbers of iterations and function evaluations; and residuals and other "small" quantities of the same order as the machine precision.

The "example programs" for the routines in the F06 chapter are not typical example programs and they are not in the Library Manual. They are test programs, which are supplied to sites for use in an installation test of the Library. Some of them take much longer to run than other example programs. Routines which are equivalent to BLAS, are tested twice: once when called by their NAG F06 names, and once when called by their BLAS names.

4.5.3. Maintenance Level

The maintenance level of the library can be determined by writing a simple program to call A00AAF, which prints out details of the implementation, including title and product code, compiler and precision used, mark and maintenance level.

5. Documentation

Each supported NAG Fortran Library site is currently provided with a printed copy of the NAG Fortran Library Manual (or Update) and Introductory Guide. Additional copies are available for purchase; please refer to the NAG documentation order form (available on the NAG websites, see Section 6 (c)) for details of current prices.

On-line documentation is bundled with this implementation. Please see the Readme file on the distribution medium for further information.

6. Support from NAG

(a) Contact with NAG

Queries concerning this document or the implementation generally should be directed initially to your local Advisory Service. If you have difficulty in making contact locally, you can contact NAG directly at one of the addresses given in the Appendix. Users subscribing to the support service are encouraged to contact one of the NAG Response Centres (see below).

(b) NAG Response Centres

The NAG Response Centres are available for general enquiries from all users and also for technical queries from sites with an annually licensed product or support service.

The Response Centres are open during office hours, but contact is possible by fax, email and phone (answering machine) at all times.

When contacting a Response Centre please quote your NAG site reference and NAG product code (in this case FLSG619DA).

(c) NAG Websites

The NAG websites are an information service providing items of interest to users and prospective users of NAG products and services. The information is reviewed and updated regularly and includes implementation availability, descriptions of products, downloadable software, product documentation and technical reports. The NAG websites can be accessed at

http://www.nag.co.uk/

or

http://www.nag.com/ (in North America)

or

http://www.nag-j.co.jp/ (in Japan)

(d) NAG Electronic Newsletter

If you would like to be kept up to date with news from NAG you may want to register to receive our electronic newsletter, which will alert you to special offers, announcements about new products or product/service enhancements, case studies and NAG's event diary. To register simply visit one of our websites or contact us at nagnews@nag.co.uk.

7. User Feedback

Many factors influence the way NAG's products and services evolve and your ideas are invaluable in helping us to ensure that we meet your needs. If you would like to contribute to this process we would be delighted to receive your comments. We have provided a short survey on our website at www.nag.co.uk/local/feedback to enable you to provide this feedback. Alternatively feel free to contact the appropriate NAG Response Centre who will be happy either to record your comments or to send you a printed copy of the survey.

Appendix - Contact Addresses

NAG Ltd
Wilkinson House
Jordan Hill Road
OXFORD  OX2 8DR                         NAG Ltd Response Centre
United Kingdom                          email: support@nag.co.uk
 
Tel: +44 (0)1865 511245                 Tel: +44 (0)1865 311744
Fax: +44 (0)1865 310139                 Fax: +44 (0)1865 310139
 
Nihon NAG KK
Yaesu Nagaoka Building No. 6 
1-9-8 Minato
Chuo-ku
Tokyo
Japan
email: help@nag-j.co.jp

Tel: +81 (0)3 5542 6311
Fax: +81 (0)3 5542 6312

[NP3441/IN - License Managed]