Parallel Programming with Shared Memory Flashcards

1
Q

Was sind Hilfsmittel zur Synchronisation?

A
  • Gemeinsame Variablen
  • Semaphore/Mutexe
  • Monitore/Bedingungsvariablen
  • Barrieren
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Was sind Monitore?

A

Monitore sind Module mit Daten, Prozeduren und Initialisierungscode. Der Zugriff auf Daten erfolgt nur über Monitor-Prozeduren. Entspricht in etwa einer Klasse

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

Wozu dient eine Barriere?

A

Eine Barriere dient zur Synchronisation von Prozessen. Ein Prozess, der eine Barriere erreicht, wird so lange blockiert, bis auch alle anderen Prozesse die Barriere erreichen

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

Welche Synchronisationsfehler gibt es?

A
  1. Race Conditions (Unzureichende Synchronisation)
  2. Deadlocks (Verklemmung)
  3. Unfairness (Starvation/ Verhungerung)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Was ist das Ziel der Parallelisierung mit OpenMP?

A

Ziel ist die Ausführung des sequentiellen Programmcodes auf mehrere Threads aufzuteilen, ohne den Code zu ändern

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

Welche zwei Ansätze gibt es zur Schleifenparallelisierung?

A
  1. Betrachte primär die Daten und teile diese auf

2. Betrachte primär die Berechnungen und teile diese auf

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