Fachschaft Informatik

Prüfungsprotokolle


Prüfungsprotokolle lesen



Protokolle (10 gefunden)

Nr.PrüferFach
401 Reinefeld, Alexander Prof. Dr. Architektur paralleler und verteilter Systeme

Protokoll

= Datum der Prüfung
25.2.2009
= Benötigte Lernzeit als Empfehlung
7 Tage bei ständiger Anwesenheit in VL und Bearbeitung der Übungen

= Verwendete Materialien (Bücher, Skripte etc...)
Vorlesungsfolien + Originalpaper zur Vertiefung einiger Algorithmen wie zum Beispiel Paxos Consensus und Paxos Commit

= "Atmosphäre" der Prüfung / Verhalten der Beisitzer
relativ entspanntes Gespräch / Beisitzer hat lediglich Protokoll geführt

= Prüfungsfragen
-Architekturen: gegebene Architekturen in UMA/NUMA/ccUMA einordnen
-Prozesse, Threads: jeweils Definitionen, Posix-Thread-Erstellung, sind "Prozesse" in Erlang Threads oder Prozesse?, Erlang Prozesse vs. pthreads
-Zeit in verteilten Systemen: Lamport-Zeit und Vektorzeit erklären, Beweisidee für e->e' <=> L(e)<L(e') bei der Vektorzeit liefern, Gegenbeispiel für die Transitivität der Concurrency-Relation konstruieren
-Konsistenz in verteilten Systemen: aus Speicher-Sicht (alle aufzählen, ordnen und erklären, Unterschied zwischen strenger Konsistenz und Linearisierbarkeit? => globale Uhr), aus Client-Sicht (aufzählen & erklären)
-Leader Election: Echo Funktionsweise & Eigenschaften erklären, Beweisidee für Terminierung liefern
-Transaktionen: Paxos Commit erklären (Rollen, Ablauf, Fehlertoleranz, etc.)

= Note (Optional)
1,7

= Fazit (Gute/schlechte Prüfung , angemessene Benotung etc...)
Absolut faire Prüfung mit Rundumschlag in den Themen der Vorlesung

Nr.PrüferFach
488 Reinefeld, Alexander Prof. Dr. Architektur paralleler und verteilter Systeme

Protokoll

= Datum der Prüfung
23.02.2011

= Benötigte Lernzeit als Empfehlung
2 Wochen zur Entspannten Vorbereitung

= Verwendete Materialien (Bücher, Skripte etc...)
VL-Folien, Verteilte System - Tanenbaum, div. Paper

= "Atmosphäre" der Prüfung / Verhalten der Beisitzer
Sehr angenehm und entspannt....fast freundschaftlich ;)

= Prüfungsfragen
- Caches: Adressverarbeitung und Platzierung von Cachlines; Cachekohärenzprotokolle
- gegenseitiger Ausschluss: zentral verwaltet (nicht betrachtet, da langweilig), Token im Ring (Vor- und Nachteile), Agrawala und Maekawa
- Konsistenzmodelle: welche Arten, dann nur über speicherzentrierte Modelle gesprochen; im Zuge von strenger Konsistenz ganz kurz Möglichkeiten der globalen Zeit angesprochen; Beispiel für kausal und nicht sequentiell bringen
- Ablauf von Map-Reduce erklähren
- Paxos Commit erklähren; Rollen verteilung, Ablauf und Nachrichtenkomplexität

= Note (Optional)
1,3

= Fazit (Gute/schlechte Prüfung , angemessene Benotung etc...)
Sehr gute und faire Prüfung. Man fährt am Besten wenn zu allem zumindest etwas weiss.

Nr.PrüferFach
492 Reinefeld, Alexander Prof. Dr. Architektur paralleler und verteilter Systeme

Protokoll

= Datum der Prüfung
23. Februar 2011
= Benötigte Lernzeit als Empfehlung
Ich habe sehr viel Zeit in die Vorbereitung gesteckt, zusammengerechnet etwa 3 Wochen. Der
Stoffumfang der Vorlesung ist erstaunlich groß, obwohl nur eine Vorlesung pro Woche statt
findet. Daher empfehle ich, den Aufwand nicht zu unterschätzen.
Die Prüfung an sich geht aber eher in die Breite als in die Tiefe. Ein Student, der sich
weniger für die Thematik und mehr für eine bestandene Prüfung interessiert, kann sicher
auch mit weniger Aufwand eine gute Note erzielen. Wahrscheinlich sind dann 1 1/2 Wochen
ausreichend, wenn man die Übungsaufgaben gemacht und in der Vorlesung aufgepasst hat.

