next up previous
Next: Client Interfaces Up: The NetSolve project Previous: The NetSolve System

Problem Specification

To keep NetSolve as general as possible, we needed to find a formal way of describing a problem. Such a description must be carefully chosen, since it will affect the ability to interface NetSolve with arbitrary software.

A problem is defined as a 3-tuple: < name, inputs, outputs >,

where

An object is itself described as follows: < object, data>,

where object can be 'MATRIX', 'VECTOR' or 'SCALAR' and data can be any of the standard FORTRAN data types. This description has proved to be sufficient to interface NetSolve with numerous software packages. The NetSolve administrator can then not only choose the best platform on which to install NetSolve, but also select the best packages available on the chosen platform.

The current installation of NetSolve at the University of Tennessee uses the BLAS [&make_named_href('', "node19.html#blas1","[9]")], [&make_named_href('', "node19.html#blas2","[10]")], [&make_named_href('', "node19.html#blas3","[11]")], LAPACK [&make_named_href('', "node19.html#lapack","[12]")], ItPack [&make_named_href('', "node19.html#itpack","[13]")], LINPACK [&make_named_href('', "node19.html#linpack","[14]")] and FitPack [&make_named_href('', "node19.html#fitpack","[15]")]. These packages are available on a large number of platforms and are freely distributed. The use of ScaLAPACK [&make_named_href('', "node19.html#scalapack","[16]")] on massively parallel processors would be a way to use the power of high-performance parallel machines via NetSolve.



Jack Dongarra
Thu Aug 29 16:27:43 EDT 1996