Part 3. What are the general types of parallelism that we already discussed?
-
Upload
bartholomew-amos-pierce -
Category
Documents
-
view
217 -
download
0
Transcript of Part 3. What are the general types of parallelism that we already discussed?
![Page 1: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/1.jpg)
Part 3
![Page 2: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/2.jpg)
![Page 3: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/3.jpg)
What are the general types of parallelism that we already discussed?
![Page 4: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/4.jpg)
What are the general types of parallelism that we already discussed?
1. instruction-level
2. processor-level
![Page 5: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/5.jpg)
Types:1. Array2. Vector3. Multiprocessor/multicore4. Multicomputer5. COWs (cluster of workstations)
![Page 6: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/6.jpg)
Tanenbaum, Structured Computer Organization, Fifth Edition, (c)
2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0
Type 1: array processor- ex. ILLIAC IV- 1 CPU; 64 AUs (arithmetic units)
![Page 7: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/7.jpg)
Type 2: vector processor 1 CPU w/ (a small number, say 8) vector registers
but (typically) only one AU
example is Intel MMX, SSE1 – SSE4 SIMD instuctions SSE: 8 128-bit registers (xmm0..xmm7)
Each 128-bit register may contain: 4 32-bit fp numbers 2 64-bit fp numbers 4 32-bit integers 8 16-bit ints 16 8-bit ints
![Page 8: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/8.jpg)
Tanenbaum, Structured Computer Organization, Fifth Edition, (c)
2006 Pearson Education, Inc. All rights reserved. 0-13-148521-0
Type 3: multiprocessor multicomputer with optional local memories and shared memory; common bus typically 64 or less CPUs OpenMP (Multi-Processing; openmp.org)
![Page 9: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/9.jpg)
Type 4: multicomputer
like multiprocessor, but no shared memory
as many as 10,000 CPUs
different topologies (such as 2d grid, 3d grid, trees, or rings) to speed communications
![Page 10: Part 3. What are the general types of parallelism that we already discussed?](https://reader035.fdocuments.us/reader035/viewer/2022062409/56649f535503460f94c771fb/html5/thumbnails/10.jpg)
Type 5: COW (Cluster Of Workstations)
COTS (Common Off The Shelf) systems communicating via COTS network hardware
MPI standard programming library Message Passing Interface http://www-unix.mcs.anl.gov/mpi/ (not to be confused with OpenMP)