next up previous contents
Next: Effect and Restrictions Up: The Java Adlib API Previous: Effect and Restrictions   Contents

Minloc

A minloc() method is a reduction operation for finding the location of the smallest elements of a distributed array. This method returns the minimum value of all element of an array--similar to minval (see section A.15--but also output the index tuple in the array at which the extreme value was found. The prototypical forms are

$\displaystyle \begin{minipage}[t]{\linewidth}\small\begin{tabbing}
\verb$ $$t$\verb$ minloc (int [] loc, $$t$\verb$  ...

and

$\displaystyle \begin{minipage}[t]{\linewidth}\small\begin{tabbing}
\verb$ $$t$...
...t [] loc, $$t$\verb$  ...

where the variable $ t$ runs over all primitive types other than boolean, and the notation $ t$ # means a multiarray of arbitrary rank, with elements of type $ t$. loc is an ordinary Java array of length R, the rank of source. On exit it contains the global subscripts of the extreme value. The second form takes an extra boolean array aligned with the source array and ignores all elements of source for which the corresponding element of mask is false. The minloc method is implemented by a schedule object with HPspmd class Minloc$ t$. Each primitive types other than boolean has its own schedule class. This class has two constructors with arguments identical to the method above, and has one public method with no arguments called execute(), which executes the schedule. The effective public interface of the Minloc$ t$ class is

$\displaystyle \begin{minipage}[t]{\linewidth}\small\verb$ public class Minloc$$...
...$$t$\verb$ execute () { ... }$\\
\verb$ . . .$\\
\verb$ }$
\end{minipage}
$

The source array is source. It will have elements of type $ t$. The location of the largest value stored in loc. Size of loc vector must be equal to the rank of the source array. The mask array is mask.

Subsections
next up previous contents
Next: Effect and Restrictions Up: The Java Adlib API Previous: Effect and Restrictions   Contents
Bryan Carpenter 2004-06-09