File: node16.html

package info (click to toggle)
scalapack-doc 1.5-11
  • links: PTS
  • area: main
  • in suites: bullseye, buster, stretch
  • size: 10,336 kB
  • ctags: 4,931
  • sloc: makefile: 47; sh: 18
file content (95 lines) | stat: -rw-r--r-- 6,582 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<!--Converted with LaTeX2HTML 96.1-h (September 30, 1996) by Nikos Drakos (nikos@cbl.leeds.ac.uk), CBLU, University of Leeds -->
<HTML>
<HEAD>
<TITLE>Efficiency and Portability</TITLE>
<META NAME="description" CONTENT="Efficiency and Portability">
<META NAME="keywords" CONTENT="slug">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<LINK REL=STYLESHEET HREF="slug.css">
</HEAD>
<BODY LANG="EN" >
 <A NAME="tex2html2313" HREF="node17.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="http://www.netlib.org/utk/icons/next_motif.gif"></A> <A NAME="tex2html2311" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="http://www.netlib.org/utk/icons/up_motif.gif"></A> <A NAME="tex2html2305" HREF="node15.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="http://www.netlib.org/utk/icons/previous_motif.gif"></A> <A NAME="tex2html2315" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="http://www.netlib.org/utk/icons/contents_motif.gif"></A> <A NAME="tex2html2316" HREF="node190.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="http://www.netlib.org/utk/icons/index_motif.gif"></A> <BR>
<B> Next:</B> <A NAME="tex2html2314" HREF="node17.html">Availability</A>
<B>Up:</B> <A NAME="tex2html2312" HREF="node8.html">Essentials</A>
<B> Previous:</B> <A NAME="tex2html2306" HREF="node15.html">BLACS</A>
<BR> <P>
<H1><A NAME="SECTION04140000000000000000">Efficiency and Portability</A></H1>
<A NAME="efficiency">&#160;</A><A NAME="436">&#160;</A>
<P>
ScaLAPACK is designed to give high efficiency<A NAME="437">&#160;</A>
on MIMD<A NAME="438">&#160;</A><A NAME="439">&#160;</A><A NAME="440">&#160;</A> distributed memory concurrent supercomputers, such as the
Intel Paragon, IBM SP series, and the Cray T3 series.
In addition, the software is designed so that it can be used with
clusters of workstations through a networked environment and with
a heterogeneous<A NAME="441">&#160;</A> computing environment via PVM or MPI.  Indeed, ScaLAPACK
can run on any machine that supports either PVM<A NAME="442">&#160;</A> or MPI<A NAME="443">&#160;</A>.
See Chapter&nbsp;<A HREF="node104.html#chapperformance">5</A> for some examples of the
performance achieved by ScaLAPACK routines.
<P>
The ScaLAPACK strategy for combining efficiency with
portability<A NAME="445">&#160;</A> is
to construct the software so that as much as possible of the
computation is performed by calls to the Parallel Basic Linear Algebra
Subprograms (PBLAS).  The PBLAS&nbsp;[<A HREF="node189.html#lawn100">26</A>, <A HREF="node189.html#petitet96a">104</A>] perform global computation by relying on
the Basic Linear Algebra Subprograms (BLAS)&nbsp;[<A HREF="node189.html#blas1">93</A>, <A HREF="node189.html#blas2">59</A>, <A HREF="node189.html#blas3">57</A>]<A NAME="448">&#160;</A>
for local
computation and the Basic Linear Algebra
Communication Subprograms (BLACS)&nbsp;[<A HREF="node189.html#lawn94">54</A>, <A HREF="node189.html#lawn73">113</A>] for communication.
<P>
The efficiency of ScaLAPACK software depends on the use of block-partitioned
algorithms<A NAME="450">&#160;</A><A NAME="451">&#160;</A>
and on efficient
implementations of the BLAS<A NAME="452">&#160;</A> and the
BLACS<A NAME="453">&#160;</A> being provided by computer vendors (and others)
for their machines.  Thus, the BLAS and the BLACS form a low-level
interface between ScaLAPACK software and different machine architectures.
Above this level, all of the ScaLAPACK software is portable.
<P>
The BLAS, PBLAS, and the BLACS
are not, strictly speaking, part of ScaLAPACK.  C code for the PBLAS is
included in the ScaLAPACK distribution.  Since the performance of the package
depends upon the BLAS and the BLACS being implemented efficiently,
we have not included this software with the ScaLAPACK distribution.
A machine-specific implementation of the BLAS and the BLACS should
be used.  If a machine-optimized 
version of the BLAS is not available, a Fortran 77 reference implementation of
the BLAS is available from <EM>netlib</EM> (see section&nbsp;<A HREF="node17.html#availability">1.5</A>).
This code constitutes
the ``model implementation''&nbsp;[<A HREF="node189.html#blas2alg">58</A>, <A HREF="node189.html#blas3alg">56</A>].
The model implementation of the BLAS is not expected
to perform as well as a specially tuned implementation
on most high-performance computers -- on some machines it may give <I>much</I>
worse performance --  but it 
allows users to run ScaLAPACK codes on machines that do not offer any other
implementation of the BLAS.
<P>
If a vendor-optimized version of the BLACS is not available for a specific
architecture, efficiently ported versions of the BLACS are available
on <EM>netlib</EM>.  Currently, the BLACS have been efficiently
ported on machine-specific message-passing libraries
such as the IBM (MPL)<A NAME="459">&#160;</A><A NAME="460">&#160;</A>
and
Intel (NX)<A NAME="461">&#160;</A><A NAME="462">&#160;</A> message-passing
libraries, as well as more
generic interfaces such
as PVM<A NAME="463">&#160;</A><A NAME="464">&#160;</A> and
MPI<A NAME="465">&#160;</A><A NAME="466">&#160;</A>. The
BLACS<A NAME="467">&#160;</A>
overhead has been shown
to be negligible in
[<A HREF="node189.html#lawn94">54</A>].
Refer to the URL for the <EM>blacs</EM> directory on <EM>netlib</EM>
for more details:
<BLOCKQUOTE> <TT>http://www.netlib.org/blacs/index.html</TT>
</BLOCKQUOTE><HR><A NAME="tex2html2313" HREF="node17.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="http://www.netlib.org/utk/icons/next_motif.gif"></A> <A NAME="tex2html2311" HREF="node8.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="http://www.netlib.org/utk/icons/up_motif.gif"></A> <A NAME="tex2html2305" HREF="node15.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="http://www.netlib.org/utk/icons/previous_motif.gif"></A> <A NAME="tex2html2315" HREF="node1.html"><IMG WIDTH=65 HEIGHT=24 ALIGN=BOTTOM ALT="contents" SRC="http://www.netlib.org/utk/icons/contents_motif.gif"></A> <A NAME="tex2html2316" HREF="node190.html"><IMG WIDTH=43 HEIGHT=24 ALIGN=BOTTOM ALT="index" SRC="http://www.netlib.org/utk/icons/index_motif.gif"></A> <BR>
<B> Next:</B> <A NAME="tex2html2314" HREF="node17.html">Availability</A>
<B>Up:</B> <A NAME="tex2html2312" HREF="node8.html">Essentials</A>
<B> Previous:</B> <A NAME="tex2html2306" HREF="node15.html">BLACS</A>
<P><ADDRESS>
<I>Susan Blackford <BR>
Tue May 13 09:21:01 EDT 1997</I>
</ADDRESS>
</BODY>
</HTML>