Hi,
hmm
![:hmm:](wcf/images/smilies/hmm.gif)
Baba, ich glaub hier muss was richtig gestellt werden.
4 Kerne und 8 Threads, da jeder Kern 2 Threads verwalten kann.
1. Falsch. Threads werden nicht verwaltet, sondern bearbeitet.
Durch Hyperthreading teilen sich , je nach Aufgabe 2 Threads eines Kernes Ihre Aufgaben mit je 1,75 GHz.
2.
![:golly:](wcf/images/smilies/golly.gif)
Falsch. Das ist mir neu, das neuerdings die Taktrate der CPU beim abarbeiten eines Threads in einem Kern geteilt und dadurch heruntergesetzt wird. Ich glaub ich hab in der Stunde meiner IT-Ausbildung gefehlt
So arbeitet Dein PC mit 4 Kernen mit 3,4 GHZ und / oder 3,9 GHz, oder mit Hyperthreading mit 8 Threads mit +/- 1,75 GHz.
und 3. Deine Aussage ist hier im letzten Teil des Satzes, nach den 3.9 Ghz auch Falsch.
Das ist genau das wovor mich mein IT-Lehrer immer gewarnt hat. Mist hat der Alte Pauker doch Recht gehabt.
So jetzt aber mal ernsthaft. Nix gegen Dich, Baba. Das man nicht alles Wissen kann ist mir durchaus klar, aber es gibt hier im Netz sehr gute Informationsquellen zum Thema CPU Aufbau und der Funktionsweise des Hyper-Threading im Zusammenhang mit Multi-Core CPU´s.
Definition eines Thread
Kleinster ausführbarer Teil eines Tasks. Beim Task handelt es sich um jenen meist sehr kleinen Teil eines Programms, den ein Prozessor auf einmal bearbeiten kann. Ein Prozessor ist sogar in der Lage, Programmbruchstücke zu bearbeiten, die deutlich kleiner als Tasks sind. Allerdings funktioniert dies nur bis zu einer Untergrenze, die man als
Thread bezeichnet.
Hyper-Threading auch Parallelverarbeitung
Hierbei wird durch Hardware-Unterstützung in der CPU eine bedingte Parallelverarbeitung realisiert. Der Leistungsgewinn wird dadurch erzielt, dass CPU-Bestandteile wie der Decoder dupliziert werden. Zu diesen duplizierten Einheiten der CPU zählen all jene, die den Status der CPU und ihrer Ausführung speichern, damit also auch CPU-Register. Dies sind unter anderem die Control Register mit den Flags und die allgemeinen Arbeitsregister. Nicht dupliziert werden die Ausführeinheit und die ALU. Die Duplizierung soll dafür sorgen, dass die Ausführungseinheit (Execution Unit) der CPU besser ausgelastet wird. Ohne Hyper-Threading würde beispielsweise bei einem Cache-Fehler (Cache-Miss) die Execution Unit untätig sein, bis der Cache gefüllt ist. Begleitend dazu sind beim Hyper-Threading die Registersätze in den CPUs verdoppelt. Somit ist eine parallele Ausführung der Operationen möglich.
Hyper-Threading in Multi-Core-CPUs
Beim nächsten Schritt der Parallelverarbeitung dupliziert man gar ganze Rechenkerne in Multi-Core-CPUs. Im Gegensatz zum Hyper-Threading werden nun also nicht mehr ausgewählte Teile einer CPU, sondern die gesamte CPU dupliziert. Multi-Core-CPUs weisen folglich auch mehrere Execution-Units auf. Die Execution-Unit wiederum ist für die Ausführung der Instruktionen zuständig. Multithreaded Programme, die auf eine Multi-Core-CPU ausgeführt werden, laufen somit vollständig parallel. Jeder dieser Threads wird dann auf einem eigenen CPU-Core, mit eigener Execution-Unit und eigenen Registersatz ausgeführt.
So, und das ganze jetzt in kurz und
sehr vereinfacht ausgedrückt
![^^](wcf/images/smilies/squint.png)
: Die Hyper-Threading Technologie simuliert 2 Prozessorkerne wo nur einer in Wirklichkeit existent ist. <-- Diese Aussage bezog sich hier auf eine Single Core CPU. Den Rest kann man sich ja dann denken, oder.
Ich würde sagen - somit zurück zum eigentlichen Thema.
Mfg Erom