PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Multithreading ist allgegenwärtig


Raff
2008-09-14, 15:59:27
Aktuelle Software mit einem Singlecore-Prozessor zu nutzen macht keinen Spaß. Aktuelle Spiele profitieren massiv (= 100 Prozent) von einem zweiten Kern. Selbst Installationen aktueller Spiele schreien nach mehr als einem Kern: Es wird entpackt, ein Solist ist stets bei 100 Prozent. So schaut das bei Stalker: Clear Sky aus:

http://666kb.com/i/b23vclzh9hb29yor5.png

Wie man sieht, hat die Kiste genug RAM und ist von unnötigen Prozessen befreit. Dennoch hechelt der einst mächtige Pentium-M mit 2,75 GHz ganz schön. Nebenbei surfen ist extrem langsam, Winamp läuft im Hintergrund aber ohne Stocken. Allein für diese "Smoothness" lohnt selbst der popeligste Dualcore. Das ist nur eines von vielen Beispielen. Sehr nett ist auch die Fakefactory-Texturmod, die auch mit 4 Kernen etwas anzustellen vermag.

Willkommen im Zeitalter des Multithreadings. Wir sind vollständig angekommen. Ok, bis auf einige uralte Spieleengines, die immer wieder recycled werden ... ;)

MfG,
Raff

Gast
2008-09-14, 16:01:41
Das hat wenig mit dem Spiel zu tun...

Das ein Packer multithreaded sein kann, ist schon lange bekannt... winrar,7zip können 2-4 Kerne ausnutzen und daher wundert mich das bei diesen Installern gar nicht. Gilt aber nur selten fürs spiel :)

crazyRaccoon
2008-09-14, 16:25:07
Das hat wenig mit dem Spiel zu tun...
Ich glaube das hat Raff auch nicht gemeint...es war einfach ein Beispiel aus der Praxis, wie sehr Dual-Core im Vorteil sein kann.

Gast
2008-09-14, 16:28:17
Das Dual Core etwas bringt,ist unumstritten. Das ist allein schon dann der fall,wenn ein core voll ausgelastet wird, dann werden weitere anwendungen auf den anderen kern ausgelagert.

aber mit multithreading hat das noch wenig zu tun,denn auslagern geht auch bei Singlethreaded anwendungen.;)

bei einem dual core könnte es z.B. so aussehen: 100 % und 20 % oder aufgeteilt auf beide. Neben der installation läuft ja noch das betriebssystem im hintergrund, alle treiber, virenscanner etc.
das heißt noch lange nicht, das bei einem quad z.B. alle VIER kerne ausgenutzt werden.

Pirx
2008-09-14, 16:28:51
Das träge Nebenbei-Surfen hängt aber imo auch mit dem Scheduler zusammen, hätte der Installer ne niedrigere Priorität, wäre das Surfen flüssiger.

Pennywise
2008-09-14, 16:42:17
Dafür hatte Intel das Hyperthreading eingeführt. Fand ich zu Zeiten der SingleCores sehr sinnvoll.

crazyRaccoon
2008-09-14, 16:57:10
aber mit multithreading hat das noch wenig zu tun,denn auslagern geht auch bei Singlethreaded anwendungen.;)

sicher, aber nur logisch, also "quasi-parallel" durch einen schnellen Wechsel von Threads; je nach der Prio, mit der die eine oder andere Anwendung ausgeführt wird, fühlt es sich für den User scheinbar schneller an, aber in Wirklichkeit ist es insgesamt natürlich nicht schneller.

Bei 2 Cores können zwei Anwendungen dagegen echt parallel ausgeführt werden, vorausgesetzt es stehen keine anderen Ressourecen im Weg (z.B. Festplatte).

PatkIllA
2008-09-14, 17:01:52
sicher, aber nur logisch, also "quasi-parallel" durch einen schnellen Wechsel von Threads; je nach der Prio, mit der die eine oder andere Anwendung ausgeführt wird, fühlt es sich für den User scheinbar schneller an, aber in Wirklichkeit ist es insgesamt natürlich nicht schneller.Auch bei SMT wird wirklich parallel code ausgeführt. Wie groß der Effekt ist hängt dann davon ab welche Software gerade welche Einheite belegt.

