File: node164.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 (86 lines) | stat: -rw-r--r-- 5,882 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
<!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>Matrix Redistribution/Copy Routines</TITLE>
<META NAME="description" CONTENT="Matrix Redistribution/Copy Routines">
<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="tex2html4260" HREF="node165.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="http://www.netlib.org/utk/icons/next_motif.gif"></A> <A NAME="tex2html4258" HREF="node159.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="http://www.netlib.org/utk/icons/up_motif.gif"></A> <A NAME="tex2html4254" HREF="node163.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="http://www.netlib.org/utk/icons/previous_motif.gif"></A> <A NAME="tex2html4262" 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="tex2html4263" 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="tex2html4261" HREF="node165.html">Fortran Interface</A>
<B>Up:</B> <A NAME="tex2html4259" HREF="node159.html">Index of ScaLAPACK Routines</A>
<B> Previous:</B> <A NAME="tex2html4255" HREF="node163.html">Notes</A>
<BR> <P>
<H1><A NAME="SECTION04850000000000000000">Matrix Redistribution/Copy Routines</A></H1>
<A NAME="redistribution">&#160;</A>
<P>
ScaLAPACK provides two matrix redistribution/copy routines for each data
type&nbsp;[<A HREF="node189.html#PT97">107</A>, <A HREF="node189.html#DPRT95">49</A>, <A HREF="node189.html#PT96a">106</A>].  These routines provide a truly
general copy from any block cyclicly distributed (sub)matrix to any
other block cyclicly distributed (sub)matrix.  These routines are
the only ones in the entire ScaLAPACK library which provide
<EM>inter-context</EM> operations.  By this we mean that they can take
a (sub)matrix in context A (distributed over process grid A) and copy it to a
(sub)matrix in context B.
<P>
There need be no relation between the two operand (sub)matrices other than
their global size and the fact that they are both legal block cyclicly
distributed (sub)matrices.  This means that they may be distributed across
different process grids, have varying block sizes, and differing matrix starting
points, be contained in different size distributed matrices, etc.
<P>
Because of the generality of these routines, they may be used for many
operations not usually associated with copy routines.  For instance,
they may be used to a take a matrix on one process and distribute
it across a process grid, or the reverse.  If a supercomputer is
grouped into a virtual parallel machine with a workstation, for instance,
this routine can be used to move the matrix from the workstation to the
supercomputer and back.  In ScaLAPACK, these routines are called to
copy matrices from a two-dimensional process grid to a one-dimensional
process grid.  They can be
used to redistribute matrices so that distributions providing maximal
performance can be used by various component libraries, as well.  This
list of uses is hardly exhaustive, but it gives an idea of the power
of a general copy in parallel computing.
<P>
The two routine classifications are as follows:
<UL>
<LI> P_GEMR2D copies between general, rectangular matrices.
<LI> P_TRMR2D copies between trapezoidal matrices.
</UL>
<A NAME="6741">&#160;</A><A NAME="6742">&#160;</A><A NAME="6743">&#160;</A><A NAME="6744">&#160;</A>
<A NAME="6745">&#160;</A>
<A NAME="6746">&#160;</A><A NAME="6747">&#160;</A><A NAME="6748">&#160;</A><A NAME="6749">&#160;</A>
<A NAME="6750">&#160;</A>
<A NAME="6751">&#160;</A>
<A NAME="6752">&#160;</A>
<P>
All routines are available in integer, single precision real, double
precision real, single precision complex, and double precision complex.
In the following sections, we describe only the singe precision
routines for each data type.  Double precision routines are the same
as their single precision counterparts, but they have names
beginning with PD- instead of PS-, or PZ- instead of PC-.
<P>
Note that these routines require an array descriptor of type DESC_(DTYPE_)=1.
<P>
<BR> <HR>
<UL><A NAME="CHILD_LINKS">&#160;</A>
<LI> <A NAME="tex2html4264" HREF="node165.html#SECTION04851000000000000000">Fortran Interface</A>
<LI> <A NAME="tex2html4265" HREF="node172.html#SECTION04854000000000000000">C Interface</A>
<LI> <A NAME="tex2html4266" HREF="node173.html#SECTION04855000000000000000">Code Fragment Calling C Interface Cpdgemr2d</A>
</UL>
<HR><A NAME="tex2html4260" HREF="node165.html"><IMG WIDTH=37 HEIGHT=24 ALIGN=BOTTOM ALT="next" SRC="http://www.netlib.org/utk/icons/next_motif.gif"></A> <A NAME="tex2html4258" HREF="node159.html"><IMG WIDTH=26 HEIGHT=24 ALIGN=BOTTOM ALT="up" SRC="http://www.netlib.org/utk/icons/up_motif.gif"></A> <A NAME="tex2html4254" HREF="node163.html"><IMG WIDTH=63 HEIGHT=24 ALIGN=BOTTOM ALT="previous" SRC="http://www.netlib.org/utk/icons/previous_motif.gif"></A> <A NAME="tex2html4262" 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="tex2html4263" 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="tex2html4261" HREF="node165.html">Fortran Interface</A>
<B>Up:</B> <A NAME="tex2html4259" HREF="node159.html">Index of ScaLAPACK Routines</A>
<B> Previous:</B> <A NAME="tex2html4255" HREF="node163.html">Notes</A>
<P><ADDRESS>
<I>Susan Blackford <BR>
Tue May 13 09:21:01 EDT 1997</I>
</ADDRESS>
</BODY>
</HTML>