1
00:00:07,890 --> 00:00:13,670
Moin zur Folge 14 von einfach 
komplex ja Moin, wir sind heute 

2
00:00:13,680 --> 00:00:16,840
wieder in unserem Büro. 
Burkhard und ich, Burkhard, Wie 

3
00:00:16,850 --> 00:00:19,510
fandest du das letzte Woche mit 
Timo gemeinsam aufzunehmen? 

4
00:00:19,550 --> 00:00:21,540
Ja, hat super Spaß gemacht. 
Ich glaube, wir werden das 

5
00:00:21,550 --> 00:00:23,680
Konzept nochmal übernehmen, 
irgendwie, dass wir Gäste 

6
00:00:23,690 --> 00:00:26,460
einladen, war richtig gut und 
ich glaube, es ging auch mit der

7
00:00:26,470 --> 00:00:29,460
Qualität und dem Remote 
Aufnahmen habe ich einigermaßen 

8
00:00:29,470 --> 00:00:32,020
gemeistert. 
Schauen wir mal heute sind wir 

9
00:00:32,030 --> 00:00:35,440
wieder im gewohnten Setup hier, 
richtig da gehen wir auch so. 

10
00:00:35,450 --> 00:00:39,270
Ich fand es super cool und weiß 
noch nicht h 13 IT Sicherheit 

11
00:00:39,280 --> 00:00:43,070
mit Timo Billigkeit. 
Heute soll es wieder etwas 

12
00:00:43,080 --> 00:00:45,610
technischer werden. 
Auf Wunsch von Burkhard Ja, 

13
00:00:45,620 --> 00:00:48,210
sonst haben wir wollen neben der
Software auch mal das Thema 

14
00:00:48,220 --> 00:00:52,770
Hardware anreißen, insbesondere 
die CPU und die GPU. 

15
00:00:52,810 --> 00:00:57,050
Was das alles bedeutet, das 
sprechen wir später noch an die 

16
00:00:57,060 --> 00:01:00,730
Themen grundsätzlich oder die 
Begriffe, die ihr und 

17
00:01:00,740 --> 00:01:04,060
insbesondere auch nach dem 
Podcast kennen und vielleicht 

18
00:01:04,099 --> 00:01:07,570
besser verstehen sollte, sind 
einmal das Programm also was ist

19
00:01:07,580 --> 00:01:09,860
eigentlich ein Programm? 
Salzburg hat mir das gesagt? 

20
00:01:09,900 --> 00:01:13,660
Im Vorgespräch dann die Threads,
die sogenannten und die 

21
00:01:13,700 --> 00:01:17,410
Läufigkeit und Parallelisierung 
einmal von Threads. 

22
00:01:17,600 --> 00:01:20,780
Von Programmen und von 
Webservern wenn ich dich richtig

23
00:01:20,790 --> 00:01:23,190
verstanden habe Burkhard ja ja, 
hast du richtig verstanden? 

24
00:01:23,200 --> 00:01:24,660
Das war eine ganze Menge 
Kauderwelsch. 

25
00:01:24,670 --> 00:01:27,640
Wenn man das alles noch gar 
nicht gehört vorher von daher 

26
00:01:27,650 --> 00:01:32,240
gibt es noch mal einen kurzen 
Überblick darüber, warum diese 

27
00:01:32,250 --> 00:01:35,280
Themen wichtig sind und und und,
was es sich da handelt, bevor 

28
00:01:35,290 --> 00:01:39,000
wir dann richtig einsteigen. 
Software und Programme sind ja 

29
00:01:39,010 --> 00:01:41,160
ganz, ganz unterschiedlich. 
H riesenspektrum ich kann 

30
00:01:41,170 --> 00:01:44,050
einfaches Skript haben, was mal 
irgendwie was weiß ich nen ne 

31
00:01:44,420 --> 00:01:46,780
Excel Tabelle umsetzen in 
anderes Format das läuft einmal 

32
00:01:46,790 --> 00:01:50,740
durch so fertig hab ich gar 
keinen Anspruch an ob das jetzt 

33
00:01:50,750 --> 00:01:52,780
eine Minute. 
Oder 2 ist mir egal. 

34
00:01:53,350 --> 00:01:56,480
Ich habe andere Anwendungen wie 
Weboberfläche, wo es vielleicht 

35
00:01:56,490 --> 00:01:58,290
irgendwann kommt, vielleicht ein
bisschen. 

36
00:01:58,300 --> 00:02:00,920
Was läuft nicht ruckelt? 
Und dann habe ich ganz andere 

37
00:02:00,930 --> 00:02:04,970
Anwendungen schon mal gesprochen
sowie Machine Learning, KI oder 

38
00:02:05,480 --> 00:02:08,970
auch Krypto Mining Beispiele 
nennen, wo es, wo es ziemlich 

39
00:02:08,979 --> 00:02:12,450
ziemlich drauf ankommt, dass das
auch schnell passiert und wo 

40
00:02:12,460 --> 00:02:15,910
richtig viel zahlen quasi 
richtig viele Floating Point 

41
00:02:15,920 --> 00:02:19,230
Operations man sagt Flops 
ausgeführt werden müssen in 

42
00:02:19,240 --> 00:02:21,450
möglichst kurzer Zeit ja und 
deswegen habe ich habe also 

43
00:02:21,460 --> 00:02:25,770
quasi ein Riesenspektrum an. 
Ja, an Requirements an die an 

44
00:02:25,780 --> 00:02:28,810
die Hardware auch die jetzt so n
Stück Software haben muss ja und

45
00:02:28,820 --> 00:02:32,050
dafür gibt es dann verschiedene 
erstmal ne Software verschiedene

46
00:02:32,060 --> 00:02:33,910
Mittel und Wege es zu 
realisieren und es gibt aber 

47
00:02:33,920 --> 00:02:35,990
auch verschiedene Hardware, auf 
denen ich das dann quasi 

48
00:02:36,000 --> 00:02:38,330
ausführen lassen kann und so 
weiter das soll n bisschen sein.

49
00:02:38,340 --> 00:02:43,180
Heute denke ich OK es geht 
darum, ja mal zu beschreiben, 

50
00:02:43,220 --> 00:02:46,890
wie bestimmte Arten von 
Programmen eigentlich operieren 

51
00:02:46,900 --> 00:02:50,330
und welche Verfahren dabei 
irgendwie auch zum Einsatz 

52
00:02:50,340 --> 00:02:53,090
kommen. 
Genau wie sieht das denn tun und

53
00:02:53,100 --> 00:02:56,590
wie die Rechenoperationen 
ausgeführt werden hintereinander

54
00:02:56,600 --> 00:03:00,190
sequentiell oder oder? 
Parallel als solche Themen OK, 

55
00:03:00,730 --> 00:03:03,240
wir fangen wir an, also magst du
vielleicht mal erklären, was so 

56
00:03:03,250 --> 00:03:05,760
ein Thread ist oder nee, wir 
wollten glaube ich Programm 

57
00:03:05,770 --> 00:03:08,750
sogar anfangen, ne einfach mal 
ganz stumpf was ist denn 

58
00:03:08,760 --> 00:03:12,070
eigentlich ein Computerprogramm?
Ja genau kann man's erzählen 

59
00:03:12,080 --> 00:03:16,690
also oder fangen wir nochmal an 
was überhaupt die CPU ja die die

60
00:03:16,700 --> 00:03:19,480
Central Processing Unit ja das 
hat jeder schon mal gehört C 

61
00:03:19,490 --> 00:03:22,860
ohne.co Gehalt eigentlich nichts
so ja so Arbeitsspeicher 

62
00:03:22,870 --> 00:03:25,830
manchmal nee, das ist genau 
nicht der Arbeitsspeicher 

63
00:03:25,840 --> 00:03:29,790
Arbeitsspeicher, der speichert 
quasi die Daten und die CPU 

64
00:03:29,990 --> 00:03:32,920
führt quasi die Rechnungen aus, 
die in dem am Ende haben. 

65
00:03:32,930 --> 00:03:35,530
Wir hatten auch mal anfangen und
so weiter. 

66
00:03:35,830 --> 00:03:39,140
Und es müssen im Prinzip ja 10 
immer wieder neu 

67
00:03:39,150 --> 00:03:41,850
zusammengerechnet werden, aus 
verschiedensten Tausenden 

68
00:03:41,860 --> 00:03:45,110
Gründen und das passiert in der 
CP und der Antrag Processing 

69
00:03:45,120 --> 00:03:48,770
Unit ja, der Speicher erhält 
quasi deine ganzen Daten, die 

70
00:03:49,350 --> 00:03:51,460
die zur Laufzeit anfallen und 
überhaupt ja. 

71
00:03:52,250 --> 00:03:55,480
Genau und im einfachsten 
einfachsten Falle haben wir halt

72
00:03:55,490 --> 00:04:00,760
n Programm was was halt, wenn es
dann startet, wenn es quasi wenn

73
00:04:00,770 --> 00:04:05,600
es läuft benutzt halt. 
Die CPU ja, und zwar im 

74
00:04:05,610 --> 00:04:10,520
einfachsten Falle ein, benutzt 
einen Kern der CPU und zwar 

75
00:04:10,530 --> 00:04:11,910
sequentiell. 
Also wenn wir jetzt kein 

76
00:04:11,920 --> 00:04:15,510
spezielles Programm haben ganz 
wir haben einfach durchläuft ja 

77
00:04:15,550 --> 00:04:17,980
wenn du jetzt programmierst, 
dann passiert tatsächlich 

78
00:04:17,990 --> 00:04:20,160
Schritt für Schritt. 
Das wird entweder kompiliert und

79
00:04:20,170 --> 00:04:21,910
umgesetzt in Maschinensprache 
oder das Macht Interpreter. 

80
00:04:21,920 --> 00:04:25,720
Aber am Ende arbeitet die CPU 
sequentiell Schritt für Schritt 

81
00:04:25,730 --> 00:04:29,660
diese ganzen Anweisungen ab, die
quasi im Quelltext des des des 

82
00:04:29,670 --> 00:04:33,270
dieser dieser Software quasi 
festgelegt sind OK und kann dann

83
00:04:33,280 --> 00:04:36,380
wenn du nichts Spezielles machst
auch erstmal nur einen einen 

84
00:04:36,430 --> 00:04:39,480
Kern. 
Sagt man der CPU benutzen ja 

85
00:04:39,530 --> 00:04:43,200
früher gab es früher ganz früher
hatten die CPU sowieso nur einen

86
00:04:43,210 --> 00:04:45,890
Kern, deswegen hätte man da 
jetzt nicht so drauflegen 

87
00:04:45,900 --> 00:04:48,500
müssen, aber heute du kannst das
Gerät also wenn du heute 

88
00:04:48,510 --> 00:04:51,480
irgendwie im Internet guckst so 
und willst einen Laptop kaufen 

89
00:04:51,490 --> 00:04:54,320
oder Desktop auch egal, dann 
findest du das immer, dass da 

90
00:04:54,330 --> 00:04:57,440
irgendwie steht ja das ist ein 
Dual Core oder Quad Core oder 

91
00:04:57,450 --> 00:05:00,700
sogar was weiß ich noch mehr 
octacore und sofort? 

92
00:05:01,340 --> 00:05:03,800
Genau, und das heißt eigentlich,
dass du im Prinzip gar nicht nur

93
00:05:03,870 --> 00:05:07,320
eine CPU hast, sondern 
tatsächlich 4 oder 8 oder noch 

94
00:05:07,330 --> 00:05:10,460
mehr gleichzeitig. 
Und zwar physikalisch im Prinzip

95
00:05:10,470 --> 00:05:13,500
kann man sich so vorstellen, 
also das sind quasi die kleine 

96
00:05:13,510 --> 00:05:15,880
Chips prozessoreinheiten quasi 
und dann hast du da nicht nur 1 

97
00:05:15,890 --> 00:05:18,780
sondern halt n ja, nachdem 
wieviel Geld du auch in der 