= Verwendete Materialien (Bücher, Skripte etc...)
Die Folien von Prof. Reinefeld ähneln von der Struktur her dem Buch von Tanenbaum.

Bücher:
    Andrew Tanenbaum, Marten van Steen: Verteilte Systeme. Grundlagen und Paradigmen
        Das Buch ist teilweise etwas oberflächlich und deckt nicht alle Themen ab, gibt
        aber in viele Bereiche (wie zum Beispiel den Konsistenzmodellen) einen
        ausreichenden Einblick.
    Andrew Tanenbaum: Structured Computer Organization
        Dieses Buch hat an sich nichts mit der Vorlesung zu tun, enthält aber ein Kapitel
        über Parallele Systeme das ich sehr empfehlen kann.

Paper:
    Ich habe versucht zumindest die Paper zu lesen, die in der Vorlesung genannt werden.

Webseite:
    http://the-paper-trail.org/blog/?p=173 gibt eine gute Einführung in Paxos Consensus.

= "Atmosphäre" der Prüfung / Verhalten der Beisitzer
Die Atmosphäre der Prüfung war sehr entspannt. Prof. Reinefeld lässt genug Zeit um
Antworten zu überdenken und zu formulieren. Zudem hilft er auch, falls man an
Kleinigkeiten hängen bleibt. Dies führte bei mir nicht zu Punktabzug.

= Prüfungsfragen
Caching
    direct cache, associative cache
    MSI und MESI erklären
    Wozu ist der extra Zustand bei MESI vorhanden?
    Wofür nutzt man das dirty bit? Was ist der Unterschied zum valid Bit?
Zeit in verteilten Systemen
    happens-before (HB1,HB2,HB3)
    Lamport-Uhr
    Vektor-Uhr
        Motivation
            Aus V(e) < V(e') => e -> e'
    Transitivität der Nebenläufigkeitsrelation
        Ist die Nebenläufigkeitsrelation transitiv?
Konsistenz
    Clientzentrierte Konsistenz
        monotonic read/write
        read-your-writes
        write follows read
    Definitionen und Beispiele
Konsensprotokolle
    regular consensus
        Beide Methoden erklären (flooding und hierarchical)
        Dabei sollte man möglichst nicht den hierarchical regular consensus und den
        Bully-Algorithmus (leader election) verwechseln
    Paxos Consensus
        Welche Rollen?
        Wozu?
        Wer schlägt vor?
        Wie erfolgt die Wahl?
        Wann erfolgt die Terminierung? Wie lange dauert es, bis der Algorithmus
            terminiert?
        Welche Prozesse werden nach einem Wahldurchgang nicht mehr gebraucht?
= Note (Optional)
1.3
= Fazit (Gute/schlechte Prüfung , angemessene Benotung etc...)
Die Prüfung war sehr fair. Die Benotung war angemessen, wobei ich mit einer etwas
schlechteren Note gerechnet hatte. Gerade bei Paxos Consensus hatte doch noch
Schwierigkeiten.

Nr.PrüferFach
586 Reinefeld, Alexander Prof. Dr. Architektur paralleler und verteilter Systeme

Protokoll

= Datum der Prüfung
19.02.2013

= Benötigte Lernzeit als Empfehlung
Je nach Lerntyp!! 7 lockere Tage bei ständiger Anwesenheit in VL+UE+Verständnis in der VL sind ausreichend. Ansonsten reichen auch 3-4 Tage \"all-day-long\" Lernen. 
Bei mir: 1x Lerngruppe mit anderen, wo jeder Fragen und Anmerkungen anbringen konnte -> sehr hilfreich.

= Verwendete Materialien (Bücher, Skripte etc...)
VL-Folien, 1-2 Internetseiten, Wikipedia (Paxos):
- Advanced Distributed Systems: http://regal.csep.umflint.edu/~swturner/Classes/csc577/Online/Chapter06/Chapter06.html
--> im Link die Chapternummer wechseln für weitere Themen (01, 02, ...)
- Zudem habe ich kurz in den Quellcode von Scalaris geguckt (@GoogleCode), da ich ein reales Beispiel brauchte, wie Paxos ungefähr funktioniert.

Paper:
- \"Key-Value-Stores Am Beispiel von Scalaris\" von Natanael Arndt
- \"Scalaris: Reliable Transactional P2P Key/Value Store\" (PPT) von Thorsten Schütt, Florian Schintke , Alexander Reinefeld
- \"Consensus on Transaction Commit\" von Jim Gray and Leslie Lamport < sah gut aus, daher gespeichert, aber nicht mehr benötigt 

= \"Atmosphäre\" der Prüfung / Verhalten der Beisitzer
Kann mich da meinem direkten Vorredner nur anschließen. Sehr freundlich, man kann vor dem Antworten nachdenken sowie anschließend noch kurz überdenken, wenn Prof. Reinefeld nicht ganz zufrieden scheint. Da bei mir Prof + Beisitzer sich gegenübersaßen (3 und 9 Uhr) und ich mehr dazwischen (auf 6 uhr), konnte ich leider nur die Reaktionen von einem beobachten. (finde die Reaktionen auf Antworten helfen :)) Der Beisitzer hat kaum was gesagt, am Ende kurz den Hinweis auf die Successor-Liste gegeben)