Mr. Lolman
2008-09-14, 17:35:36
Wär ja schlimm, wenn ein einzelner Core nicht ordentlich ausgelastet werden würde. Wenn das Multitasking am Singlecore bei 100% Auslastung zu langsam ist, empfiehlt es sich die Prozesspriorität des jew. Prozesses zu verringern.

Mit dem Schmäh hab ich mit nem San Diego @ 3Ghz zB super Oblivion zocken und am 2. Bildschirm über die Voodoo5 irgendwelche (analogen!) TV-Programme laufen lassen können. Bzw. hab ich den Dscaler schon immer mit hoher Priorität gestartet, und nebenbei gemütlich herumsurfen oder eben gar was zocken können.

sicher, aber nur logisch, also "quasi-parallel" durch einen schnellen Wechsel von Threads; je nach der Prio, mit der die eine oder andere Anwendung ausgeführt wird, fühlt es sich für den User scheinbar schneller an, aber in Wirklichkeit ist es insgesamt natürlich nicht schneller.


Das stimmt. Aber das ist ja das Praktische an den Prioritäten. Der Installer kann ruhig ein bisschen länger brauchen, wenn man dafür inzwischen ohne Einschränkungen zB herumsurfen kann...

Thanatos
2008-09-14, 18:00:42
Das stimmt. Aber das ist ja das Praktische an den Prioritäten. Der Installer kann ruhig ein bisschen länger brauchen, wenn man dafür inzwischen ohne Einschränkungen zB herumsurfen kann...

Ja, das war auch immer mein Weg wie ich mir das "einkernige Leben" trotz vieler gleichzeitig laufender Programme versüßt habe. Mit solchen Programmen wie easytoolz kann man wunderbar Profile zuteilen un dso flüssig arbeiten wie mit einem Dualkernprozessor.

Natürlich werden die Programme dadurch nicht schneller fertig, aber man kann dennnoch ganz bequem weiterarbeiten wie mit einem nicht voll ausgelasteten Dualkernprozessor.

Merkor
2008-09-14, 18:19:47
Dafür hatte Intel das Hyperthreading eingeführt. Fand ich zu Zeiten der SingleCores sehr sinnvoll.

So ist es. Deswegen hatte ich auch nach Umstieg von einem P4 mit HT auf einen C2D keinen großen Aha-Effekt beim heftigen Multitasking.

In Zeiten, in denen man einen kleinen Dual-Core auf Conroe-Basis für 25€ bekommt, braucht HT jedoch keiner mehr in dem Preissegment...

Gast
2008-09-14, 19:39:43
Auch bei SMT wird wirklich parallel code ausgeführt.
Beim P4 waren aber "nur" ein paar Register und Queues doppelt ausgeführt; die eigentliche Auführungseinheiten wurden gemeinsam genutzt, welshalb nicht im gleichen Grade Code ausgeführt werden kann wie bei 2 echten kompletten Cores.

Trotzdem war SMT natürlich sinnvoll, ein guter Ansatz und zu Recht wieder bei den kommenden Intel Prozessoren eingeführt.

Savay
2008-09-14, 19:45:56
So ist es. Deswegen hatte ich auch nach Umstieg von einem P4 mit HT auf einen C2D keinen großen Aha-Effekt beim heftigen Multitasking.

und ich z.B. habe beim umstieg vom A64 SingleCore auf nen DualCore keinen echten AHA-effekt beim "multitasking" wahrgenommen! :biggrin:

dieser ganze "HT effekt" war doch rein subjektiv was die "smoothness" des systems angeht. :rolleyes:
abseits vom performance gewinn durch die DualCores ist das arbeiten bei nem anständig konfigurierten rechner nämlich meiner erfahrung nach nicht wirklich anders als auf nem singlecore. und beim vergleich HT <-> non-HT CPU ist das mit sicherheit ja auch nicht anders :D :wink:

es lebe der "HT-smoothness mythos"!

pest
2008-09-14, 20:24:28
mir wäre es lieb wenn mal ein Core anständig ausgelastet wäre.

Gast
2008-09-14, 21:11:41
mir wäre es lieb wenn mal ein Core anständig ausgelastet wäre.

das ist praktisch immer der fall. weiß gar nicht wo du zu dieser these kommst.