98
00:05:18,790 --> 00:05:22,360
Tasche hast ja OK und ein 
Programm belegt dann immer einen

99
00:05:22,370 --> 00:05:26,110
eine CPU genau für einen ja 
wahrscheinlich heutzutage sehr 

100
00:05:26,120 --> 00:05:28,450
kurzen Zeitraum, weil die ja in 
sich dann auch sehr schnell 

101
00:05:28,850 --> 00:05:32,890
sind, aber parallel passiert 
erstmal nichts auf einer CPU nee

102
00:05:32,930 --> 00:05:35,800
genau also genau du könntest 
quasi also wenn du ich sag mal 

103
00:05:35,810 --> 00:05:40,230
was du hast einen Dual Core, 
also 2 CPUS und jetzt lassen wir

104
00:05:40,240 --> 00:05:41,720
kurz mal weg, dass die immer so 
ne Art Hypertrading 

105
00:05:41,730 --> 00:05:43,150
typischerweise haben und so 
weiter. 

106
00:05:43,560 --> 00:05:46,800
Sagen wir mal Deinen Computer 
hat quasi 2 CPUS und die 

107
00:05:46,810 --> 00:05:50,500
Schreibprogramm was, das kann ja
irgendwie quatschen, so dass 

108
00:05:50,510 --> 00:05:53,360
nichts Ernstes sein, aber was 
irgendwie Rechnung macht in 

109
00:05:53,580 --> 00:05:56,540
einer Schleife zum Beispiel und 
in diese CPU voll auslastet, 

110
00:05:56,550 --> 00:06:00,960
dann würdest du quasi wenn du 
deine Windows oder Linux guckst 

111
00:06:00,970 --> 00:06:04,430
wie ist die Auslastung von der C
würdest du quasi nur 50% sehen 

112
00:06:04,440 --> 00:06:09,180
insgesamt wenn du 2 hast, weil 
die anderen 50% das kennt dein 

113
00:06:09,190 --> 00:06:11,630
Programm dann erstmal nicht, 
wenn s ganz trivial geschrieben 

114
00:06:11,640 --> 00:06:14,270
hast. 
Ja, das ist sowieso so, dass die

115
00:06:14,280 --> 00:06:16,100
CPUS ist halt praktisch mehr zu 
haben. 

116
00:06:16,110 --> 00:06:18,310
Aber es gibt ja. 
Es ist ja nicht nur dein 

117
00:06:18,320 --> 00:06:22,580
Programm aktiv während während 
irgendeiner sondern zig andere 

118
00:06:22,590 --> 00:06:25,210
Sachen aus deiner noch offen 
ganz viele Tabs und so weiter 

119
00:06:25,670 --> 00:06:28,530
und die CPUS die teilen sich 
quasi einfach die Arbeit auf ja 

120
00:06:28,540 --> 00:06:31,870
und es ist auch nicht so, dass 
die CPU dann nur dein Programm 

121
00:06:31,880 --> 00:06:35,190
macht, aber wenn du das Halt 
laufen hast und es hat viel zu 

122
00:06:35,200 --> 00:06:38,280
tun dass also gibt es C viel 
Arbeit, dann geht die natürlich 

123
00:06:38,290 --> 00:06:42,050
hoch in der in der Prozent 
Auslastung so der hat schon also

124
00:06:42,060 --> 00:06:45,230
das versteh ich jetzt so, dass 
die ja sowieso immer was zu tun 

125
00:06:45,240 --> 00:06:47,690
hat genau und das System am 
Laufen zu halten mit 

126
00:06:47,700 --> 00:06:50,420
irgendwelchen ja weiß ich nicht 
Prozess oder Programm, die 

127
00:06:50,430 --> 00:06:51,550
vielleicht auch zum 
Betriebssystem. 

128
00:06:51,620 --> 00:06:54,220
Hör richtig, wenn du jetzt sagst
dein Programm, du meinst du wenn

129
00:06:54,230 --> 00:06:57,800
ich jetzt 1 starte und ja genau 
genau also man versucht 

130
00:06:57,810 --> 00:07:01,220
natürlich die Betriebssysteme 
auch, dass die ich sag mal, dass

131
00:07:01,230 --> 00:07:03,680
die unterschwellige Nutzung der 
CDU möglichst gering gehalten 

132
00:07:03,690 --> 00:07:06,440
wird, denn das verursacht ja 
auch Stromkosten und so weiter. 

133
00:07:06,450 --> 00:07:10,080
Ne also wenn die CPU stark läuft
und zieht dann Rechner viel mehr

134
00:07:10,090 --> 00:07:13,080
Strom an der Stelle ja und 
verbraucht beim Laptop ist da 

135
00:07:13,090 --> 00:07:16,370
kritisch, ja dann wenn du 
ständig den Laptop auf vollen 

136
00:07:16,380 --> 00:07:19,810
100% laufen lässt, dann dann ist
dein Akkulaufzeit wahrscheinlich

137
00:07:19,820 --> 00:07:21,550
nur noch ein Zehntel von der 
eingegebenen. 

138
00:07:21,560 --> 00:07:24,560
Ja das ist so und deswegen 
versucht man, dass man quasi 

139
00:07:24,910 --> 00:07:27,520
wenn nicht gerade irgendwas 
Schwerwiegendes an Rechnungen 

140
00:07:27,530 --> 00:07:29,750
ansteht. 
Das ganze System relativ leise 

141
00:07:29,760 --> 00:07:32,850
im Hintergrund mit wenig CP Last
läuft ja, das will man 

142
00:07:32,860 --> 00:07:35,550
eigentlich optimieren, ne soweit
verstanden. 

143
00:07:36,580 --> 00:07:39,230
Ja genau und wenn man dann aber,
wenn man jetzt quasi, also wenn 

144
00:07:39,240 --> 00:07:43,010
man jetzt mal n Programm hat, 
was man wo du einfach mehr Power

145
00:07:43,020 --> 00:07:45,930
braucht mehr Rechenpower und das
passiert dann, ich hab schon 

146
00:07:45,940 --> 00:07:49,740
bisschen geübt bestimmte 
Bereiche wenn du zum Beispiel in

147
00:07:49,750 --> 00:07:52,330
der Bildverarbeitung unterwegs 
bist oder in der Bioinformatik, 

148
00:07:52,340 --> 00:07:56,590
wo extrem viele Daten also ich 
kenne vielleicht so ja, also 

149
00:07:56,600 --> 00:07:59,230
wenn zum Beispiel eine 
Genomanalyse irgendwas ist ja 

150
00:07:59,240 --> 00:08:02,360
Wahnsinn, was da an den A also 
das sind ja immer die einzelnen 

151
00:08:02,370 --> 00:08:04,790
Buchstaben g und so weiter und 
dann aber Millionen ja 

152
00:08:04,800 --> 00:08:08,240
Milliarden davon irgendwie 
durchsetzt und das muss 

153
00:08:08,250 --> 00:08:11,510
angeguckt werden, ne? 
Dann musst du extrem viel 

154
00:08:11,520 --> 00:08:13,960
gerechnet werden, ne? 
Oder auch Krypto Mining ist ja 

155
00:08:13,970 --> 00:08:16,100
so ein Thema Kryptowährung das 
hat man auch schon gehört, da 

156
00:08:16,110 --> 00:08:19,590
gibt es ja auch diese. 
Diese Algorithmen mit der mit 

157
00:08:19,600 --> 00:08:22,040
dem Blockchain und so weiter 
Proof of Work da steckt schon 

158
00:08:22,050 --> 00:08:25,120
work schon drin, also da müssen 
immer wieder kryptographische 

159
00:08:25,130 --> 00:08:26,920
Hashes gerechnet werden ist 
extrem rechenintensiv. 

160
00:08:26,930 --> 00:08:30,060
Da brauchen wir vielleicht gar 
nicht genau erklären, was das 

161
00:08:30,070 --> 00:08:32,340
bedeutet, aber das ist ne genau 
rechenintensive Rechenintensiver

162
00:08:32,350 --> 00:08:35,260
und dann die letzte vielleicht 
die letzte Kategorie, also unser

163
00:08:35,270 --> 00:08:39,770
ganzes Machine Learning und vor 
allen Dingen die KI also ne KI 

164
00:08:39,780 --> 00:08:43,960
beziehungsweise n Gehirn 
künstliches Gehirn sag ich immer

165
00:08:43,970 --> 00:08:47,400
gerne zu trainieren ist halt 
extrem rechenintensiv, da gab es

166
00:08:47,410 --> 00:08:49,940
noch ne andere Folge haben 
gesagt dann immer wieder in 

167
00:08:49,950 --> 00:08:52,150
Loops. 
Und ständig wieder müssen diese 

168
00:08:52,160 --> 00:08:55,200
Gewichte quasi ausgerechnet 
werden und angepasst werden 

169
00:08:55,210 --> 00:08:56,470
gegen den Trainingsdaten und so 
weiter. 

170
00:08:57,750 --> 00:09:00,690
Das braucht extrem viel 
Rechenleistung und und da, da 

171
00:09:00,700 --> 00:09:03,800
willst du das vielleicht dann 
nicht nur auf einem Kern 

172
00:09:03,810 --> 00:09:05,940
irgendwie sequenziell 
hintereinander andauernd 

173
00:09:05,950 --> 00:09:08,980
rechnen, da kommst du da nicht 
da kommst du nicht weiter OK, 

174
00:09:08,990 --> 00:09:12,810
dann würde man quasi lange vorm 
Computer sitzen, immer sehr 

175
00:09:12,820 --> 00:09:15,200
lange vor dem Computer sitzen, 
genau also es gibt tatsächlich 

176
00:09:15,210 --> 00:09:17,980
also könnte man sich theoretisch
vorstellen, man hat nur eine CPU

177
00:09:17,990 --> 00:09:21,690
mit einem Kern und man macht 
dort sag ich mal eine 

178
00:09:21,730 --> 00:09:23,830
rechenintensive also was ist 
Krypto Mining zum Beispiel? 

179
00:09:25,120 --> 00:09:27,120
Geht das denn also? 
Man muss nur lange warten oder 

180
00:09:27,130 --> 00:09:30,370
kann sich vorstellen überhaupt 
nicht also du kommst, du kommst 

181
00:09:30,380 --> 00:09:33,950
schon ans Ziel, aber also, es 
gibt die hatten das mal, ich hab

182
00:09:33,960 --> 00:09:36,430
das auch mal selber gemacht, als
ich noch im Max Planck Institut 

183
00:09:36,440 --> 00:09:39,790
promoviert, haben wir 
Bildverarbeitung gemacht, da war

184
00:09:39,800 --> 00:09:41,900
das Problem, dass du Millionen 
von kleinen einzelmolekül 

185
00:09:41,910 --> 00:09:44,930
aufnahmen hattest, so kleine 
Bildchen einfach so 

186
00:09:44,940 --> 00:09:47,870
briefmarkengröße, aber halt 
richtig viel davon und die 

187
00:09:47,880 --> 00:09:50,930
mussten quasi berechnet werden 
und 3 d rekonstruiert werden. 

188
00:09:50,940 --> 00:09:54,950
Das kannst du alles machen mit 
einer CPU dann dauert das Halt 

189
00:09:54,960 --> 00:09:58,030
20000 Jahre oder irgendwas bist 
du eine Rechnung durch hast? 

190
00:09:58,740 --> 00:10:00,820
Also das wird schon irgendwann 
auch fertig, aber das ist dann 

191
00:10:00,830 --> 00:10:03,930
halt trotzdem nicht mehr 
praktikabel, weil Promotion wird

192
00:10:03,940 --> 00:10:05,810
in 3 Jahren durch haben und 
nicht nur einmal gerechnet. 

193
00:10:05,820 --> 00:10:07,980
Ja alles klar, jetzt gerade 
interessiert. 

