![](https://csdnimg.cn/release/download_crawler_static/7523033/bg11.jpg)
List of Figures
5.1 Collective comminucations, an overview . . . . . . . . . . . . . . . . . . . . 143
5.2 Intercommunicator allgather . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
5.3 Intercommunicator reduce-scatter . . . . . . . . . . . . . . . . . . . . . . . . 147
5.4 Gather example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
5.5 Gatherv example with strides . . . . . . . . . . . . . . . . . . . . . . . . . . 154
5.6 Gatherv example, 2-dimensional . . . . . . . . . . . . . . . . . . . . . . . . 155
5.7 Gatherv example, 2-dimensional, subarrays with different sizes . . . . . . . 156
5.8 Gatherv example, 2-dimensional, subarrays with different sizes and strides . 158
5.9 Scatter example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163
5.10 Scatterv example with strides . . . . . . . . . . . . . . . . . . . . . . . . . . 163
5.11 Scatterv example with different strides and counts . . . . . . . . . . . . . . 164
5.12 Race conditions with point-to-point and collective communications . . . . . 217
5.13 Overlapping Communicators Example . . . . . . . . . . . . . . . . . . . . . 221
6.1 Intercommunicator creation using MPI_COMM_CREATE . . . . . . . . . . . 242
6.2 Intercommunicator construction with MPI_COMM_SPLIT . . . . . . . . . . 246
6.3 Three-group pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
6.4 Three-group ring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
7.1 Set-up of process structure for two-dimensional parallel Poisson solver. . . . 331
7.2 Communication routine with local data copying and sparse neighborhood
all-to-all. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
7.3 Communication routine with sparse neighborhood all-to-all-w and without
local data copying. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
11.1 Schematic description of the public/private window operations in the
MPI_WIN_SEPARATE memory model for two overlapping windows. . . . . . . 436
11.2 Active target communication . . . . . . . . . . . . . . . . . . . . . . . . . . 439
11.3 Active target communication, with weak synchronization . . . . . . . . . . . 440
11.4 Passive target communication . . . . . . . . . . . . . . . . . . . . . . . . . . 441
11.5 Active target communication with several processes . . . . . . . . . . . . . . 444
11.6 Symmetric communication . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
11.7 Deadlock situation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
11.8 No deadlock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
13.1 Etypes and filetypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
13.2 Partitioning a file among parallel processes . . . . . . . . . . . . . . . . . . 490
13.3 Displacements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503
13.4 Example array file layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
xvii