= Prüfungsfragen
(1) Amdahls Gesetz
 - Nennen und Formel aufschreiben + erklären.
(2) Speicherarchitekturen (UMA, NUMA, ccNUMA) kurz erläutern (Bedeutung, keine Skizzen einteilen)
 - Fehler von mir: Für ccNUMA braucht man keine Bus (>Bus Snooping möglich), sondern jedes Medium ginge, jedoch müssten die Caches dann wirklich alle kennen und direkt Nachrichten verschicken)
(3) Seine Frage hatte ich nicht ganz verstanden, ich dachte, er meint CC-Protokolle (hab kurz nachgefragt). Dem war zwar nicht so, nichtsdestotrotz sollte ich die dann erklären, das war für ihn wohl genauso gut.
-> Inval + Updateprotokoll kurz erklärt. Bei Inval von mir aus auch MSI / MESI eingebracht und es grob erklärt: \"Verschiedene Status, man holt sich das Recht zu schreiben\"
-> darauf auch die Frage: Unterschied zwischen MSI <-> MESI? => \"E\"-Status (-> \"Wozu eingeführt?\")
(4) Was sind strenge Konsistenz, ..., bis FiFo-Konsistenz -> Datenzentrische Konsistenzmodelle
- kurz Erläutern und der \"Strengegrad\" nach anordnen
- Für Seq. auch Implementierungsidee nennen (Glob. Seq. Nummern)
(5) Überleitung gleich zu den Multicasts:
 - \"Welche kennen Sie?\" -> BEM, (R)RM, URM, + Stubborn und Logged Stubborn genannt
 - die ersten 3 erläutern: Arbeitsweise, Garantien (BEM: bis Senderausfall, RRM4, URM4) + wie kann man die einhalten (-> nach deliver wieder BEM senden)