194
00:10:08,980 --> 00:10:13,100
Und wenn du dann nicht spezielle
Hardware benutzt oder spezielle 

195
00:10:13,110 --> 00:10:17,110
Techniken der des Multithreading
oder des mehrfachen Programmes 

196
00:10:17,620 --> 00:10:21,760
aufrufen und so weiter, also 
Parallelität quasi wenn du das 

197
00:10:21,770 --> 00:10:25,640
nicht nutzt, kommst du da nicht 
ans Ziel ja OK, jetzt hast du 

198
00:10:25,650 --> 00:10:28,940
die Begriffe Multithreading 
reingeschmissen und wir wissen 

199
00:10:28,950 --> 00:10:32,160
noch gar nicht was n Thread ist 
wissen wir noch nicht genau und 

200
00:10:32,210 --> 00:10:37,990
Parallelität. 
Das und und und Hardware also 33

201
00:10:38,000 --> 00:10:40,960
Themen 2 bis 3 Themen auf der 
Software Seite des Threading und

202
00:10:40,970 --> 00:10:44,400
auf der Hardware Seite, 
vielleicht in C oder irgendwas 

203
00:10:44,410 --> 00:10:47,480
anderes, was ich benutze ja 
genau die jetzt aufdröseln ja 

204
00:10:47,490 --> 00:10:50,820
dröseln wir auf, also fangen 
wir, man kann halt quasi wenn 

205
00:10:50,830 --> 00:10:52,320
man Software entwickelt, dann 
kann man. 

206
00:10:53,260 --> 00:10:55,830
Heute eigentlich fast in jeder 
Programmiersprache stimmt nicht 

207
00:10:55,840 --> 00:10:58,090
ganz. 
Fast in jeder Programmiersprache

208
00:10:58,100 --> 00:11:00,240
kann man aktiv sagen soll, was 
auf. 

209
00:11:01,220 --> 00:11:05,290
Diesen Teil des Programms diese 
Rechnungen, die möchte ich, dass

210
00:11:05,300 --> 00:11:09,110
du die Ausführst in einem 
anderen Thread zum Beispiel ne 

211
00:11:09,120 --> 00:11:11,690
also du schreibst ein Programm 
da startet ein Programm hat 

212
00:11:11,700 --> 00:11:14,390
immer n Main Thread heißt das 
quasi, das ist also quasi 

213
00:11:14,400 --> 00:11:17,540
einfach ein ausführungs Strang 
kannst du dir vorstellen und 

214
00:11:17,550 --> 00:11:20,170
dann kannst du sagen jetzt 
liebes Programm bitte diesen 

215
00:11:20,180 --> 00:11:23,830
Teilaspekt. 
Und man sagt auf dem deutschen 

216
00:11:23,840 --> 00:11:28,170
Nebenläufig also quasi man kann 
sich vorstellen wie sowieso ne 

217
00:11:28,180 --> 00:11:32,090
Schiene in einer weiche so und 
das eine geht weiter und 

218
00:11:32,100 --> 00:11:35,220
nebenläufig passiert noch was 
anderes gleichzeitig ja und dann

219
00:11:35,230 --> 00:11:38,610
kannst du quasi was ausgliedern,
quasi während du in einem 

220
00:11:38,620 --> 00:11:41,680
Programm bist und dann machst du
einen Thread auf, sagt man einen

221
00:11:41,690 --> 00:11:44,850
weiteren Thread der berechnet 
zum Beispiel irgendwas ja. 

222
00:11:45,910 --> 00:11:48,640
So und jetzt, wenn du bei der 
CDU bist, dann kannst du das, du

223
00:11:48,650 --> 00:11:50,620
kannst es, technisch kannst du 
beliebig viele Threads 

224
00:11:50,630 --> 00:11:54,540
aufmachen, aber faktisch 
wirklich gleichzeitig kann nur 

225
00:11:54,550 --> 00:11:57,770
so viel passieren wie der 
Hardware das erlaubt also ich 

226
00:11:57,780 --> 00:12:01,140
sag mal was du hast ein Dual 
Core mit Hyper Threading mit 

227
00:12:01,150 --> 00:12:06,230
zweifachem Hypertrading, dann 
hast du quasi im Prinzip 4 4 

228
00:12:06,270 --> 00:12:10,400
strenge die du gleichzeitig 
bespielen kannst zur Verfügung 

229
00:12:10,440 --> 00:12:13,080
mal ganz von der Hardware 
gesehen, dann könntest du also 

230
00:12:13,090 --> 00:12:16,390
dein Programm aufteilen das s 4 
Threads gleichzeitig benutzt und

231
00:12:16,400 --> 00:12:19,560
dann machst du halt quasi 4 
Rechnungen gleichzeitig 

232
00:12:19,570 --> 00:12:21,390
tatsächlich nebeneinander 
passieren dann wirklich 

233
00:12:21,800 --> 00:12:25,740
gleichzeitig ja obwohl wir nur 2
Kerne haben, genau wo wir nur 2 

234
00:12:25,750 --> 00:12:29,150
Kerne haben. 
Dieses High wenigstens ich 

235
00:12:29,160 --> 00:12:32,590
glaube im globalen Sprech du 
hast vielleicht nachgeguckt 

236
00:12:32,810 --> 00:12:35,840
simultaneous Multi threading 
genau danke, dass der Begriff 

237
00:12:35,850 --> 00:12:41,200
genau simultanes Multi Ding, das
ist quasi ja, das sind das, da 

238
00:12:41,210 --> 00:12:42,570
kann ich dir jetzt nicht ganz 
genau sagen. 

239
00:12:42,580 --> 00:12:44,490
Wie funktioniert moderne 
Technologie? 

240
00:12:44,530 --> 00:12:47,490
Aber es wirkt so, als hättest du
nicht nur 2 sondern tatsächlich 

241
00:12:47,500 --> 00:12:50,440
auch 4 also dein Programm 
passieren quasi 4 Stränge 

242
00:12:50,530 --> 00:12:54,220
gleichzeitig, das ist schon mal 
besser als nix, da kannst du 

243
00:12:54,230 --> 00:12:57,790
dann machen und wenn du das 
nutzt tatsächlich Programm, 

244
00:12:57,800 --> 00:13:00,820
schreibst dann tatsächlich sagen
wir du hättest 2 Kerne mit 

245
00:13:00,830 --> 00:13:04,140
diesem zweifachen Trading und du
schreibst Programm was alle 

246
00:13:04,150 --> 00:13:08,420
diese 4 Threads voll bespielt, 
dann ist dein Rechner auch am 

247
00:13:08,430 --> 00:13:11,580
pusten so. 
Dann hat er 100% CPU Last, dann 

248
00:13:11,590 --> 00:13:13,000
geht es ins Eingemachte. 
Genau. 

249
00:13:14,210 --> 00:13:17,480
Das ist schon mal nicht so 
schlecht und aber für viele 

250
00:13:17,490 --> 00:13:20,860
Anwendungen immer noch nicht 
ausreichend da und da kommen die

251
00:13:20,870 --> 00:13:24,630
GUN bisschen ins Spiel. 
Und jetzt muss man einmal was 

252
00:13:24,640 --> 00:13:28,380
ist überhaupt u ist die 
Graphical Processing Unit ja die

253
00:13:28,390 --> 00:13:31,630
Grafikkarte. 
So und die Grafikkarte hat einen

254
00:13:31,640 --> 00:13:35,290
eigenen Prozessor, also wie der 
der CPU ist quasi das das das 

255
00:13:35,300 --> 00:13:39,070
Gehirn von einem Computer, sag 
ich mal und die Grafikkarte GPU 

256
00:13:39,080 --> 00:13:41,580
ist quasi das Gehirn von der 
Grafikkarte, die dann quasi die.

257
00:13:42,480 --> 00:13:44,620
Ja, dies ist eigentlich dafür 
gedacht gewesen natürlich, dass 

258
00:13:44,630 --> 00:13:47,330
du dann einen Output hast 
Display an die Grafikkarte ist 

259
00:13:47,340 --> 00:13:49,900
ja auch das kennt man ja auch 
hinten normalerweise das HDMI 

260
00:13:49,940 --> 00:13:52,740
displayport was, was nicht alles
so dann steckst du halt dein 

261
00:13:52,750 --> 00:13:55,260
Bildschirm dran soll ich kurz 
unterbrechen? 

262
00:13:55,580 --> 00:13:59,450
Das ist gar nicht allen so klar,
dass wenn ich dann HDMI Kabel 

263
00:13:59,460 --> 00:14:02,590
dranstecke, dass das quasi ein 
Eingang ist, die Grafikkarte zur

264
00:14:02,600 --> 00:14:04,470
Verfügung stellt. 
Also mir war das zum Beispiel 

265
00:14:04,480 --> 00:14:07,630
ganz lange gar nicht klar, dass 
das direkt miteinander 

266
00:14:07,640 --> 00:14:11,370
zusammenhängt und hat dann jeder
Rechner eine Grafikkarte heute 

267
00:14:11,380 --> 00:14:13,620
wahrscheinlich schon früher war 
das auch so weiß ich nicht. 

268
00:14:13,630 --> 00:14:16,390
Ja also es gibt also man kennt 
sich. 

269
00:14:17,140 --> 00:14:22,200
Die Gamer, Kollegen und so 
weiter, die hatte ja das ja ja 

270
00:14:22,210 --> 00:14:24,750
genau, also im Prinzip technisch
hat eigentlich jeder Rechner 

271
00:14:24,760 --> 00:14:27,850
eine Grafikkarte, aber manchmal 
ist es so, dass du bei diesen 

272
00:14:27,860 --> 00:14:31,100
ganz einfachen Rechnern ist 
quasi die Grafikkarte nicht mehr

273
00:14:31,110 --> 00:14:34,020
so sichtbar als einzelne 
Grafikkarte tatsächlich, sondern

274
00:14:34,030 --> 00:14:36,530
ist quasi mit auf dem Mainboard,
wie man es nennt, also wie 

275
00:14:36,540 --> 00:14:38,850
immer. 
Wenn du den Laptop aufschraubt 

276
00:14:38,860 --> 00:14:41,130
oder auch wenn du wenn du 
normalen Rechner reinguckst, 

277
00:14:41,140 --> 00:14:43,850
mindestens ein Mainboard, ne 
große so große Platte und 

278
00:14:43,860 --> 00:14:47,210
manchmal ist die Grafikkarte 
damit drauf gelötet, sondern du 

279
00:14:47,220 --> 00:14:49,060
siehst sie nicht wirklich ja, 
dann hat sie auch meistens nicht

280
00:14:49,070 --> 00:14:52,840
so viel Power, aber wenn du 
vielleicht hast gesehen, also im

281
00:14:52,850 --> 00:14:55,170
Fernsehen oder irgendwas also 
wenn die Gamer kommen und dann 

282
00:14:55,180 --> 00:14:57,670
gibt es da muss man eine Firma 
nennen oder muss eigentlich 2 

283
00:14:57,680 --> 00:15:01,300
nedja also die Nvidia 
Grafikkarten so das ist so ein 

284
00:15:01,310 --> 00:15:05,260
richtiges Ding, ne also so weiß 
ich nicht so groß wie ein Buch 

285
00:15:05,270 --> 00:15:08,710
oder ja, genau so. 
Ja ein kleines Buch, sondern ein

286
00:15:08,720 --> 00:15:11,330
Handbuch und dann auch schön 
dich ja und das ist ein 

287
00:15:11,340 --> 00:15:13,910
richtiges Stück. 
Hardware und da steckt halt die 

288
00:15:13,920 --> 00:15:17,060
GPU drin. 
Und der Zyklus eigentlich hast 

289
00:15:17,070 --> 00:15:19,980
du ein Programm CU verarbeitet. 
Dein Programm und diese ganzen 

290
00:15:19,990 --> 00:15:23,230
Rechnungen schicken quasi alles 
grafisch ist an die GPU weiter 