sogar eine dos anwendung kann einen einzelnen core 100% auslasten. das du keine 100% angezeigt bekommst, liegt schlichtweg daran, das dein betriebssystem die aufgaben verteilt (Anwendung + Betriebssystem + Treiber + REST) und zwar auf alle Kerne die zur Verfügung stehen. Die Anwendung nutzt also wirklich einen core voll aus, nur wird das nicht so dargestellt.
was 100% auf einem SC ist, könnten z.b. 50 und 50% auf einem Duo oder auch 95 % und 5 % sein... oder gar 25 % 25 % 25 % 25 %.

ich hatte z.B. mal ein spiel das hatte auf jeden core maximal 25-28% belegt, war selbst aber nicht multithreaded geproggt.

BlackBirdSR
2008-09-14, 21:36:30
Beim P4 waren aber "nur" ein paar Register und Queues doppelt ausgeführt; die eigentliche Auführungseinheiten wurden gemeinsam genutzt, welshalb nicht im gleichen Grade Code ausgeführt werden kann wie bei 2 echten kompletten Cores.


Warum sollten die Ausführungseinheiten auch doppelt vorhanden sein? Man kann Befehle ja dynamisch an freie Resourcen verteilen. Das beste ist aber eh die genutzte freie Zeit bei Stalls etc.
Ziel von SMT ist es, Befehle von 2 Threads gleichzeitig! in der Pipeline zu halten. Natürlich ist SMT und CMP/CMT etwas anderes. Trotzdem ist es immernoch Multithreading, und 2 Threads werden immernoch gleichzeitig ausgeführt. Und 2 Befehle unterschiedlicher Threads kann sehr wohl gleichzeitig ausgeführt werden.

Dieses abwechselnde abarbeiten ist das was ein Single-Core macht, nicht SMT.

][immy
2008-09-14, 21:41:56
ich hatte z.B. mal ein spiel das hatte auf jeden core maximal 25-28% belegt, war selbst aber nicht multithreaded geproggt.

das liegt dann eher daran, da windows den thread von core zu core schiebt und nicht an irgendwelchen parallelen berechnungen ;)

pest
2008-09-14, 22:08:49
das ist praktisch immer der fall. weiß gar nicht wo du zu dieser these kommst.

sogar eine dos anwendung kann einen einzelnen core 100% auslasten. das du keine 100% angezeigt bekommst, liegt schlichtweg daran, das dein betriebssystem die aufgaben verteilt (Anwendung + Betriebssystem + Treiber + REST) und zwar auf alle Kerne die zur Verfügung stehen. Die Anwendung nutzt also wirklich einen core voll aus, nur wird das nicht so dargestellt.
was 100% auf einem SC ist, könnten z.b. 50 und 50% auf einem Duo oder auch 95 % und 5 % sein... oder gar 25 % 25 % 25 % 25 %.

ich hatte z.B. mal ein spiel das hatte auf jeden core maximal 25-28% belegt, war selbst aber nicht multithreaded geproggt.

naa, ich mein was anderes, ich rede von der auslastung der recheneinheiten innerhalb der cores, das zeigt dir windows nicht an ;)

BlackBirdSR
2008-09-15, 00:02:46
naa, ich mein was anderes, ich rede von der auslastung der recheneinheiten innerhalb der cores, das zeigt dir windows nicht an ;)

Und da wirst du auch nie besonders hoch kommen. Daher macht diese Angabe eigentlich wenig Sinn ;).
Durchschnittlich hat eine moderne CPU eine IPC von 1-1.5 Befehlen/Takt. Das ist weit unter voller Auslastung. Liegt aber nicht an Windows, sondern am Code den die CPU ausführen muss - der ist nur sehr schwer zu paralleliseren.

registrierter Gast
2008-09-15, 00:04:13
Schon damals, als die Prozessoren nur 600MHz hatten, machte sich ein Mehrprozessorsystem aus genau diesem Grund bezahlbar. Wenn man irgendetwas Rechenintensives machte, war das ganze System blockiert. Mit einem zweiten Prozessor (heute ein zweiter Kern) ließ es sich trotz der wenigen hundert MHz immernoch gut arbeiten. :)


