Introduction Flashcards

1
Q

Moore’s Law?

A

the number of transistors on a microchip doubles approximately every two years

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What speaks against Moore’s law?

A

physical limits of transistor scaling, increasing power consumption and thermal issues

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is CCX

A

core complex = cluster of cores sharing L3 cache

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is CCD

A

core complex die = chiplet of 1 or multiple CCXs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are the layers of a runtime system? (top to bottom)

A
  1. Parallel Application Code
  2. Parallel Runtime Library
  3. Treading Library
  4. OS
  5. Multi-core Processors
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Amdahl’s Law?

A

Upper bound on the speed-up of a parallel program when parallelizing parts of it = 1/s

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Issue with Amdahl’s Law?

A

Overly-optimistic worst case: Assumption that the limit n→∞ is meaningful hides the fact that for practical values of n, the speedup is much lower than expected

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Programming Models based on Flynn’s Taxonomy

A

SISD, MISD, SIMD, MIMD

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is NUMA?

A

NUMA (Non-Uniform Memory Access) is a memory architecture used in multi-processor where memory is divided into multiple regions (nodes)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

NUMA speed

A

Faster for local memory (current NUMA node), slow for remote memory (different NUMA node)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Name 3 Parallel Programming Languages

A

OpenMP, OpenACC, Co-Array Fortran

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Name 3 Parallel Programming Libraries

A

MPI, POSIX threads, TBB (language agnostic)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What does this do:
#pragma omp parallel for reduction(operator:variable)

A

Ensures that each thread computes a local result, which is then combined into a single global result at the end.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is a barrier?

A

a synchronization construct that ensures that all threads reach a specific point before any of them can proceed.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

For which pragmas are there implicit OpenMP barriers?

A

parallel, for, section, single

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What are task scheduling points?

A

specific points during program execution where the OpenMP runtime system decides whether to switch execution to another task

17
Q

What means untied?

A

untied task can be resumed by a different thread as well

18
Q

What does nowait do?

A

Eliminates the implicit barrier at the end of certain constructs (for, sections, single)