- Auch hier Implementierungsideen nennen (SeqNr pro Prozesse(! < da kam extra die Nachfrage), Vektoruhren, Glob. Seqnummer)
- bei Vektoruhren die Nachfrage: Unterschied zu Lamport-Uhren, warum diese nicht reichen: V(e) < V(e\') bietet Rückschluss auf e->e\' ( das können Lamport-Uhren nicht)
(6) Wechselseitiger Ausschluss/Zugriff:
- Welche Möglichkeiten gibt es? (zentral, token, verteilt)
- Erläuterungen zu Token und verteilt (Nachrichtenaustausch)
- Token-Prinzip erläutern + Nachfragen: \"Was für Nachteile gibt es?\" \"Was passiert, wenn Token verloren geht + neuer generiert + alter kommt wieder?\" (Annehmen + Eigenschaften sollte man hierfür wissen)
- Ricart und Agrawala erläutern + \"Wo liegt der Vorteil von Maekawa im Vergleich?\"-> Quorum
(7) Chord vs Chord#
- beide kurz erklären (Hashfunktion bzw. eben keine; ID Spaces, ...)
- \"Wie sieht die Routing-Tabelle(Finger-Tabele) aus und wie wir sie gebildet (bei beiden)?\" (Lookup oder nächsten Succ fragen)
- Maximale Anzahl Hops im Vergleich und \"Warum nur mit hoher Wahrscheinlichkeit log2(N) bei Chord?\"
(8) Churning bei SON erläutern am Beispiel einer gegebenen Vorlesungsfolie
 - hier Successor-Tabelle nicht mit Routing-Tabelle verwechseln!!!
 - Erläuterung zur Anpassung der Successor-Tabelle beim Churning
(9) Fangfrage: \"2 Knoten fühlen sich für einen Bereich zuständig, da Fehler-Dekt. falschen Ausfall meldete, kann man dies lösen + wie?\" -> Geht nicht, NP-Hart; Vermeidung über Replikation

(Keine Gewähr für meine Beispielantworten!)

= Note (Optional)
1,0

= Fazit (Gute/schlechte Prüfung , angemessene Benotung etc...)
Auch hier kann ich mich nur anschließen: Sehr fair. Bei 1-2 Themen hatte ich kleine Fehler drin, die ich jedoch auch korrigieren konnte. Die abschließende Fangfrage habe ich leider falsch beantwortet, aber das war anscheinend nicht ausschlaggebend. Es war zudem meine 1. mündliche Prüfung, jedoch wurde einem die Aufregung mit den leichten Einstiegsfragen schon etwas genommen.

Nr.PrüferFach
594 Reinefeld, Alexander Prof. Dr. Architektur paralleler und verteilter Systeme

Protokoll

= Datum der Prüfung
Februar 2013

= Benötigte Lernzeit als Empfehlung
1,5 - 2 Wochen \'lockere\' Vorbereitung bei ständiger Anwesenheit in der Vorlesung und Bearbeitung aller Übungsaufgaben.

= Verwendete Materialien (Bücher, Skripte etc...)
Vorrangig die Folien aus der Vorlesung. Zum Verständnis von Paxos Consensus / Commit außerdem sehr hilfreich:
\"Revisiting the PAXOS algorithm\" von Prisco 
\"Consensus on Transaction Commit\" von Gray und Lamport
\"Paxos Made Live An - Engineering Perspective\" von Chandra (Google)

Ansonsten fand ich auch das Buch \"Introduction to Reliable and Secure Distributed Programming\" von Cachin et. al. gut und verständlich. Bei anderen Themen (Konsistenzmodelle / Zeit) lohnt sich i.d.R. auch ein Blick in den Tanenbaum falls Unklarheiten bestehen sollten. 

= \"Atmosphäre\" der Prüfung / Verhalten der Beisitzer
Wie bereits beschrieben sehr freundlich und nett. Beisitzer fast ausschließlich passiv (aber nichtsdestotrotz nett :-))

= Prüfungsfragen
(1) Prozesse und Threads
-> Was ist ein Prozess? Was ist ein Thread? 
-> Wo liegen die Unterschiede zwischen beiden?

(2) Persistenz und Synchronität in verteilten Systemen
-> Bei Beispielskizzen / -schemata (aus den Folien der Vorlesung) erläutern
welche Eigenschaften vorliegen (synchron vs. asynchron, persistent vs. transient,
antwortbasiert / auslieferungsbasiert / empfangsbasiert?)

(3) Konsistenzprotokolle
-> Arten (Primary-based und Replicated-Write) nennen und die Funktionsweise der Vertreter (Remote Write, etc) erläutern
-> Wie kann eine globale Ordnung hergestellt werden? Reichen da nicht auch Vektoruhren aus? (-> Nein)

(4) Zeit in verteilten Systemen
-> Physische Uhren: Welche Algorithmen kennen sie?
-> Was ist der Unterschied zwischen Lamport Uhren und Vektoruhren?

(5) MapReduce 
-> Ablauf anhand eines Beispiels (Wörter zählen) erläutern
-> An welcher Stelle werden die meisten Datenübertragen (= Wo liegt die Bissektionsbreite)?

(6) Verfahren zur Nebenläufigkeitskontrolle 
-> Erläuterung von Sperren (+ 2PL) + Optimistische Sperrverfahren (Vorwärts-/Rückwärtsvalidation)