Wenn du (Raff) 28 Prozesse am Laufen hast, heißt das für dich, dass da nichts Unnötiges läuft? :|

Thanatos
2008-09-15, 00:15:41
Schon damals, als die Prozessoren nur 600MHz hatten, machte sich ein Mehrprozessorsystem aus genau diesem Grund bezahlbar. Wenn man irgendetwas Rechenintensives machte, war das ganze System blockiert. Mit einem zweiten Prozessor (heute ein zweiter Kern) ließ es sich trotz der wenigen hundert MHz immernoch gut arbeiten. :)


Wenn du (Raff) 28 Prozesse am Laufen hast, heißt das für dich, dass da nichts Unnötiges läuft? :|

Ja, aber nur wenn man die Priorität nicht regelt. BOINC wäre ja auch sonst selbstmord auf jedem PC, auch auf Vierkernprozessoren, da diese art Programme ja linear mit der Anzahl der Kerne skalieren.


Daher stimme ich meinem Vorredner zu, dass HT/Mehrkernsysteme und deren flüssigeres Arbeitsgefühl ein Hype ist.

registrierter Gast
2008-09-15, 00:26:37
Ja, aber nur wenn man die Priorität nicht regelt. BOINC wäre ja auch sonst selbstmord auf jedem PC, auch auf Vierkernprozessoren, da diese art Programme ja linear mit der Anzahl der Kerne skalieren.


Daher stimme ich meinem Vorredner zu, dass HT/Mehrkernsysteme und deren flüssigeres Arbeitsgefühl ein Hype ist.
Erwartet man wirklich flüssiges Arbeiten, wenn man den Rechner voll belastet? :confused: Das dann ein Priorisierung der Prozesse wichtig wird, ist klar.

Aber flüssiges Arbeiten im Sinne von einem Firefox, der dank eines Flashs auf einer Seite zu 100% ausgelastet wird ....auf einem Kern. Dann läßt es sich nebenher immernoch gut Mails schreiben.

Thanatos
2008-09-15, 00:32:31
Ja, das ist momentan noch so, wo der Großteil der Programme noch innerhalb eines Threads läuft. Sobald viele Rechenintensive Programme zwei Kerne voll auslasten wird ein Dualkernprozessor genau so an die Wand gefahren.

Mir geht es allgemein darum - so scheint es mir zumindest - dass die HT/Mehrkerntechnologie mystifiziert wird und man den Eindruck gewinnt, dass man früher gar nicht richtig arbeiten könnte und ein Mehrkernprozessor immer flüssiger sein wird, auch wenn ein Programm die komplette CPU voll auslasten würde.

Gast
2008-09-15, 01:32:24
Warum sollten die Ausführungseinheiten auch doppelt vorhanden sein? Man kann Befehle ja dynamisch an freie Resourcen verteilen. Das beste ist aber eh die genutzte freie Zeit bei Stalls etc.
Ziel von SMT ist es, Befehle von 2 Threads gleichzeitig! in der Pipeline zu halten. Natürlich ist SMT und CMP/CMT etwas anderes. Trotzdem ist es immernoch Multithreading, und 2 Threads werden immernoch gleichzeitig ausgeführt. Und 2 Befehle unterschiedlicher Threads kann sehr wohl gleichzeitig ausgeführt werden.

Vielleicht lag hier ein logischer Denkfehler meinerseits vor - ich ging davon aus, dass es zum Engpass in den Execution-Pipeline-Stufen kommt, weil ja diese eben nicht 2fach ausgelegt sind.

Jetzt wie du es aber erklärt hast, bin ich aber verwirrt und nicht so so sicher was richtig ist. :D

Bitte um weitere Aufklärung.

BlackBirdSR
2008-09-15, 01:55:34
Vielleicht lag hier ein logischer Denkfehler meinerseits vor - ich ging davon aus, dass es zum Engpass in den Execution-Pipeline-Stufen kommt, weil ja diese eben nicht 2fach ausgelegt sind.

Jetzt wie du es aber erklärt hast, bin ich aber verwirrt und nicht so so sicher was richtig ist. :D

Bitte um weitere Aufklärung.