291
00:15:23,270 --> 00:15:26,830
und die GPU verarbeitet. 
Dann rechnet dann quasi was muss

292
00:15:26,840 --> 00:15:28,100
auf dem Bildschirm geändert 
werden? 

293
00:15:28,110 --> 00:15:30,820
Wie in den Pixel aus und so 
weiter und schickt es an das 

294
00:15:30,830 --> 00:15:35,820
Display ja, so war es bis dahin 
und dann gab es eigentlich ja, 

295
00:15:35,860 --> 00:15:38,720
ich hab das noch miterleben 
dürfen zwar cool, das war genau 

296
00:15:38,730 --> 00:15:42,460
da am Max Planck ging das los, 
dass Nvidia ausrief. 

297
00:15:42,470 --> 00:15:45,810
Es gibt jetzt eine neue 
Programmiersprache tatsächlich 

298
00:15:46,090 --> 00:15:48,490
die ich dann überhaupt mal 
erlaubt, ganz also für 

299
00:15:48,500 --> 00:15:52,160
Softwareentwickler quasi. 
Auf der Grafikkarte Programme zu

300
00:15:52,170 --> 00:15:54,960
schreiben, das war normalerweise
Aufgabe von Betriebssystem. 

301
00:15:54,970 --> 00:15:57,860
Du kamst normalerweise du hast 
normalerweise nichts auf der 

302
00:15:57,870 --> 00:16:00,470
Grafikkarte zu suchen gehabt, 
als Entwickler ja und 

303
00:16:01,570 --> 00:16:03,690
tatsächlich war das auch also 
das sind die Programmiersprache 

304
00:16:03,700 --> 00:16:05,260
nennt sich Q ich will ihn 
nennen. 

305
00:16:05,270 --> 00:16:09,460
CUDA liest vielleicht im 
Internet, wenn man irgendwie 

306
00:16:09,470 --> 00:16:15,060
hier spricht, dass es die gibt 
es immer noch wird, meistens 

307
00:16:15,070 --> 00:16:18,320
abstrahiert durch höhere 
Sprachen ist so also relativ ja 

308
00:16:18,330 --> 00:16:22,540
so wie C also relativ 
hardwarenahe komplizierte nicht 

309
00:16:22,900 --> 00:16:26,960
so einfache Programmiersprache. 
Und da hat er losging mit CUDA 

310
00:16:27,270 --> 00:16:30,090
und ich damit auch programmiert 
hab versucht quasi meine meine 

311
00:16:30,100 --> 00:16:33,750
bildverarbeitungs Algorithmen 
auf der Grafikkarte zu 

312
00:16:33,760 --> 00:16:37,610
schreiben, habe ich natürlich 
nicht gemacht so und ganz lustig

313
00:16:37,620 --> 00:16:40,490
und dann aber man teilt sich ja 
quasi dann eine Rechnung. 

314
00:16:40,500 --> 00:16:43,280
Sein Computerprogramm mit der 
tatsächlichen Ich hatte nur eine

315
00:16:43,290 --> 00:16:46,450
Grafikkarte in meinem Rechner so
ja und dann hatte ich irgendwie 

316
00:16:46,460 --> 00:16:50,160
n Fehler programmiert und dann 
sah der Entwicklungszyklus auf 

317
00:16:50,170 --> 00:16:52,130
einmal so aus, dass ich dann 
irgendwie das Programm gestartet

318
00:16:52,140 --> 00:16:54,070
hatte dann habe ich irgendwo 
reingeschrieben der Grafikkarte 

319
00:16:54,080 --> 00:16:58,490
wo es hingehört und hatte über C
64 dann Bildschirm einfach an zu

320
00:16:58,500 --> 00:17:02,280
Summen und so weiter. 
Zwischen hab farbenspektrum da 

321
00:17:02,290 --> 00:17:04,170
gehabt und so weiter, dann ist 
alles abgeschmiert der 

322
00:17:04,180 --> 00:17:06,589
Grafiktreiber ist gestorben und 
ich muss diesen Rechner neu 

323
00:17:06,599 --> 00:17:08,990
starten, quasi um wieder 
zurückzukommen und ich habe eine

324
00:17:09,000 --> 00:17:13,000
ganze Woche lang hab ich n 
Fehler gesucht und hab jeden Tag

325
00:17:13,010 --> 00:17:16,000
irgendwie. 
Sogar Arbeit, die Rechner 

326
00:17:16,010 --> 00:17:19,740
angemacht hab Programm neu 
programmiert dann hat wieder 

327
00:17:19,750 --> 00:17:22,670
geblinkt und gekritzelt und so 
weiter und muss wieder neu 

328
00:17:22,680 --> 00:17:24,650
booten. 
So ja und man Professor kam 

329
00:17:24,660 --> 00:17:27,109
schon was machst du denn da die 
ganze Zeit so was soll ich 

330
00:17:27,119 --> 00:17:29,640
machen? 
So schmiert mir die Grafikkarte 

331
00:17:29,650 --> 00:17:31,510
die ganze Zeit ab ja, so waren 
die Anfänge. 

332
00:17:31,520 --> 00:17:34,290
Das ist natürlich viel besser 
geregelt, aber aber da sieht man

333
00:17:34,300 --> 00:17:36,710
mal wie und das ist halt 
tatsächlich die Grafikkarte. 

334
00:17:37,110 --> 00:17:40,230
Damals war das noch nicht in 
Bereiche unterteilt und spielst 

335
00:17:40,240 --> 00:17:44,210
halt mit deinem mit deinem 
Grafik Output der Notfall OK was

336
00:17:44,220 --> 00:17:47,420
war denn der Anlass für Invidia?
Die Grafikkarte sag ich mal 

337
00:17:47,430 --> 00:17:50,640
freizugeben. 
Für Entwickler also dort die 

338
00:17:50,650 --> 00:17:53,070
Rechenleistung auch nutzbar zu 
machen. 

339
00:17:53,080 --> 00:17:56,300
DHN ganz neuen Markt aufgemacht 
damals war ne die hat natürlich 

340
00:17:56,310 --> 00:17:59,240
den Gaming Markt so für die da 
sind sie ja heute noch ganz dick

341
00:17:59,250 --> 00:18:02,420
also es gibt ja auch 
hochqualitative mit extrem 

342
00:18:02,430 --> 00:18:06,200
krasse Grafik, spiele die 
Echtzeit diesen diese ganzen 

343
00:18:06,210 --> 00:18:08,680
Egoshooter Engines und so 
weiter, ne da sind die Spiele 

344
00:18:08,690 --> 00:18:12,100
sind heutzutage ja das stimmt 
ja, aber die bedürfen besonders 

345
00:18:12,110 --> 00:18:15,480
viel Rechenleistung so ne, aber 
das ist halt alles so im Gaming 

346
00:18:15,490 --> 00:18:17,820
im Gaming Bereich. 
Da kommt ja da kommen die 

347
00:18:17,830 --> 00:18:19,340
Grafikkartenhersteller 
eigentlich sowieso her. 

348
00:18:19,350 --> 00:18:23,010
OK, das heißt die Grafikkarten. 
Hatten vielleicht auch schon 

349
00:18:23,020 --> 00:18:25,830
mehrere Kerne oder waren 
besonders gut besonders schnell 

350
00:18:25,840 --> 00:18:27,790
besonders viele Rechner genau 
dazu habe ich noch gar nichts 

351
00:18:27,800 --> 00:18:31,630
gesagt, genau das meine ich 
jetzt ne und dann muss irgendwer

352
00:18:31,640 --> 00:18:34,290
gesagt haben Mensch, jetzt 
reicht uns die CPUS nicht mehr 

353
00:18:34,330 --> 00:18:37,150
lass uns doch mal das noch n 
bisschen auslagern auf die GPUS,

354
00:18:37,160 --> 00:18:39,880
da irgendwelche Rechnungen ja 
genau also man muss jetzt muss 

355
00:18:39,890 --> 00:18:42,760
eine Sache wissen bei GPS. 
Die kommen grundsätzlich daher 

356
00:18:42,770 --> 00:18:46,100
die haben nur ein oder 2 Kerne 
oder irgendwas die fangen immer 

357
00:18:46,110 --> 00:18:49,710
an mit mindestens 500 oder 
irgendsowas ja also ein 

358
00:18:49,720 --> 00:18:52,830
Unterschied ja genau genau und 
heute ich hab mal geguckt also 

359
00:18:52,840 --> 00:18:56,410
die heutigen Grafikkarten die 
haben also also die Envia Karten

360
00:18:56,420 --> 00:18:58,220
haben so 
Viertausendsechshundert. 

361
00:18:58,290 --> 00:19:01,420
Herne ja oder ne krasse Dinger? 
Schon über 10000 ja. 

362
00:19:02,040 --> 00:19:05,400
Also 10000 quasi wie wie 
Zehntausende Mini CPUS kann man 

363
00:19:05,410 --> 00:19:08,040
sich so vorstellen, ja, die sind
dann von der Takt, die sind 

364
00:19:08,050 --> 00:19:11,730
nicht so schnell wie die wie die
CPU und die hatten früher auch 

365
00:19:11,740 --> 00:19:14,860
das Problem, dass sie nicht so 
viel Speicher quasi direkt zur 

366
00:19:14,870 --> 00:19:16,980
Verfügung hatten und auch noch 
was zu. 

367
00:19:17,660 --> 00:19:21,450
Aber die aber das ist halt 
Parallelität ja, manchmal ist es

368
00:19:21,460 --> 00:19:24,270
dann auch egal, ob jetzt, der 
eine Prozess wie schnell der 

369
00:19:24,280 --> 00:19:27,370
jetzt gerechnet wird, aber wenn 
ich ein Problem habe, was ich 

370
00:19:27,380 --> 00:19:31,270
total super parallelisieren kann
und bei Bildverarbeitung 

371
00:19:31,280 --> 00:19:34,970
Parallelisieren heißt es gibt 
bestimmte Probleme, die kann 

372
00:19:34,980 --> 00:19:37,810
nicht, da kann ich jedes Pixel 
von einem Bild ne also jeder 

373
00:19:37,820 --> 00:19:40,670
Bildpunkt kann ich einzeln 
berechnen, ne, wenn ich zum 

374
00:19:40,680 --> 00:19:44,030
Beispiel irgendwie wenn 
irgendwas drehe oder irgendwas 

375
00:19:44,040 --> 00:19:45,910
neu transformiere 
farbveränderung mache oder 

376
00:19:45,920 --> 00:19:47,200
irgendwas. 
Dann gibt es bestimmte 

377
00:19:47,210 --> 00:19:49,700
Algorithmen, da kann ich das 
quasi für jedes Pixel 

378
00:19:50,000 --> 00:19:52,820
individuell rechnen ja ohne dass
ich Informationen brauche von 

379
00:19:52,830 --> 00:19:55,470
den anderen. 
Von den anderen Pixel nebenher 

380
00:19:55,600 --> 00:19:59,080
man nennt das dann Barry Single 
Parallel also trivial 

381
00:19:59,090 --> 00:20:02,840
parallelisieren war ja und dann 
gebe ich diese Aufgabe halt ab 

382
00:20:02,880 --> 00:20:06,800
und an 10000? 
Mini CPUS. 

383
00:20:06,870 --> 00:20:10,300
Und dann mache ich 10000 Pixel 
in einem Takt, dann macht einmal

384
00:20:10,340 --> 00:20:12,900
schwupp und dann habe ich 10000 
Dinge gleichzeitig gerechnet bin

385
00:20:12,910 --> 00:20:15,770
schon fertig so ja, im Gegensatz
zu wenn ich einen hätte, dann 

386
00:20:15,780 --> 00:20:19,200
müsste ich halt 10000 Rechnungen
hintereinander machen, ja so, 

387
00:20:19,210 --> 00:20:22,200
das ist der Punkt ja, das macht 
einen riesigen Unterschied einen

