... uni-processors[*]
This argument was made in a Panel Session during the 14th annual workshop on Languages and Compilers for Parallel Computing LCPC 2001).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... explicitly[*]
Depending on whether the platform presents a message-passing model or a shared memory model.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... state[*]
The MPI specification is thread safe in the sense that it does not require global state. Particular MPI implementations may or may not be thread safe. MPICH is not.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... arrays[*]
J.E. Moreira proposed Java Specification Request for a multiarray package, because, for scientific and engineering computations, Java needs true multidimensional arrays like those in HPJava
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... collection[*]
Most time, we will talk about processes instead of processors. The different processes may be executed on different processors to achieve a parallel speedup.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... triplet[*]
The syntax for triplets is directly from Fortran 90.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...triplets[*]
The syntax for triplets is directly from Fortran 90.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... expression[*]
Distributed indices are allowed as well, if the location is in the proper range.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...[[]][*]
In constrast with a one-dimensional multiarray, which looks like either double [[-]] or double [[*]].
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... subscript[*]
A subscript within the array segment held on the associated process.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... limitation[*]
Note that Fortran 90 also does not allow arrays of arrays to be declared directly. If they are needed they have to be simulated by introducing a derived data-type wrapper, just as we introduced a class here.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...[*]
The class SeqArrayDim is a subclass of ArrayDim, specialized to parameterize sequential dimensions conveniently.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...[*]
The program simulates a 2-D inviscid flow through an axisymmetric nozzle. The simulation yields contour plots of all flow variables, including velocity components, pressure, mach number, density and entropy, and temperature. The plots show the location of any shock wave that would reside in the nozzle. Also, the code finds the steady state solution to the 2-D Euler equations.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...2)[*]
In later benchmarks we will take PRE alone as our ``Level 1'' optimization.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... features[*]
Such as the new IO package, called java.nio.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... code[*]
It is true that HPF has transcriptive mappings that allow code to be developed when the distribution format is not known at compile time, but arguably these are an add-on to the basic language model rather than a central feature.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...[*]
In the first place, we intuitively expected the most dominant parts of Q3 might be the first overall construct for calculating probability since the construct has a Java math function call, Math.exp(...).
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... codes[*]
Without Adlib.writeHalo(), the algorithm will give incorrect answers. But, we will disregard this, since the purpose of this experiment is to benchmark the performance of the HPJava compiler, and to verify the effect of the optimization strategies.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
...image[*]
An image is what HPJava calls a process.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... language[*]
In case of HPF, scientists and engineers are still developing its compilation systems for efficient performance a decade after its initial appearance.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
... MPI[*]
currently our HPJava project team provides a Java implementation of MPI, called mpiJava
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.