(7) CAP-Theorem
-> Was besagt das CAP-Theorem?
-> Wo ist Scalaris diesbezüglich einzuordnen?

= Note (Optional)
Sehr gut

= Fazit (Gute/schlechte Prüfung , angemessene Benotung etc...)
Leider waren fast alle Themen nicht gerade meine Lieblingsthemen, nichtsdestotrotz eine gute Prüfung (da kleine Fehler wie erwähnt verziehen werden). 
Bei der Notengebung haben sich die beiden lange besprochen und sich dann für die bessere Note entschieden :-). Ich hatte dabei den Eindruck, dass der Beisitzer (aufgrund meiner aktiven Mitarbeit in den Übungen und meiner Leistungen bei der Bearbeitung der Aufgaben) ein \'gutes Wort\' für mich eingelegt hat.

Nr.PrüferFach
641 Reinefeld, Alexander Prof. Dr. Architektur und Programmierung von Parallelrechnern

Protokoll

= Datum der Prüfung
Februar 2014
= Benötigte Lernzeit als Empfehlung
1 Woche
= Verwendete Materialien (Bücher, Skripte etc...)
Vorlesungsfolien
= \"Atmosphäre\" der Prüfung / Verhalten der Beisitzer
Angenehme Atmosphäre, teilweise auflockernde (nicht-prüfungsrelevante) Zwischenfragen
= Prüfungsfragen
* Einstieg mit fehlerbehaftetem OpenMP Programm
** Fehler zeigen
** Verbesserungen/Änderungen vorschlagen
* MESI / MESIF / MOESI
* Pipeline Abhängigkeiten - was gibt es?
* Datenabhängigkeiten am Beispiel erklären 
* Warum muss man WAW beachten? 
* Tomasulo Algorithmus, erklären - welche Abh. kann er auflösen, was nicht?
* Directories / GOLS (grob) erklären
* Ersetzungsstrategien im Cache - Implementierung +
Kosten?
* Xeon Phi ist Numa, Uma, ccNuma?
* Interconnects: Dragonfly erklären, warum Dragonfly?
= Note (Optional)
1.0
= Fazit (Gute/schlechte Prüfung , angemessene Benotung etc...)
Angenehme, lockere Prüfungsatmosphäre.
Fragen waren querbeet über den Vorlesungsinhalt
Erklären kann man anhand der Folien.
Konzepte sind wichtig

Nr.PrüferFach
643 Reinefeld, Alexander Prof. Dr. Architektur und Programmierung von Parallelrechnern

Protokoll

= Datum der Prüfung
	26.02.2014
= Benötigte Lernzeit als Empfehlung
	Ich hatte eine Woche Zeit und bin damit knapp hingekommen. Der Inhalt der Vorlesung war schon sehr breit gefächert und in den einzelnen Themengebieten auch relativ tief. Ich würde so ca 10 Tage empfehlen.