388
00:20:22,210 --> 00:20:25,380
Takt ist immer eine Rechnung. 
Durchgeführt wird einen Tag ist 

389
00:20:25,390 --> 00:20:28,340
quasi eine Evaluierungseinheit 
ne, das sind diese diese 

390
00:20:28,550 --> 00:20:30,960
Gigahertz und so weiter. 
Das ist der CDU Takt ne also 

391
00:20:30,970 --> 00:20:35,160
wenn die quasi macht Tick tick 
so und in einem Takt wird eine 

392
00:20:35,200 --> 00:20:37,640
Operation abgearbeitet. 
Ja, ich glaube, da haben wir 

393
00:20:37,650 --> 00:20:40,490
früher ohne überhaupt 
ansatzweise Plan zu haben haben 

394
00:20:40,500 --> 00:20:42,810
wir unsere Computer. 
Unsere ersten also im 

395
00:20:42,820 --> 00:20:46,280
jugendlichen Alter daran 
verglichen wieviel Gigahertz 

396
00:20:46,290 --> 00:20:50,020
oder klar war ja auch früher, 
dann hast du ja und man hatte 

397
00:20:50,030 --> 00:20:51,650
keinen Plan. 
Was bedeutet aber mehr und 

398
00:20:51,660 --> 00:20:54,610
schneller und besser ja ist auch
immer noch so ne also wenn du 

399
00:20:54,620 --> 00:20:57,080
natürlich wenn du schnelleren 
CPU hast, dann wird die 

400
00:20:57,090 --> 00:20:59,500
individuelle Operation schneller
durchgeführt. 

401
00:21:00,560 --> 00:21:04,180
Aber das ist heute nicht mehr 
nur einziger Messpunkt, sondern 

402
00:21:04,190 --> 00:21:06,920
halt auch wenn du, wenn du stark
parallelisieren kannst und du 

403
00:21:06,930 --> 00:21:10,310
hast Probleme lösen willst. 
Die gut parallelisiert bar sind 

404
00:21:10,320 --> 00:21:12,540
nicht alle. 
Wir sind leider nicht alle 

405
00:21:12,550 --> 00:21:15,680
computeraufgaben gut paralysiert
war aber wenn du solche hast, 

406
00:21:15,690 --> 00:21:18,380
dann ist es halt auch quasi die 
Parallelisierung, also wie viele

407
00:21:18,390 --> 00:21:21,240
hast du davon ein Riesenfaktor 
und kann sogar wichtiger sein 

408
00:21:21,250 --> 00:21:24,090
als wie individuell? 
Schnell ist jetzt einer OK? 

409
00:21:24,130 --> 00:21:27,110
Von Anfang an waren die 
Grafikkarten so aufgebaut, dass 

410
00:21:27,120 --> 00:21:30,870
sie viele Kerne zur Verfügung 
gestellt haben, die jeder für 

411
00:21:30,970 --> 00:21:34,780
sich vielleicht langsamer waren 
als ne Kerner CPU ja, viel 

412
00:21:34,820 --> 00:21:37,540
langsamer, tatsächlich aber 
natürlich, weil das in der 

413
00:21:37,550 --> 00:21:40,250
Grafik rendering und so weiter 
gebraucht wird viele parallel 

414
00:21:40,590 --> 00:21:43,890
durchführen können Generationen 
und dann evia wahrscheinlich 

415
00:21:43,900 --> 00:21:45,970
gesagt wahrscheinlich andere 
Hersteller. 

416
00:21:46,930 --> 00:21:50,820
Marti, damals noch es gab 
eigentlich 2 Video ATI oder ATI 

417
00:21:50,830 --> 00:21:55,340
und heute gehört ATI zu AMD in 
diesem gekauft worden 2006 gab 

418
00:21:55,350 --> 00:21:59,760
es sag ich mal von den Kunden 
her da ne Nachfrage das nutzt 

419
00:22:00,010 --> 00:22:02,870
das auch zu nutzen für andere 
Rechnungen nicht nur für 

420
00:22:02,880 --> 00:22:05,800
graphische Themen. 
Und das hat er wieder 

421
00:22:05,810 --> 00:22:07,650
beantwortet. 
Sie haben, das könnt ihr jetzt 

422
00:22:07,660 --> 00:22:10,610
in der Q da als 
Programmiersprache verwendet und

423
00:22:10,620 --> 00:22:13,970
auf der quasi auf der G 
programmiert und das hast du 

424
00:22:13,980 --> 00:22:18,310
dann gemacht und hast erstmal. 
Ja, es war noch nicht so einfach

425
00:22:18,360 --> 00:22:21,550
ne genau ja tatsächlich ist dann
also mein mein Professor damals 

426
00:22:21,560 --> 00:22:25,170
Max Planck Zitat dann sich 
tatsächlich für sehr viel Geld n

427
00:22:25,180 --> 00:22:29,770
riesiges Grafikkarten Cluster 
also ganz viele Server, wenn n 

428
00:22:29,780 --> 00:22:32,550
richtigen Serverraum und mit 
Hardware wo halt ganz viel 

429
00:22:32,560 --> 00:22:34,340
Grafikkarten drin war und ich 
glaube wir waren einer der 

430
00:22:34,350 --> 00:22:36,940
größten Abnehmer von 
Grafikkarten via irgendwie für 

431
00:22:36,950 --> 00:22:39,860
ne Zeit lang. 
Und das war ganz spannende Zeit 

432
00:22:39,870 --> 00:22:41,810
und wir haben noch viel 
experimentiert, also kannst du 

433
00:22:41,820 --> 00:22:45,560
auch quasi dann ja und da kommt 
das nächste auf das nächste 

434
00:22:45,570 --> 00:22:49,120
Level der Parallelisierung du 
kannst ja quasi auch klar kannst

435
00:22:49,130 --> 00:22:52,060
du ein Programm starten mit 
vielen Threads, mit GPUS und 

436
00:22:52,070 --> 00:22:54,400
dann kannst du aber auch viele 
Programme starten gleichzeitig 

437
00:22:54,410 --> 00:22:57,830
einfach ja die und den 
Programmen gibst du sagen wir 

438
00:22:57,840 --> 00:23:01,880
mal, du hast du hast ne riesige 
Wolke an Daten die du irgendwie 

439
00:23:02,150 --> 00:23:05,770
durchrechnen willst bearbeiten 
willst, dann kannst du ja, dann 

440
00:23:05,780 --> 00:23:07,600
kannst du auch, dann kannst du 
noch was anderes machen. 

441
00:23:07,610 --> 00:23:10,060
Du kannst du alle Daten ein 
Programm geben, was dann ganz 

442
00:23:10,070 --> 00:23:12,050
viele Threads hat schon mal 
nicht schlecht. 

443
00:23:12,250 --> 00:23:15,130
Du kannst aber auch gleich 
sagen, diese ganzen Daten, die 

444
00:23:15,140 --> 00:23:17,880
gebe ich gleich mehreren 
Programmen, also ich teile die 

445
00:23:17,890 --> 00:23:22,960
Daten auf. 
In 10 teile und startet 10 

446
00:23:22,970 --> 00:23:25,890
Programme und jedes Programm 
kriegt ein Zehntel der Daten und

447
00:23:25,900 --> 00:23:28,640
rechnet das gibt wieder 
vorausgesetzt, dass das so geht.

448
00:23:28,650 --> 00:23:31,600
Vom vom Algorithmus her ja und 
dann komme ich in den nächsten 

449
00:23:31,610 --> 00:23:33,810
Parallelisierung Stufe, dann 
sprechen wir nicht mehr von der 

450
00:23:33,820 --> 00:23:36,460
Parallelisierung, sondern im 
Prinzip von Programm 

451
00:23:36,470 --> 00:23:39,960
Parallelisierung ja und das kann
ich dann wieder auf verschiedene

452
00:23:40,310 --> 00:23:43,680
Server, also verschiedene 
Computer verteilen. 

453
00:23:43,690 --> 00:23:46,150
Ne ist dann immer noch 
nebenläufigkeit oder spricht man

454
00:23:46,160 --> 00:23:49,130
von Nebenläufigkeit nur bei den 
Threads bei den strengen? 

455
00:23:49,870 --> 00:23:53,620
Ich weiß nicht, ich weiß nicht 
genau, wie sich jetzt die 

456
00:23:53,660 --> 00:23:56,080
Informatik spricht, da also ich 
glaube nebenläufigkeit 

457
00:23:56,090 --> 00:24:00,200
tatsächlich Threads, aber es ist
eine Parallelisierung Technik. 

458
00:24:00,210 --> 00:24:03,120
Was ist der Vorteil, dass ich 
jetzt das auf mehrere Programme,

459
00:24:03,130 --> 00:24:06,070
die dann wieder jeweils jeweils 
multithreads haben, verteile? 

460
00:24:06,110 --> 00:24:08,260
Programm mit ganz vielen 
Threads? 

461
00:24:09,730 --> 00:24:11,790
Ja, ich hab irgendwann ist ja 
auch irgendwann ist auch mal 

462
00:24:11,800 --> 00:24:14,980
Schluss nee also ich kann, ich 
kann ja auch in einem Rechner 

463
00:24:14,990 --> 00:24:18,390
nicht unendlich viele 
Grafikkarten reinstecken, so OK.

464
00:24:18,400 --> 00:24:20,220
Wenn ich mir Programme habe, 
kann ich über mehrere Rechner 

465
00:24:20,230 --> 00:24:22,300
verteilen. 
Ja, genau das ist das genau 

466
00:24:22,310 --> 00:24:25,710
verstanden Punkt genau ja also 
also wenn wenn die halt einen 

467
00:24:25,720 --> 00:24:28,100
Rechner mit sag ich mal. 
Du kannst auch 3 oder 4 

468
00:24:28,110 --> 00:24:30,350
Grafikkarten einen Rechner 
reinschreiben so ja und dann 

469
00:24:30,360 --> 00:24:32,540
kannst du auch innerhalb von dem
Programm dann 4 Karten 

470
00:24:32,550 --> 00:24:35,730
ansprechen und so das ist nicht 
ganz einfach, aber das geht und 

471
00:24:35,740 --> 00:24:38,060
dann hast du schon ziemlich 
Gewalt, wenn die Gewalt immer 

472
00:24:38,070 --> 00:24:41,420
noch nicht reicht, dann kaufst 
du dir das Ding quasi nochmal. 

473
00:24:41,460 --> 00:24:44,740
Ja, dann brauchst du aber davor 
quasi so ein Verteiler. 

474
00:24:44,810 --> 00:24:47,060
Ja. 
Du brauchst einen großen, 

475
00:24:47,070 --> 00:24:50,280
verteilten Datenspeicher für 
Deine für deine datenwolke du 

476
00:24:50,290 --> 00:24:53,340
bearbeiten möchtest und dann 
verteidigst du das unter auf 

477
00:24:53,350 --> 00:24:56,510
verschiedene Rechner. 
Das haben wir damals noch 

478
00:24:56,520 --> 00:25:00,040
gemacht, ohne Docker Technologie
und so weiter und heute hatten 

479
00:25:00,050 --> 00:25:02,980
wir auch schon Erfolge, heute 
kannst du solche Programme in 

480
00:25:02,990 --> 00:25:05,100
einem Container laufen lassen 
und auch selbst die Container 

481
00:25:05,110 --> 00:25:06,840
Technologie unterstützt 
mittlerweile auch diese 

482
00:25:06,850 --> 00:25:10,620
Grafikkarten also die diese 
Hardware dahinter liegt und dann

483
00:25:10,630 --> 00:25:12,880
kommst du in dieses massiv, dann
kann man sich so langsam 

484
00:25:12,890 --> 00:25:15,920
vorstellen wie schaffen die das 
bei bei Google und so weiter so 

485
00:25:15,930 --> 00:25:19,620
schnell Ergebnisse zu zu als 
Suchergebnis zum Beispiel oder 