Ausgangspunkt ist, dass moderne CPUs nicht annähernd so viele Berechnungen ausführen können, wie Resourcen vorhanden sind. Das liegt teils an x86, teils am Code der nicht gerade homogen und schön nach Plan läuft, teils an Speicherzugriffen weil der Cache wiedermal nicht schlau genug war ;). Das erzeugt oft Wartezeiten in denen große Teile der CPU still stehen. Beim Pentium4 war das auf Grund der vielen Pipelinestufen sogar extremer als je zuvor.

Die Idee: Zwei unabhängige Threads haben in der Regel große Teile an Programmcode, der nicht von einander abhängig ist. Was stört den Winamp MP3-Decoder, ob Paint.net gerade seinen Filter ausgeführt hat oder nicht? Was bei Out-Of-Order-CPUs wie dem Pentium4 oder Nehalem aufgrund des abgekoppelten BackEnds (den Ausführungseinheiten) gut klappt, bringt bei In-Oder CPUs (Atom, XBox360) aufgrund der speziellen Softwareauslegung ähnliche (bzw bessere) Vorteile.

Beim Pentium4 z.B werden jeden Takt abwechselnd die Befehle eines Threads in die Pipeline geladen. Hier arbeiter SMT also noch wie eine Superthreading, Single-Core CPU. Das ändert sich sobald die Befehle decodiert sind und nach dem Trace-Cache in den µOps-Puffern laden. Ab da an sind sie alle relativ gleich, und es geht einfach darum wer wo ausgeführt werden kann. Wenn FPU-ADD aus Thread2 in diesem Takt durch den Port kann, während die beiden ADDs aus Thread1 durch einen anderen Port können? - Prima. Am Ende stellen sich dann wieder alle in Reihe an. Takt 1 die max 3 Befehle aus Thread1 werden fertiggestellt, Takt 2 die max. 3 Befehle aus Thread2. Man merkt schon, das ist keine Verdopplung der Leistung. Aber es bringt wertvolle Prozente.
Aber das ist noch nicht Alles. Gar nicht so selten bekommt der P4 den Rachen nicht voll, und die Daten für den Filter aus Paint.net liegen nicht im direkten Cachezugriff. Also erstmal x-Takte warten. Während Villariba Willamette erstmal den Müll rausbringt und von Vorne beginnt, ist Villbacho Northwood immernoch mit dem 2. Thread beschäftigt.

In beiden Fällen sind die Ausführungseinheiten nie der Engpass. SMT ist ein verdammt gutes und billiges Mittel, um die CPU auch dann auszulasten, wenn sie stillstehen würde. Natürlich ist eine echte Dual-Core-CPU stärker. Aber darum ging es bei SMT nie. Der Beweggrund war immer nur, verlorene Leistung zurückzugewinnen. Denn ohne SMT wäre die einfach futsch und wertlos.

Gast
2008-09-15, 05:22:54
Mir geht es allgemein darum, da - so scheint es mir zumindest - dass die HT/Mehrkerntechnologie mystifiziert wird und man den Eindruck gewinnt, dass man früher gar nicht richtig arbeiten könnte und ein Mehrkernprozessor immer flüssiger sein wird, auch wenn ein Programm die komplette CPU voll auslasten würde.

Ja, das ist mir auch aufgefallen:
Hier im Forum wurde Multicore von den Freaks in den Himmel gehyped.
Als ich von Singlecore auf Dualcore umgestiegen bin, war ich doch sehr enttäuscht... der Mehrwert belief sich auf einige wenige Ausnahmen.
Von mehr "Smothness" konnte keine Rede sein.

Silverbuster
2008-09-15, 06:07:56
Wenn ich mal ganz ehrlich bin und meine letzten CPU Upgrades der letzten 4 Jahre heranziehe, nämlich von einem Athlon Sempron 2400+ -> Athlon 64 3500 -> X2 3800 der nach einigen Wochen auf 2,5Ghz getaktet wurde -> Q6600@3Ghz, wäre meine rein subjektive Meinung zum Vorteil mehrerer Kerne folgender.

