Joshua Rutschmann 7 лет назад
Родитель
Сommit
7cc5315400
Аккаунт пользователя с таким Email не найден
1 измененных файлов: 35 добавлений и 0 удалений
  1. 35
    0
      hw8/task1/ANSWERS.md

+ 35
- 0
hw8/task1/ANSWERS.md Просмотреть файл

@@ -0,0 +1,35 @@
1
+# Proof of Work 2.0
2
+
3
+
4
+#### 1. Wie ist die Ausgabe von time zu interpretieren, wenn mehrere Threads laufen?
5
+
6
+Die user-time ist immer deutlich höher als die real-time.
7
+Das heißt, dass die Threads nicht nebenläufig, sondern parallel laufen.
8
+
9
+#### 2. Welche unterschiedlichen Ergebnisse erhalten Sie bei der Option timings? Wie stehen diese im Zusammenhang mit den Ergebnissen von time?
10
+
11
+
12
+Die Option `timings` variiert stark von den Ergebnissen von **time**. Das unix-Kommando time bezieht die Ausführungszeit des gesamten Codes mt ein.
13
+Also auch Aufrufe von *sys-info* oder zum Beispiel das Parsen der Argumente, welches *clap* durchführt.
14
+
15
+#### 3. Welche quantitativen Auswirkungen hat die Synchronisierung (Warum)? Welche Auswirkungen haben Ihre zusätzlichen Parameter?
16
+
17
+#### 4. Wie variieren -s und -w die Messungen?
18
+
19
+Mit `-s` und `-v`:
20
+  ```text
21
+  Sum Loops in Producers:       66106870
22
+  Sum Duration in Producers:    25s / 25160ms / 25160747us
23
+  ```
24
+
25
+Ohne `-s` und `-v`:
26
+
27
+Wartet der Consumer bis jeder Thread eine *Solution* gefunden hat. Dies ist sehr deutlich an den Loop-anzahl und der Zeit erkennbar.
28
+  ```text
29
+  Sum Loops in Producers:       147581082
30
+  Sum Duration in Producers:    37s / 37244ms / 37244327us
31
+  ```
32
+ 
33
+#### 5. Welche sonstigen Arten der Synchronisierung bieten sich für die Problemstellung "Lösung gefunden (-s)" an? Was sind deren Vor- und Nachteile gegenüber Ihrer gewählten Lösung?
34
+
35
+Man könnte anstatt dem Arc und dem AtomicBool im Consumer aktiv alle Threads töten, sobald eine Lösung gefunden wurde. 

Загрузка…
Отмена
Сохранить