486
00:25:19,630 --> 00:25:22,240
halt auch diese ganzen KI 
Rechnungen durchzuführen, die 

487
00:25:22,250 --> 00:25:25,200
sie bei sich durchführen das ist
halt dann die Gewalt, die teilen

488
00:25:25,210 --> 00:25:28,230
dann halt ein Problem einen 
Datensatz auf und dahinter 

489
00:25:28,240 --> 00:25:33,140
stehen dann halt. 1000 Server 
mit jeweils. 3 Grafikkarten zum 

490
00:25:33,150 --> 00:25:36,590
Beispiel drinnen und dann hast 
du halt insgesamt ne Gewalt vor 

491
00:25:36,600 --> 00:25:38,610
und ich weiß nicht wieviel 
Millionen Threads die dann 

492
00:25:38,620 --> 00:25:41,260
gleichzeitig irgendwie an deinen
Daten arbeiten, ne und dann 

493
00:25:41,270 --> 00:25:43,480
dauert es nicht mehr lange, dann
bist du halt trotzdem fertig mit

494
00:25:43,490 --> 00:25:46,120
einer eigentlich eine Aufgabe, 
die das früher nicht lösen 

495
00:25:46,130 --> 00:25:50,930
können, die 10000 Jahre gedauert
irgendwas OK krass also so wenn 

496
00:25:50,940 --> 00:25:53,650
ich jetzt ne Anfrage mache 
anchi.pt oder irgendeinen 

497
00:25:53,660 --> 00:25:56,800
anderen? 
Ja, das Service war immer, dann 

498
00:25:56,810 --> 00:25:59,160
wird eigentlich das genommen und
die Rechenoperationen auf 

499
00:25:59,170 --> 00:26:02,960
verschiedenste Server und 
Grafikkarten genau und Kerne und

500
00:26:02,970 --> 00:26:07,350
Threads richtig verteilt. 
Ja, wahrscheinlich wäre das 

501
00:26:07,360 --> 00:26:10,160
steuert ja genau und wieder 
zusammengebracht die Ergebnisse 

502
00:26:10,170 --> 00:26:12,560
genau das relativ komplex. 
Also kann man sich vorstellen, 

503
00:26:12,570 --> 00:26:15,880
also diese Parallelität gibt es 
auf verschiedenen Leveln und wir

504
00:26:15,890 --> 00:26:18,800
hatten jetzt die also die GPU 
und deren Threads ist ein sehr 

505
00:26:18,810 --> 00:26:20,090
tiefes Level. 
Es geht noch ein bisschen 

506
00:26:20,100 --> 00:26:23,110
tiefer, sag ich gleich noch zu, 
aber das ist das tiefste Level. 

507
00:26:23,120 --> 00:26:25,760
Dann haben wir das Programm 
Level und dann noch selber die 

508
00:26:25,770 --> 00:26:28,600
Server und so weiter und Prinzip
kann man sich vorstellen wie n 

509
00:26:28,610 --> 00:26:30,120
ja. 
Wie ein Baum, der sich immer 

510
00:26:30,130 --> 00:26:33,340
weiter verästelt so ja und dann 
habe ich meine große großen 

511
00:26:33,350 --> 00:26:36,300
Daten, die schicke ich dann 
einfach der Stamm schick ich den

512
00:26:36,310 --> 00:26:39,880
Stamm und der Stamm versteht das
alles in jedem jedem Blatt wird 

513
00:26:39,890 --> 00:26:41,690
irgendwas gerechnet und kommt 
wieder zurück. 

514
00:26:42,010 --> 00:26:46,060
Ja, weißt du was da für? 
Personen oder Köpfe hinter 

515
00:26:46,070 --> 00:26:49,930
stecken, die sich diese ich sag 
jetzt mal Architektur, oder? 

516
00:26:49,940 --> 00:26:52,630
Diese Art von Berechnungen 
überlegen also ich muss ja 

517
00:26:52,640 --> 00:26:56,510
irgendjemand bestimmen, wie 
sowas dann verteilt wird, also 

518
00:26:56,550 --> 00:26:59,600
was das für Menschen sind 
Softwareentwickler oder sind das

519
00:26:59,850 --> 00:27:02,520
Architekten oder kann sich 
vorstellen auch ja also 

520
00:27:02,560 --> 00:27:04,470
Softwareentwickler 
softwarearchitekten genau und 

521
00:27:04,480 --> 00:27:07,350
dann auch so gerade im Detail 
mit den mit den mit dieser 

522
00:27:07,360 --> 00:27:09,640
Sprache und so weiter das sind 
schon extrem krasse Experten, 

523
00:27:09,650 --> 00:27:12,560
die sich dann auch die sich sehr
gut mit der Hardware auskennen 

524
00:27:12,570 --> 00:27:16,980
und so weiter das ist, das geht 
ja auch alles noch nicht seit 

525
00:27:16,990 --> 00:27:19,840
seit. 
Na ja, also viele, viele Sachen 

526
00:27:19,850 --> 00:27:21,790
sind da auch immer noch im 
Schwung und da gibt es immer 

527
00:27:21,800 --> 00:27:24,420
noch mehr. 
Ich will mal eines sagen, 

528
00:27:24,430 --> 00:27:28,320
vielleicht CUS. 
Das liegt halt nahe und das war 

529
00:27:28,330 --> 00:27:30,870
für ein Video und auch damals 
für ATI halt eine Möglichkeit, 

530
00:27:30,880 --> 00:27:33,760
den Markt einfach noch zu 
vergrößern und für die war das 

531
00:27:33,770 --> 00:27:35,690
toll, weil wir als Max Planck 
Institut natürlich 

532
00:27:35,700 --> 00:27:36,920
Grundlagenforschung gemacht 
haben. 

533
00:27:36,930 --> 00:27:38,920
Das war für die natürlich auch 
eine schöne Werbung, die sagen 

534
00:27:39,250 --> 00:27:41,310
guck mal hier, wir können mit 
den Grafikkarten nicht nur 

535
00:27:41,320 --> 00:27:45,000
irgendwie Gaming, sondern wir 
machen wir tragen was zur 

536
00:27:45,010 --> 00:27:48,010
Wissenschaft bei ihr zu und weil
wir hier wie zum Beispiel 

537
00:27:48,020 --> 00:27:51,120
ausrechnen, wie irgendwie ein 
Molekül aussieht ja, das haben 

538
00:27:51,130 --> 00:27:52,880
wir gemacht. 
D Rekonstruktion um zu sehen wie

539
00:27:52,890 --> 00:27:56,020
soll zum Beispiel aussieht ja, 
das war für die für die super 

540
00:27:56,030 --> 00:27:58,780
und heute sind die natürlich 
auch wieder Big Business, weil 

541
00:27:58,790 --> 00:28:02,930
die künstliche Intelligenz. 
Das wird halt heute stand heute 

542
00:28:02,940 --> 00:28:06,050
soviel ich weiß Google, wenn du 
mit Googles Ressourcen rechnest 

543
00:28:06,060 --> 00:28:08,540
und ganz viele Grafikkarten 
dahinter, ja, ob das jetzt ein 

544
00:28:08,550 --> 00:28:12,360
Video ist MD weiß ich nicht er 
ist auch egal, aber die sind 

545
00:28:12,370 --> 00:28:15,100
wieder im Einsatz. 
Ja, und es geht auch hin man 

546
00:28:15,110 --> 00:28:17,630
kann halt noch tiefer gehen. 
Es gibt die sogenannten FPS, 

547
00:28:17,640 --> 00:28:20,940
will das Wort nur mal sagen 
Field Programmable Gate Arrays. 

548
00:28:21,720 --> 00:28:25,760
Das ist quasi so eine Art. 
Ja, so ein Zwischending zwischen

549
00:28:25,770 --> 00:28:28,520
ich, ich Designer mir 
tatsächlich Hardware und das 

550
00:28:28,530 --> 00:28:31,880
wird auch manchmal gemacht dann 
die Asic, dass die Applications 

551
00:28:31,890 --> 00:28:35,180
Pacific Integrated Circuit, das 
heißt, ich mache mir eine ein 

552
00:28:35,190 --> 00:28:39,640
Stück Hardware, quasi eine Art 
Spezial CPU oder so halt asic 

553
00:28:39,650 --> 00:28:42,950
ja. 
Wo die Hardware und der Chip dem

554
00:28:42,960 --> 00:28:45,370
Softwareproblem direkt entworfen
wurde. 

555
00:28:45,380 --> 00:28:47,530
Ja, das kann ich natürlich nur 
machen, wenn ich was ich 

556
00:28:47,570 --> 00:28:50,090
Algorithmus habe, wirklich 
relevant ist, damit irgendwie 

557
00:28:50,100 --> 00:28:53,630
die Kosten deckt ja. 
Ein Beispiel dafür Krypto Mining

558
00:28:53,640 --> 00:28:57,700
Bitcoins in China stehen Farmen 
zu groß wie Fußballfelder, nur 

559
00:28:57,710 --> 00:29:00,800
mit Rechnern. 
Die kannst du für nix benutzen, 

560
00:29:00,810 --> 00:29:03,470
die können nicht rechnen, aber 
das sind spezielle A 6 drinnen, 

561
00:29:03,480 --> 00:29:07,110
die nur dieses Mining dieses 
Lösen dieser Kryptographischen 

562
00:29:07,120 --> 00:29:10,920
Hashes wichtig für die Bitcoin 
Erstellung quasi das das können 

563
00:29:10,930 --> 00:29:15,560
die das Level und darüber gibt 
es die FPS, da kannst du quasi 

564
00:29:16,020 --> 00:29:18,670
so zwischen Ding du kannst dir 
programmieren, kannst auch sehr 

565
00:29:18,680 --> 00:29:21,270
stark parallelisierte Sachen 
machen und Google kommt gerade 

566
00:29:21,280 --> 00:29:24,590
raus und etwas Neues das nennt 
sich das haben die TPU getauft 

567
00:29:24,880 --> 00:29:28,480
Tensor. 
Processing Unit also quasi auch 

568
00:29:28,490 --> 00:29:32,460
ein Chip, den du mit deinem 
Computer quasi eindocken kannst 

569
00:29:32,500 --> 00:29:36,820
oder eindecken können sollst, 
der quasi hoch spezialisiert ist

570
00:29:36,830 --> 00:29:41,260
für KI Training, so die A 6 da 
sind die meisten großen Firmen 

571
00:29:41,270 --> 00:29:43,320
dran auch Tesla und so weiter, 
dass sie sich für ihre 

572
00:29:43,330 --> 00:29:48,330
speziellen Aufgaben da. 
Sag mal Hardware, Chips, Design 

573
00:29:48,340 --> 00:29:51,310
und dann produzieren lassen, 
also genau das ist schon etwas, 

574
00:29:51,320 --> 00:29:55,230
mit dem man sich dann auch 
differenziert heutzutage ja und 

575
00:29:55,240 --> 00:29:58,630
da m tiefer reingeht, um noch 
schneller, besser effizienter, 

576
00:29:59,120 --> 00:30:00,990
ja die Rechenleistung 
bereitzustellen ne? 

577
00:30:01,220 --> 00:30:03,780
Hier haben wir bestimmen. 
In Zukunft wird es immer mehr. 

578
00:30:03,820 --> 00:30:06,560
Ich glaube, das Thema wird ja, 
das wird so in Schwung nehmen, 

579
00:30:06,570 --> 00:30:09,030
dass wir da auch spezielle 
Hardware sehen und n krasser 

580
00:30:09,040 --> 00:30:13,110
Weise ist ja schon so, dass er 
dass er Nvidia jetzt auch ihre 

581
00:30:13,120 --> 00:30:16,530
Grafikkarten, die Grafikkarten, 
die besonders geeignet für diese

582
00:30:16,540 --> 00:30:19,080
KI Rechnung und die werden 
gerade wieder mit einer KI 

583
00:30:19,090 --> 00:30:21,530
optimiert. 
Also die Hardware wird von der 