= Verwendete Materialien (Bücher, Skripte etc...)
	Folien der Vorlesung (sind aber teilweise relativ spartanisch) deswegen:
	* Paper die in der VL angegeben wurden, 
	* MIT-Vorlesung zu Computer-Architektur auf Youtube (für Cache-Assoziativität etc), 
	* Hennessy Patterson: computer architecture: a quantitative approach (zum Nachlesen von Definitionen)
	* Foliensatz zu virtuellem Speicher (von der UCSDCSE, Titel war \"CSE240A-MBT-L18-VirtualMemory\")
= \"Atmosphäre\" der Prüfung / Verhalten der Beisitzer
	Ernsthafte, aber nicht angespannte Atmosphäre, Beisitzer (der Übungsleiter) hat außer den Formalitäten am Anfang nichts gesagt
	
= Prüfungsfragen

Zeichnung einer MIPS-Pipeline ohne Register
	- Suchen Sie sich einen Befehl raus (ohne Register, Immediate, Displacement): Habe add R4,(R1) genommen (register indirect)
	- Erklären Sie anhand des Bildes wie der Befehl abgearbeitet wird
	
Caches
	- Cache Hierarchie erklären, Inklusive/Exklusive Caches, Write-Back/Write Through, Invalidation Update, Write around (wofür gut)
	- MESI erklären
	- Was für Probleme gibt es der organisation in CacheLines (er wollte auf False Sharing raus)
	
Bild aus Patterson/Hennessy mit Virtuellem L1 und physikalischem L2 Cache
		- Zeichnung erklären: TLB, Tag-Umwandlung, etc
		- Was sind vorteile/Nachteile von virtuellen Adressen

Netzwerke:
		- Vorteile/Nachteile erklären von Butterfly und Clos
		- Aufbau von Dragonfly, Warum virtuelle Router?
		- Was ist Bisektionsbanbreite, Wo würden Sie im Dragonfly messen?
= Note (Optional)
	1,0
= Fazit (Gute/schlechte Prüfung , angemessene Benotung etc...)
Herausfordernde Prüfung, Herr Reinefeld nimmt einen teilweise ganz schön in die Mangel, aber sehr faire Benotung (hatte selber mit was deutlich Schlechterem gerechnet, da ich vor allem bei den virtuellen Adressen Quark geredet habe)

Nr.PrüferFach
742 Reinefeld, Alexander Prof. Dr. Architektur und Programmierung von Parallelrechnern

Protokoll

= Datum der Prüfung
Februar 2016
= Benötigte Lernzeit als Empfehlung
1 Woche
= Verwendete Materialien (Bücher, Skripte etc...)
Skript
= "Atmosphäre" der Prüfung / Verhalten der Beisitzer
Die Atmosphäre war okay. Manchmal war nicht klar, was Reinefeld genau wollte, dann murmelte Noack als Beisitzer ein paar weitere Schlüsselworte zum Beantworten der Frage, welche manchmal auch geholfen haben. Mitunter stellte auch Noack noch Fragen, welche weder ich noch Reinefeld auf anhieb verstanden. Reinfeld tendiert auch zu viel zu sagen, obwohl man selber was dazu sagen hätte können und beantwortet auch manchmal seine eigenen Fragen.
= Prüfungsfragen
Rechnung c = a + b: Wie sehen die Instruktionen dafür für eine Kellermaschine aus (push a, push b, add) und wie für eine Registermaschine (load, add, store).
Wären a und b Vektoren, wie würde man hier mit SIMD vorgehen? Alignierung, Strip Mining, etc.

Abfolge von Assembler-Befehlen: Abhängigkeiten erklären, wie löst man diese auf? Braucht man Stalls? Was ist mit Exceptions?

Fehlerhaftes OpenMP Programm mit einer Summenbildung über die Elemente eines Vektors. (Summenvariable war private). Wie würde man das richtig machen? (Reduce) Was müsste man machen, wenn man keine reduce Operation hätte, kann man trotzdem besser als O(n) sein? (Ja, divide&conquer -> O(log n)) Wie lang ist so eine Cacheline typischerweise?

Write-Through erklären und Zustandsdiagramm aufzeichnen (welche Bits braucht man (Valid-Bit)).

Assemblerinstruktion memory indirect: Add R1, @(R3) - Was passiert hier? Dünnbesetzte Matrix, Array of Indices, kann man das auch mit SIMD benutzen? Was wäre worst case (Page Table lookup durch TLB => jeder Wert in anderer Page)

Unterschied zwischen MOESI und MESIF erklären.
= Note
1,3
= Fazit
Angemessene Benotung, mir musste ein paar mal auf die Sprünge geholfen werden, was aber nur wenig meine Note beeinflusst hat. 

Nr.PrüferFach
743 Reinefeld, Alexander Prof. Dr. Architektur und Programmierung von Parallelrechnern

Protokoll

= Datum der Prüfung
Februar 2016

= Benötigte Lernzeit als Empfehlung
1 Woche

= Verwendete Materialien (Bücher, Skripte etc...)
Vorlesungsfollien

= "Atmosphäre" der Prüfung / Verhalten der Beisitzer
Die Atmosphäre war in Ordnung. Die Fragen waren manchmal etwas schwierig zu verstehen, da hat der Beisitzer manchmal eine Nachfrage gestellt oder selbst nachgefragt, wie die Frage gemeint ist.

= Prüfungsfragen
Formel für Amdahls Law aufschreiben/herleiten. Formeln für Speedup/Effizienz aufschreiben und erklären. Dabei angewandte Fragen: Wie kann die Effizienz gesteigert werden? Können wir besser als linear in der Effizienz wachsen?
Allgemeine Fragen zu  Caching? Blockplatzierung, Blockidentifizierung, Verdrängungsstrategien, Schreibstrategien (write back / write through, write allocate / no write allocate). Taggingverfahren, insbesondere angewandte Fragen zu VIPT (virtually indexed, physically tagged). Welche Freiräume hat man bei der Gestaltung des Caches?
Snooping-Protokolle MESI, MOESI, MESIF. Unterschiede? Welches würde man einsetzen bei bestimmter Architektur? (Die Antwort hatte tatsächlich nichts mit einer bestimmten Architektur zu tun. Er wollte darauf hinaus, dass bei MESIF derjenige, der den Block im F-Zustand hat und verdrängt, niemanden darüber benachrichtigt und folglich alle anderen im S-Zustand verbleiben.)
Codebeispiel mit OpenMP-Programm. Es sollte überprüft werden, ob die Ausgabe das erwartete Ergebnis ausgibt. (Das gleiche Codebeispiel wie in dem Protokoll über mir.)


= Note (Optional)
1,7

= Fazit (Gute/schlechte Prüfung , angemessene Benotung etc...)
Insgesamt ist die Prüfung in Ordnung verlaufen, die Fragen waren teilweise nicht ohne. In der Auswertung wurden zwei Dinge genannt, bei denen nicht die erwartete Antwort kam. Das waren scheinbar die beiden Notenpunkte.

Nr.PrüferFach
777 Reinefeld, Alexander Prof. Dr. Verteilte Systeme und Algorithmen

Protokoll

= Datum der Prüfung
19.02.2017

= Benötigte Lernzeit als Empfehlung
1 Woche bei regelmäßigem Besuch der Vorlesung und Teilnahme an der Übung

= Verwendete Materialien (Bücher, Skripte etc...)
Skript
Wikipedia (Achtung, nicht jeder Artikel ist korrekt ;) )
MPI Übersicht auf http://mpich.org/static/docs/v3.2/www3/