Unter Vista hab ich immer nur einen Performancesprung gemerkt durch die Taktsteigerund der CPU an sich. Am deutlichsten war das beim Umstieg vom Athlon 64 3500 auf den X2 3800, was mir im Windowsalltag (damals XP) rein gar keinen Vorteil gebracht hatte. Allerdings hatte die Übertaktung des X2 3800 von 2Ghz auf 2,5Ghz dann doch ein wenig was gebracht, man konnte es "spüren".
Als ich jetzt vom X2 3800 auf den Q6600 @ 3Ghz umgestiegen bin, gab es einen Performancesprung, aber dieser ist nicht sonderlich, so das ich davon ausgehe das es wohl eher an der deutlich besseren Pro-Mhz Leistung des C2D liegt und nicht an der doppelten Anzahl der Kerne.
Allerdings gibt es einen anderen Punkt der mir immer eine Leistungssteigerung aufzeigt die rein durch die mehreren Kerne zustande kommt.

Während der Sempron beim Entpacken von GB großen Dateien völlig in den Knien war, konnte man beim Athlon 3500 zumindest noch nebenbei etwas anders machen. Beim umstieg auf den X2 3800, und damit auf zwei Kerne konnte ich neben dem Packen (ich muss das sehr häufig machen) noch locker Filme schauen und Serven so wie die eine oder andere Anwendung fahren.

Jetzt mit 4 Kernen kann ich Grid spielen, nebenbei DivX Filme schauen und noch andere Anwendungen laufen lassen, ohne das ich Performance Einbrüche habe. Und genau das hatte ich mir vom Quad erhofft.

Mag sein das die meisten Spiele kein echten Vorteil bei Spielen bringt, wer aber viel parallel macht, wird Freude am Quad haben.

Sorkalm
2008-09-15, 08:57:30
In Zeiten, in denen man einen kleinen Dual-Core auf Conroe-Basis für 25€ bekommt, braucht HT jedoch keiner mehr in dem Preissegment...

Bitte aber auch an die Notebook-Nutzer denken. Dort gibt es noch genug Single-Cores. In Zeiten von Netbooks wurde HT dort ja auch gerade als erstes recycelt (Atom).

BlackBirdSR
2008-09-15, 09:45:03
In Zeiten, in denen man einen kleinen Dual-Core auf Conroe-Basis für 25€ bekommt, braucht HT jedoch keiner mehr in dem Preissegment...

Wer sagt denn etwas von brauchen? SMT ist kein Ersatz für Dual-Cores. Soll es auch gar nicht sein. SMT ist eine billige Methode viel verschenkte Leistung wieder zu bekommen. Du würdest doch auch nicht auf höheren FSB verzichten, nur weil es jetzt 6MB statt 4MB L2 Cache gibt oder?

Gast
2008-09-15, 19:08:44
Ausgangspunkt ist, dass moderne CPUs nicht annähernd so viele Berechnungen ausführen können, wie Resourcen vorhanden sind. Das liegt teils an x86, teils am Code der nicht gerade homogen und schön nach Plan läuft, teils an Speicherzugriffen weil der Cache wiedermal nicht schlau genug war ;). Das erzeugt oft Wartezeiten in denen große Teile der CPU still stehen. Beim Pentium4 war das auf Grund der vielen Pipelinestufen sogar extremer als je zuvor.

Die Idee: Zwei unabhängige Threads haben in der Regel große Teile an Programmcode, der nicht von einander abhängig ist. Was stört den Winamp MP3-Decoder, ob Paint.net gerade seinen Filter ausgeführt hat oder nicht? Was bei Out-Of-Order-CPUs wie dem Pentium4 oder Nehalem aufgrund des abgekoppelten BackEnds (den Ausführungseinheiten) gut klappt, bringt bei In-Oder CPUs (Atom, XBox360) aufgrund der speziellen Softwareauslegung ähnliche (bzw bessere) Vorteile.