584
00:30:21,540 --> 00:30:24,450
KI optimiert, damit die KI 
wieder besser drauf läuft, so 

585
00:30:24,460 --> 00:30:28,100
also alles ganz schön so aber ja
kommt mir wird langsam klar, 

586
00:30:28,110 --> 00:30:31,490
warum das Thema so relevant ist.
Ja, ich war anfangs skeptisch 

587
00:30:31,500 --> 00:30:34,010
muss ich zugeben, dass ich schon
Threads und nebenläufig 

588
00:30:34,020 --> 00:30:37,130
Nebenläufigkeit insbesondere 
gehört habe ja genau, aber es 

589
00:30:37,140 --> 00:30:39,900
zieht sich durch ja also zieht 
sich durch das Prinzip ja und 

590
00:30:39,910 --> 00:30:42,120
dann versteht man auch so 
Effekte und du hast vielleicht 

591
00:30:42,130 --> 00:30:44,870
jetzt mal ein bisschen von der 
Marketing oder Business sieht es

592
00:30:44,880 --> 00:30:47,530
waren ja mal die Grafikkarten 
total teuer und du konntest gar 

593
00:30:47,540 --> 00:30:49,700
keine Grafikkarte mehr bekommen 
von Nvidia, weil alles 

594
00:30:49,710 --> 00:30:52,350
weggekauft warum, weil die 
Kryptowährungen gerade auf dem 

595
00:30:52,360 --> 00:30:54,640
Höchststand waren. 
Jeder wie wahnsinnig 

596
00:30:54,650 --> 00:30:56,900
Grafikkarten gekauft und zu 
Hause irgendwie mit meinen 

597
00:30:56,910 --> 00:30:59,990
wollte, weil, das ist ja auch so
nette also bei der bei dem 

598
00:31:00,000 --> 00:31:02,300
Krypto Mining geht nicht 
irgendwann fertig zu werden, da 

599
00:31:02,310 --> 00:31:05,390
geht es darum, als Erster fertig
zu werden, um zu gewinnen, sonst

600
00:31:05,400 --> 00:31:08,210
machst du keine Bitcoins heran, 
ganz grob gesprochen, ne? 

601
00:31:08,770 --> 00:31:11,510
Und deswegen kauften alle wie 
die wahnsinnigen Grafikkarten, 

602
00:31:11,520 --> 00:31:14,940
weil es sich lohnte quasi der 
also die Bitcoin Währung war so 

603
00:31:14,950 --> 00:31:17,450
hoch, dass du das wieder schnell
raus hattest, was die 

604
00:31:17,460 --> 00:31:19,550
Grafikkarte kostete. 
Jetzt wo die wieder im Keller 

605
00:31:19,560 --> 00:31:21,060
sind, gibt es auch wieder 
grafikkartenmarkt. 

606
00:31:21,070 --> 00:31:24,300
Ja, das kann man einmal zusammen
mit einem anderen Podcast 

607
00:31:24,310 --> 00:31:26,940
Interview gehört vielleicht oder
sowas da hat. 

608
00:31:27,680 --> 00:31:31,700
Einer war im Interview von einem
großen Europäischen meiner also 

609
00:31:31,710 --> 00:31:34,550
eine Firma, die sich nur auf das
Mining spezialisiert hat, 

610
00:31:34,560 --> 00:31:38,710
gesagt, die Konten für ungefähr 
$10000 in Bitcoin produzieren. 

611
00:31:38,720 --> 00:31:42,360
Und damals war er bei $60000 
inzwischen sehr gutes Geschäft. 

612
00:31:42,400 --> 00:31:45,630
Ja, genau jetzt weiß ich nicht 
20000 oder immer noch ein gutes 

613
00:31:45,640 --> 00:31:48,010
Geschäft, aber das ist ja nur 
der größte Anbieter ja, ich 

614
00:31:48,020 --> 00:31:51,160
denke mal das. 
Kleinere Anbieter das das ist 

615
00:31:51,170 --> 00:31:53,950
nicht so gut hinkriegen und die 
sind auch so krass, dass die 

616
00:31:53,960 --> 00:31:56,120
dann irgendwie ganze 
Rechenzentren Flugzeuge packen 

617
00:31:56,130 --> 00:31:58,190
und und ein anderes Land 
fliegen, weil der Strom 

618
00:31:58,200 --> 00:32:00,160
irgendwie einen Bruchteil von 
einem Cent günstiger als 

619
00:32:00,170 --> 00:32:04,060
politisch völlig verrückt, aber 
wir schweifen ab, wollte ich zum

620
00:32:04,070 --> 00:32:08,450
Besten geben genau du wolltest 
doch mal den Arbeitsspeicher 

621
00:32:08,490 --> 00:32:10,650
ansprechen da hast du gesagt ja,
dann kommen wir später nochmal 

622
00:32:10,660 --> 00:32:12,700
drauf genau gut. 
Ich hab nämlich hätte ich jetzt 

623
00:32:12,710 --> 00:32:14,700
auch gesagt jetzt nicht 
vergessen genau ja. 

624
00:32:16,610 --> 00:32:18,730
Genau das jetzt noch ein 
bisschen, aber vielleicht 

625
00:32:18,740 --> 00:32:21,320
nochmal also die ganz am Anfang 
war das. 

626
00:32:22,160 --> 00:32:24,150
Mit den Grafikkarten auch n 
bisschen schwierig, weil die 

627
00:32:24,160 --> 00:32:26,770
Grafikkarten brauchen, wenn Du 
darauf rechnen möchtest. 

628
00:32:27,190 --> 00:32:30,650
Dedizierten. 
Speicher ja, also 

629
00:32:30,660 --> 00:32:34,430
grafikkartenspeicher und und so 
die also ich so angefangen hab. 

630
00:32:34,440 --> 00:32:37,340
Mit der gab es noch mal so, ja, 
die guten Karten hat ein 

631
00:32:37,350 --> 00:32:41,390
Gigabyte 2 Gigabyte dediziertem 
Speicher und das ist ja noch 

632
00:32:41,400 --> 00:32:44,660
nicht ne Menge, das teilst du ja
auch noch auf mit dem was sie 

633
00:32:44,670 --> 00:32:48,110
noch so tun zu tun haben ja. 
Und ganz oft willst du auf der 

634
00:32:48,120 --> 00:32:50,790
Grafikkarte sind das immer so 
Matrix Multiplikationen im 

635
00:32:50,800 --> 00:32:53,670
Prinzip der Vektoralgebra 
gerechnet ja und das Tensor ich 

636
00:32:53,680 --> 00:32:54,750
weiß nicht, ob es schon erwähnt 
hat. 

637
00:32:54,760 --> 00:32:58,630
Tensor Flow ist das so heißt ja,
dass die KI Bibliothek von 

638
00:32:58,640 --> 00:33:01,190
Google Nintendo ist ja 
eigentlich nichts anderes als ne

639
00:33:01,200 --> 00:33:04,520
als eine Matrize im hoch 
dimensionalen Raum ja, und wenn 

640
00:33:04,530 --> 00:33:08,250
du, wenn du ja so grob 
gesprochen und so und wenn du 

641
00:33:08,260 --> 00:33:11,330
und wenn du wenn du wenn du KI 
Training machst, dann ist es im 

642
00:33:11,340 --> 00:33:14,240
Prinzip ist es quasi 
vektoralgebra Matrix 

643
00:33:14,250 --> 00:33:16,120
Multiplikationen hoch und 
runter. 

644
00:33:16,130 --> 00:33:18,470
Die ganze Zeit, das können die 
Grafikkarten besonders gut und 

645
00:33:18,480 --> 00:33:20,160
wenn du jetzt aber 
Geschwindigkeit aufnehmen 

646
00:33:20,170 --> 00:33:23,870
willst. 
Es muss einmal wissen du musst 

647
00:33:23,880 --> 00:33:26,740
quasi deinen. 
Dein Programm startet immer erst

648
00:33:26,750 --> 00:33:30,440
mal im CPU das das ist so ja, du
kannst es dann auslagern in die 

649
00:33:30,450 --> 00:33:33,580
GP aber startet in der CDU. 
Das heißt der Speicher wird auch

650
00:33:33,590 --> 00:33:37,010
erstmal im Rahmen der CPU 
angelegt und dann muss er 

651
00:33:37,020 --> 00:33:41,310
transferiert werden. 
Über den sogenannten PCI erst 

652
00:33:41,320 --> 00:33:44,960
mal P Express und 4 und 5 und 
Datenübertragung und so weiter. 

653
00:33:45,450 --> 00:33:48,620
Da kommt das Thema, das ist 
quasi die Schnittstelle zwischen

654
00:33:48,630 --> 00:33:52,480
CP und GPUS dieser PCI Express 
ist diese PC Express 

655
00:33:52,490 --> 00:33:56,670
Schnittstelle die manchmal wenn 
man recht hat und das ist nicht 

656
00:33:56,680 --> 00:33:59,440
ganz unwichtig, denn das braucht
ja auch eine gewisse Zeit. 

657
00:33:59,520 --> 00:34:04,010
Du musst einmal das t Daten 
übertragen vom CPU RAM in den 

658
00:34:04,020 --> 00:34:08,330
GPU RAM ja und dann da rechnen, 
dann kommt das die Rechnung 

659
00:34:08,340 --> 00:34:11,270
wieder in DM zurück und dann 
muss das vom G RAM wieder zurück

660
00:34:11,280 --> 00:34:14,300
c Rahmen, damit das ausgewertet 
werden kann und so weiter ja zum

661
00:34:14,310 --> 00:34:18,040
Final ja dann spricht von 
arithmetischer Dichte ja, wenn 

662
00:34:18,050 --> 00:34:23,060
jetzt deine Rechenoperationen 
nicht genug sind, sodass quasi 

663
00:34:23,210 --> 00:34:25,790
das braucht nämlich Zeit. 
Die Übertragung damals, das wird

664
00:34:25,800 --> 00:34:27,639
jetzt alles viel besser. 
Deswegen kommt das jetzt auch 

665
00:34:27,650 --> 00:34:29,250
so. 
Damals waren die PCI Express 

666
00:34:29,260 --> 00:34:31,940
Dinge noch nicht so schnell. 
Das heißt du hast halt Zeit 

667
00:34:31,949 --> 00:34:33,580
verloren. 
Bei dem ganzen Prozedere, dass 

668
00:34:33,590 --> 00:34:35,670
du das machst. 
Das braucht ein bisschen, was du

669
00:34:35,679 --> 00:34:39,900
da hast ja hat sich das manchmal
nicht gelohnt, ja, und deswegen 

670
00:34:39,909 --> 00:34:42,889
ist das heute alles super, das 
ist alles total schnell und du 

671
00:34:42,900 --> 00:34:45,190
hast halt bei den Grafikkarten 
ich habs nochmal gelesen die 

672
00:34:45,199 --> 00:34:48,710
haben halt bis zu 48 Gigabyte 
dediziertem Arbeitsspeicher der 

673
00:34:48,719 --> 00:34:52,330
Grafikkarte, ja 48 Gigabyte, die
Kosten dann auch also es sind 

674
00:34:52,340 --> 00:34:54,600
hier so die die krassen Dinger 
von von n Video. 

675
00:34:54,610 --> 00:34:58,550
Ich hab mal eine hier, ich hab 
sowas nicht, aber die Kosten 

676
00:34:58,560 --> 00:35:01,210
hier achttausendsechshundert 
Euro ein so ne Karte ja, das ist

677
00:35:01,220 --> 00:35:05,670
irgendwie so, dass der entweder 
ATX 8000 oder so die gerade so 

678
00:35:05,680 --> 00:35:10,590
die kriegst du ja. 48 Gigabyte 
und das ist natürlich praktisch 

679
00:35:10,600 --> 00:35:13,360
dann jetzt eine riesen Matrix 
riesenproblem kannst du dann 