= "Atmosphäre" der Prüfung / Verhalten der Beisitzer
Sehr angenehm, Beisitzer hat nichts gesagt, aber bei der Notenbesprechung ein gutes Wort für mich eingelegt

= Prüfungsfragen
Start mit Ausfalldetektoren (Arten, Voraussetzungen, Funktionsweise (Heartbeats, Eventually Perfect wartet auf synchrones System), Beweisidee für Korrektheit liefern)
Kurzer Einwurf zur Definition der drei verschiedenen Systeme
Wie kann man pp2p-Links implementieren?

Multicasts: 
        Erklärung von bem, rm, urm, stubborn, logged stubborn. Nachfragen zu Komplexität und Implementation
Wahlalgorithmen: 
        Echo erklären, Nachrichtenkomplexität nennen. Extinction erklären, Echo mit Extinction erklären, Nachrichtenkomplexität für Echo mit Extinction nennen.
	Chang-Roberts: Funktionsweise erklären, Nachrichtenkomplexität nennen.
	Frage bei beiden: Kann es sein, dass ein Prozess der nicht die höchste PID hat gewählt wird? --> Nein
Transaktionen:
	2PC erklären, Nachrichtentypen aufzeigen, Problem benennen (Absturz des TM, so dass RMs ihre Sperren halten)
	Als Verbesserung davon 3PC erklären (Bei beiden mit Skizze, Zustandsdiagramm hätte er aber auch gerne gesehen)
	Nachrichtenkomplexität der beiden Protokolle nennen und erklären
Paxos Commit:
	Kurz erklären wie der Paxos Commit funktioniert (Funktionsweise, Schwächen).
	Nachrichtenkomplexität nennen und erklären (kurz noch Fast Paxos genannt)
	Erklären warum der TM hier ausfallsicherer und damit besser ist als in 2PC und 3PC.

= Note (Optional)
1,3

= Fazit (Gute/schlechte Prüfung , angemessene Benotung etc...)
Schöne Prüfung, ein bis zwei mal haben Prof. Reinefeld und ich aneinander vorbei geredet, haben das aber klären können. Die Wertung war aber sehr fair.