Beim Pentium4 z.B werden jeden Takt abwechselnd die Befehle eines Threads in die Pipeline geladen. Hier arbeiter SMT also noch wie eine Superthreading, Single-Core CPU. Das ändert sich sobald die Befehle decodiert sind und nach dem Trace-Cache in den µOps-Puffern laden. Ab da an sind sie alle relativ gleich, und es geht einfach darum wer wo ausgeführt werden kann. Wenn FPU-ADD aus Thread2 in diesem Takt durch den Port kann, während die beiden ADDs aus Thread1 durch einen anderen Port können? - Prima. Am Ende stellen sich dann wieder alle in Reihe an. Takt 1 die max 3 Befehle aus Thread1 werden fertiggestellt, Takt 2 die max. 3 Befehle aus Thread2. Man merkt schon, das ist keine Verdopplung der Leistung. Aber es bringt wertvolle Prozente.
Aber das ist noch nicht Alles. Gar nicht so selten bekommt der P4 den Rachen nicht voll, und die Daten für den Filter aus Paint.net liegen nicht im direkten Cachezugriff. Also erstmal x-Takte warten. Während Villariba Willamette erstmal den Müll rausbringt und von Vorne beginnt, ist Villbacho Northwood immernoch mit dem 2. Thread beschäftigt.

In beiden Fällen sind die Ausführungseinheiten nie der Engpass. SMT ist ein verdammt gutes und billiges Mittel, um die CPU auch dann auszulasten, wenn sie stillstehen würde. Natürlich ist eine echte Dual-Core-CPU stärker. Aber darum ging es bei SMT nie. Der Beweggrund war immer nur, verlorene Leistung zurückzugewinnen. Denn ohne SMT wäre die einfach futsch und wertlos.
Danke, das war gut erklärt, jetzt kann ich es nachvollziehen.

Merkor
2008-09-15, 19:38:37
Wer sagt denn etwas von brauchen? SMT ist kein Ersatz für Dual-Cores. Soll es auch gar nicht sein. SMT ist eine billige Methode viel verschenkte Leistung wieder zu bekommen. Du würdest doch auch nicht auf höheren FSB verzichten, nur weil es jetzt 6MB statt 4MB L2 Cache gibt oder?

Richtig. Es war eher so gemeint, dass ich bei einer 25€ CPU eher zugunsten von DC auf HT verzichten würde.

Gibt es eigentlich schon Cinebench-Benchmarks eines Nehalem mit/ohne aktiviertem HT?

Raff
2008-09-28, 00:49:32
So shout das mit einem Quad @ 3,5 GHz aus:

http://666kb.com/i/b2hf9gm6ec55ms3ui.png

Ab und an merkt man da schon, dass im Hintergrund etwas CPU-Zeit zieht. Aber natürlich ist das kein Vergleich zur Vorstellung des Singlecores. Mit einem Core 2 Duo wären deutliche Beeinträchtigungen der Leistung merklich.

MfG,
Raff

Mr. Lolman
2008-09-28, 11:11:11
Was zeigst du uns da? Wie gesagt: Mit geschickt verteilten Prozessprioritäten kann man selbst mit nem Single Core schönes Multitasking betreiben...

2L4Y
2008-09-28, 11:42:49
Nur um auf das 1. Bild des Treadstarters zu kommen, kann es sein das die neuere Software mit Hyperthreading nichts mehr anfangen kann?
Oder liegt es daran das es keine rolle spiel da der Prozessor eh an sein Maximum arbeitet,und sich eine Aufteilung nicht lohnt.

Hier mal ein vergleich mit einem Quad 6600 im Spiel Stalker mit 4 und mit 2 abgeschalteten Core´s ;
4 Kerne
http://img3.imagebanana.com/img/6be1a8x4/thumb/4core.png (http://img3.imagebanana.com/view/6be1a8x4/4core.png)
2 Kerne
http://img3.imagebanana.com/img/t46yo8y4/thumb/2core.png (http://img3.imagebanana.com/view/t46yo8y4/2core.png)

Botcruscher
2008-09-28, 12:29:18
Was zeigts du uns da? Wie gesagt: Mit geschickt verteilten Prozessprioritäten kann man selbst mit nem Single Core schönes Multitasking betreiben...


Eben. Ich seh da nur wie schlecht Windows und die Programme mit einem Quad zurecht kommen.

Gast
2008-09-28, 12:30:14
Jetzt mit 4 Kernen kann ich Grid spielen, nebenbei DivX Filme schauen und noch andere Anwendungen laufen lassen, ohne das ich Performance Einbrüche habe. Und genau das hatte ich mir vom Quad erhofft.


Lese ich da einen Ansatz von Sarkasmus? *auchChameleonaugenunddatenverarbeitunghabenwill*