Introduction
Profiling Code for Performance
Performance Concepts
Figure 1

Dot product between vectors X and Y
Figure 2

Dot product between vectors X and Y
Figure 3

Dot product between vectors X and Y
Figure 4

Dot product between vectors X and Y
Figure 5

Dot product between vectors X and Y
Figure 6

Memory Hierarchy in a Computer
Figure 7

Matrix multiplication C = A * B
Figure 8

Matrix multiplication C = A * B
Figure 9

Matrix multiplication C = A * B
Figure 10

Matrix multiplication C = A * B
Figure 11

Matrix multiplication C = A * B
Parallel Computing Concepts
Multi-Threaded Programs
Figure 1

Diagram of a shared-memory multi-threaded dot
product
Message-Passing Programs
Figure 1

Diagram of a distributed-memory multi-node dot
product on two computers
Figure 2

Diagram of a distributed-memory multi-node dot
product on two computers
Figure 3

Diagram of a distributed-memory multi-node dot
product on two computers
Figure 4

Diagram of a distributed-memory multi-node dot
product on two computers
Figure 5

Diagram of a distributed-memory multi-node dot
product on two computers