Heterogeneity, 142–150, 190–191
of communication network, 147–150
performance issues, 147–148, 215–217
scalability issues, 148–150
of processors
machine arithmetic, 146–147
performance issues, 142–146, 190–191,196–199, 215–217
Heterogeneous MPI, see HMPI
Heterogeneous network of computers
performance model, 210, 244–247
Heterogeneous parallel algorithm
mapping to network of computers, 210–211, 247–253
performance model, 209, 215–217, 241–242
absolute volume of computation, 215–217
specification in mpC, 221
algorithmic patterns, 241–243
specification in mpC, 242–243
communication patterns, 234–238. See also Communication patterns
specification in mpC, 233–241
interaction of parallel processes, see algorithmic patterns
relative volume of computation, 190–194
specification in mpC, 191–194
volume of communication, 215–217
specification in mpC, 221
High Performance Fortran, see HPF
HMPI, 257–261
functions
HMPI_Finalize, 261
HMPI_Get_comm, 261
HMPI_Group_create, 258
HMPI_Group_free, 260
HMPI_Group_rank, 261
HMPI_Group_size, 261
HMPI_Init, 260
HMPI_Recon, 259
HMPI_Timeof, 259
interaction with MPI, 260–261
HPF, 130–138
abstract processors, 131–132
compilation, 134–137
ADAPTOR, 137
optimization of communications, 136–137
data distribution, 132–133
block, 132–133
cyclic, 132–133
directives, 131–138
INDEPENDENT, 131, 133–134
PROCESSORS, 131–132
DISTRIBUTE, 132–133
TEMPLATE, 137
ALIGN, 137
DYNAMIC, 137–138
REDISTRIBUTE, 138
REALIGN, 138
SHADOW, 138
RESIDENT, 138
examples
matrix multiplication on heterogeneous cluster, 144–145
matrix multiplication on MPP, 133–134
intrinsic functions, 131–132
NUMBER_OF_PROCESSORS, 131–132
PROCESSORS_SHAPE, 131