680
00:35:13,370 --> 00:35:16,850
schon also große Teile von 
deinem Modell für die KI kannst 

681
00:35:16,860 --> 00:35:19,530
du dann einmal in einem auf die 
Grafikkarte laden und dann macht

682
00:35:19,540 --> 00:35:23,900
es halt rums rums Rums, ein paar
Takten mit Zigtausenden von 

683
00:35:23,910 --> 00:35:26,160
Threads. 
Gleichzeitig wird Durchgenudelt 

684
00:35:26,170 --> 00:35:28,620
und dann kommt wieder zurück und
dann kriegst du richtig später 

685
00:35:28,670 --> 00:35:33,390
also ja letzte Frage damit wir 
den Bogen n bisschen vielleicht 

686
00:35:33,400 --> 00:35:37,300
auch wieder zum Thema saß wie 
sehr spielt das Thema für dich 

687
00:35:37,310 --> 00:35:39,740
eine Rolle in in deiner 
Tätigkeit als Programmierer 

688
00:35:39,750 --> 00:35:43,640
einer? 
Wecker einer saß Anwendung, wie 

689
00:35:43,650 --> 00:35:46,840
wir sie haben SAP Anwendung 
machst du darüber Gedanken oder 

690
00:35:46,850 --> 00:35:50,760
kommt das erst zum Tragen, wenn 
wir mal Zehntausende User 

691
00:35:50,770 --> 00:35:52,940
gleichzeitig auf der Plattform 
hätten? 

692
00:35:52,950 --> 00:35:57,930
Also inwieweit denkst du da 
jetzt drüber nach oder oder oder

693
00:35:57,940 --> 00:35:59,330
denkst du voraus? 
Wie kann man sich das 

694
00:35:59,340 --> 00:36:01,940
vorstellen? 
Wir haben hauptsächlich 

695
00:36:01,950 --> 00:36:05,450
Netzwerkintensive. 
Probleme wir müssen halt viele 

696
00:36:05,460 --> 00:36:07,230
Netzwerkanfragen machen, 
vielleicht ein bisschen Pfeile, 

697
00:36:07,240 --> 00:36:10,810
also IO sagt man Input Output 
und so weiter, das heißt, wir 

698
00:36:10,820 --> 00:36:13,850
kommen nie, wir kommen immer 
zurecht mit wenig Threads. 

699
00:36:13,860 --> 00:36:17,110
Also unser Problem unsere Bilder
und so weiter ist halt einfach 

700
00:36:17,120 --> 00:36:20,480
kein arithmetisches Number 
crunching, wie man sagt. 

701
00:36:20,490 --> 00:36:23,030
Problem also wir machen also 
wenn wir nicht gerade selber 

702
00:36:23,040 --> 00:36:25,980
Modell trainieren, ne, aber das 
ist ja wohl noch experimentellen

703
00:36:25,990 --> 00:36:29,170
arbeiten, dass wir auch KI 
integrieren so dann ja, aber 

704
00:36:29,180 --> 00:36:30,670
ansonsten müssen wir nicht über 
sowas nachdenken. 

705
00:36:30,680 --> 00:36:33,920
Wir haben auch keine GS braucht 
man normalerweise auch nicht und

706
00:36:33,930 --> 00:36:38,260
wir und die Lastverteilung von 
von für Netzwerke und und und. 2

707
00:36:38,270 --> 00:36:41,420
und so weiter ist flüssig läuft 
das machst du halt über auf viel

708
00:36:41,430 --> 00:36:44,380
höherem Level, das machst du 
quasi über die Containerisierung

709
00:36:44,390 --> 00:36:47,980
über die Clouds, also werden wir
wir skalieren, indem wir einfach

710
00:36:47,990 --> 00:36:51,460
mehrere Anwendungen quasi 
anmachen ja OK, ich verstehe das

711
00:36:51,470 --> 00:36:54,860
heißt alles, was wir an Software
haben oder bereitstellen ist 

712
00:36:54,870 --> 00:36:57,400
nicht so Rechenintensiv sind 
keine rechenintensiven 

713
00:36:57,410 --> 00:37:01,120
Bestandteile drin, dass man das 
berücksichtigen müsste, genau 

714
00:37:01,160 --> 00:37:03,650
größere. 
Genauso muss auch man muss sehr 

715
00:37:03,660 --> 00:37:06,520
aufpassen also das, das machst 
du ja auch nicht soeben nebenbei

716
00:37:06,530 --> 00:37:09,310
bei einem Trading. 
Das hab ich nicht, dass wir 

717
00:37:09,320 --> 00:37:13,080
nochmals kurz die letzte kurz 
letztes Ding so da wird ja auch 

718
00:37:13,090 --> 00:37:15,720
heute schon viel mehr geholfen 
als früher, aber es ist so wenn 

719
00:37:15,730 --> 00:37:19,910
du wenn du halt gleichzeitig 
läufst und dann aber wieder du 

720
00:37:19,920 --> 00:37:22,000
brauchst trotzdem wieder 
Austausch von Informationen 

721
00:37:22,010 --> 00:37:23,770
will. 
Die gleitenden musst, irgendwann

722
00:37:23,780 --> 00:37:28,250
müssen die das Bild von der 
vielleicht sagst du eine und 

723
00:37:28,260 --> 00:37:32,580
dann teilst du auf 4 deine hats 
irgendwie 4 Waggons oder sowas 

724
00:37:32,590 --> 00:37:35,820
und so und dann dann fahren die 
alle alle gleichzeitig 

725
00:37:35,830 --> 00:37:37,230
nebeneinander auf hier 
erschienen. 

726
00:37:37,280 --> 00:37:39,900
Irgendwann müssen sie wieder 
zurückkommt, die zurückgeht, 

727
00:37:39,910 --> 00:37:42,670
weil du musst die Information 
irgendwie zusammen und irgendwie

728
00:37:42,680 --> 00:37:46,020
als Ganzes dem Nutzer oder dem 
Pfeiler zur Verfügung gestellt, 

729
00:37:46,030 --> 00:37:48,260
ne. 
Und da wird schwierig, da musst 

730
00:37:48,270 --> 00:37:51,850
du aufpassen, denn jedes 
Programm, egal was geht halt 

731
00:37:51,860 --> 00:37:55,510
sterben, wenn du gleichzeitig 
meinst du müsstest die Stelle im

732
00:37:55,550 --> 00:37:57,410
Speicher schreiben und das 
passiert ganz schnell. 

733
00:37:57,420 --> 00:38:01,240
Das machst es gibt ein Konzept, 
das heißt Mutex oder sehen wir 

734
00:38:01,250 --> 00:38:04,660
vorher muss halt aufpassen, dass
du, dass du Sachen Lockst quasi,

735
00:38:04,670 --> 00:38:08,660
dass jetzt die das gleichzeitig 
nicht irgendwelche Sachen weg 

736
00:38:08,670 --> 00:38:11,430
kommen können und so weiter also
man muss als Programmierer 

737
00:38:11,440 --> 00:38:15,000
extrem vorsichtig sein und 
aufpassen, dass da nichts schief

738
00:38:15,010 --> 00:38:16,650
geht. 
So deswegen ist also wenn du. 

739
00:38:17,530 --> 00:38:20,760
Wenn du so richtig, wenn du 
richtig selber in die Tasten 

740
00:38:20,770 --> 00:38:23,360
haust und schreibst du Software,
die in sich inhaltlich Thread 

741
00:38:23,370 --> 00:38:26,920
ist, muss extrem aufpassen, das 
kann kann schwer schief gehen 

742
00:38:27,120 --> 00:38:29,440
und die sind extrem schwer zu 
debuggen. 

743
00:38:29,490 --> 00:38:31,490
Die Probleme, weil die nämlich 
nicht. 

744
00:38:32,280 --> 00:38:35,370
Nicht immer gleich auftreten, 
weil du das kannst du nicht 

745
00:38:35,380 --> 00:38:38,680
beeinflussen was hast denn du 
weißt nämlich nicht wie schnell 

746
00:38:38,690 --> 00:38:40,270
sind die wirklich? 
Und jedes Mal, wenn das Programm

747
00:38:40,280 --> 00:38:43,480
neu starten, das alles wieder 
anders, vielleicht gerade eben 

748
00:38:43,490 --> 00:38:46,000
was anderes noch macht. 
So ist der n bisschen langsamer,

749
00:38:46,010 --> 00:38:50,510
nächste und nur in den einen von
10000 Fällen ist gerade so blöd 

750
00:38:50,520 --> 00:38:53,350
getimt, dass die tatsächlich 
gleichzeitig aufeinander treffen

751
00:38:53,490 --> 00:38:55,590
und an der Stelle hast du keinen
Schutz eingebaut und der 

752
00:38:55,600 --> 00:38:58,620
Software macht er eine ganze 
Anwendung crashed. 

753
00:38:59,270 --> 00:39:01,640
Was passiert einem Nutzer von 
10000 einmal? 

754
00:39:01,650 --> 00:39:03,750
Irgendwann so ja, und dann 
denkst du n scheiß kriegst du 

755
00:39:03,760 --> 00:39:06,200
graue Haare, denkst du verflixte
Kiste, was hier los ist und du 

756
00:39:06,210 --> 00:39:08,600
kannst das nicht nachstellen, 
weil nicht passiert, weil es so 

757
00:39:08,610 --> 00:39:12,080
selten passiert zum Beispiel 
also das hat alles das hat so 

758
00:39:12,090 --> 00:39:14,060
also als Softwareentwickler ist 
das n? 

759
00:39:15,150 --> 00:39:17,270
Die sind auch sehr gefragt, die 
sich sehr gut auskennen, wenn 

760
00:39:17,280 --> 00:39:19,880
man so low Level was machen 
will, dann muss man genau 

761
00:39:19,890 --> 00:39:21,620
wissen, was man tut. 
Das ist gar nicht so einfach, 

762
00:39:21,630 --> 00:39:25,200
ja, alles klar. 
Danke Burkhard gibt es noch 

763
00:39:25,240 --> 00:39:28,890
letztes Thema oder irgendwas, 
was du hinzufügen möchtest? 

764
00:39:28,900 --> 00:39:30,440
Ansonsten machen wir den Deckel 
drauf. 

765
00:39:30,560 --> 00:39:33,250
Ich glaube, wir machen drauf 
prima dann vielen dank, euch 

766
00:39:33,260 --> 00:39:37,190
fürs Zuhören falls ihr es noch 
nicht gemacht habt und euch der 

767
00:39:37,200 --> 00:39:40,290
Podcast gefällt, dann empfiehlt 
es doch mal jemanden aus eurem 

768
00:39:40,300 --> 00:39:43,030
Netzwerk oder gibt uns eine 
Bewertung auf Spotify, Apple 

769
00:39:43,040 --> 00:39:44,970
oder wo auch immer da freuen wir
uns drüber. 

770
00:39:45,280 --> 00:39:48,010
Also danke fürs Zuhören. 
Danke Burkhard zunächst Tschüss.

771
00:39:48,020 --> 00:39:53,980
Hamburg. 
Vielen Dank fürs Zuhören dieser 

772
00:39:53,990 --> 00:39:57,020
Folge von einfach komplex die 
Folge gefallen dann lass uns 

773
00:39:57,030 --> 00:39:59,710
doch ne gute Bewertung da oder 
Teile die Folge mit jemanden aus

774
00:39:59,720 --> 00:40:02,850
deinem Netzwerk für Kritik 
zufolge Anregungen und Fragen 

775
00:40:02,860 --> 00:40:05,810
für neue Folgen freuen wir uns 
auf deine Email an Podcast 

776
00:40:05,820 --> 00:40:08,990
Dateien w Punkt com Abonniere 
jetzt unseren Podcast um keine 

777
00:40:09,000 --> 00:40:13,410
Folge mehr zu verpassen bis zum 
nächsten mal Tschüss aus Hamburg

778
00:40:13,420 --> 00:40:13,470
h.
