SLIDE 8 BERKELEY PAR LAB
8
Out-of-the-Box Libraries Oversubscribe the Resources
OS TBB OpenMP Hardware
Core Core
1
Core
2
Core
3
virtualized kernel threads
A[0] A[1] A[2] A[10] A[11] A[12]
Prefetch
+Y +Z +X (unit stride) NY NZ NX CY CZ CX TY TX
Cache Blocking
A[0] A[1] A[2] A[10] A[11] A[12]
Prefetch
+Y +Z +X (unit stride) NY NZ NX CY CZ CX TY TX
Cache Blocking
A[0] A[1] A[2] A[10] A[11] A[12]
Prefetch
+Y +Z +X (unit stride) NY NZ NX CY CZ CX TY TX
Cache Blocking
A[0] A[1] A[2] A[10] A[11] A[12]
Prefetch
+Y +Z +X (unit stride) NY NZ NX CY CZ CX TY TX
Cache Blocking
A[0] A[1] A[2] A[10] A[11] A[12]
Prefetch
+Y +Z +X (unit stride) NY NZ NX CY CZ CX TY TX
Cache Blocking
A[0] A[1] A[2] A[10] A[11] A[12]
Prefetch
+Y +Z +X (unit stride) NY NZ NX CY CZ CX TY TX
Cache Blocking
A[0] A[1] A[2] A[10] A[11] A[12]
Prefetch
+Y +Z +X (unit stride) NY NZ NX CY CZ CX TY TX
Cache Blocking
A[0] A[1] A[2] A[10] A[11] A[12]
Prefetch
+Y +Z +X (unit stride) NY NZ NX CY CZ CX TY TX
Cache Blocking