Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
Hardware Probleme Hardware, Probleme, Fehler & Lösungen.

CPU/Core Number of Threads

Diskussion: CPU/Core Number of Threads im Forum Hardware Probleme, in der Kategorie PC Foren; Anzeige Hallo, schaut man auf der Intel-Seite die Spezifikation eines Prozessors an steht da immer etwas von "# of Threads". ...

Antwort
Alt 16.12.11, 11:41   #1 (permalink)
Senior Member
 
Benutzerbild von odigo
 
Registriert seit: 25.12.04
odigo Leistung: 8086odigo Leistung: 8086
odigo eine Nachricht über ICQ schicken
Likes: 54
Standard CPU/Core Number of Threads

Anzeige

Hallo,

schaut man auf der Intel-Seite die Spezifikation eines Prozessors an steht da immer etwas von "# of Threads".
Weiß jemand was das genau bedeutet? Was würde passieren wenn ich ein Programm schreibe das mehr Threads erzeugt als in der Spezifiktion steht?

Hier ein Beispiel:
Intel® Xeon® Processor E7540 (18M Cache, 2.00 GHz, 6.40 GT/s Intel® QPI)

Gruß
odigo

odigo ist gerade online   Mit Zitat antworten
Alt 16.12.11, 12:03   #2 (permalink)
 
Benutzerbild von blue182
 
Registriert seit: 21.08.10
blue182 Leistung: Facit NTK
Likes: 10
Standard

Zitat:
Zitat von odigo Beitrag anzeigen
Hallo,

schaut man auf der Intel-Seite die Spezifikation eines Prozessors an steht da immer etwas von "# of Threads".
Weiß jemand was das genau bedeutet? Was würde passieren wenn ich ein Programm schreibe das mehr Threads erzeugt als in der Spezifiktion steht?

Hier ein Beispiel:
Intel® Xeon® Processor E7540 (18M Cache, 2.00 GHz, 6.40 GT/s Intel® QPI)

Gruß
odigo
Sobald das OS Multiprozessfähig ist, regelt das OS welcher Prozess von welcher CPU abgearbeitet wird. Ein Thread ist mehr oder weniger ein Prozess, der den Adressraum vom Mutter-Prozess teilt. Sind nicht genügend Einheiten zum Abarbeiten der Threads vorhanden - Was quasi Standard ist - verwaltet ein Schedular die einzelnen Prozesse.

Generell kann man sagen "Eine Recheneinheit arbeitet einen Thread ab". Allerdings gibt es Techniken mit denen eine CPU mehrere Threads abarbeiten kann - parallel.
Der Core i5 in meinem iMac z.B. hat einen Dual-Core i5, welcher 4 Threads verarbeitet kann. Die CPU kann also maximal 4 Prozesse bzw. Threads gleichzeitig abarbeiten. Wie mit dem Schedular angedeutet, blockiert ein Thread nicht eine Recheneinheit vollständig. Ein Thread/Prozess wird schlafen gelegt bis der Schedular der Meinung ist, dass jener jetzt seine Arbeit verrichten darf.


Schließlich ist es egal wie viele Threads dein Prozess erzeugt. Dein OS kümmert sich um die Verwaltung. Du musst natürlich dafür sorgen, dass sich die Threads nicht gegenseitig stören - Stichwort Semaphore.

Btw ... Firefox nutzt bei mir aktuell 22 Threads
blue182 ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 16.12.11, 16:19   #3 (permalink)
 
Benutzerbild von benediktibk
 
Registriert seit: 03.05.07
benediktibk Leistung: 8086benediktibk Leistung: 8086
Likes: 50
Standard

Ich vermute mal die Intelseite drückt damit das Hyperthreading aus. Es gibt Prozessoren von Intel die pro CPU-Kern teilweise zwei Befehle in einem Takt ausführen können. Das wird technisch so umgesetzt, dass Teile des Cores doppelt vorhanden sind, und wenn sich zwei Befehle nicht gegenseitig im Weg sind, werden diese dann parallel ausgeführt. Praktisch bedeutet das, dass das Betriebssystem doppelt so viele Kerne sieht wie tatsächlich existieren. Ob die Threads, die das Betriebssystem dann auf die virtuellen Kerne verteilt, tatsächlich parallel ausgeführt werden, darauf hat das OS jedoch keinen Einfluß. Kommt eben ganz auf die jeweiligen Operationen aus, die als nächstes in der Pipeline anstehen.

mfg benediktibk
benediktibk ist offline   Mit Zitat antworten
Alt 18.12.11, 00:31   #4 (permalink)
Senior Member
 
Registriert seit: 13.07.08
enkore Leistung: K 6-3enkore Leistung: K 6-3enkore Leistung: K 6-3
Likes: 85
Standard

Zitat:
Zitat von benediktibk Beitrag anzeigen
Ich vermute mal die Intelseite drückt damit das Hyperthreading aus. Es gibt Prozessoren von Intel die pro CPU-Kern teilweise zwei Befehle in einem Takt ausführen können. Das wird technisch so umgesetzt, dass Teile des Cores doppelt vorhanden sind, und wenn sich zwei Befehle nicht gegenseitig im Weg sind, werden diese dann parallel ausgeführt. Praktisch bedeutet das, dass das Betriebssystem doppelt so viele Kerne sieht wie tatsächlich existieren. Ob die Threads, die das Betriebssystem dann auf die virtuellen Kerne verteilt, tatsächlich parallel ausgeführt werden, darauf hat das OS jedoch keinen Einfluß. Kommt eben ganz auf die jeweiligen Operationen aus, die als nächstes in der Pipeline anstehen.

mfg benediktibk
So ist es, das ganze nennt man SMT bzw. im Intel Neusprech HTT (Hyper-Threading Technology). Dabei kann unter bestimmten Bedingungen ein Kern zwei Threads halbwegs gleichzeitig ausführen - bzw. - schneller als normal zwischen den Threads wechseln.
Ein i5-2500 hat z.B. nur 4 physikalisch vorhandene Kerne, via SMT gibt er sich jedoch als Achtkerner aus. Zumindest der Windows-Scheduler weiß aber von SMT und kann die Verteilung von Threads auf die Kerne optimieren. So würde Windows möglichst versuchen die virtuellen Kerne 1,3,5,7 auszulasten, bevor es mit 2,4,6,8 anfängt, da mit einem Kern Abstand ersteinmal seperate Hardwarekerne ausgelastet werden.
__________________
"It is the human race! The deterioration of the spirit of man. Man undermining himself, causing a self-willed, self-imposed, self-evident self-destruction."
+++ BREAKING +++ Troll ertrinkt im Planschbecken +++
enkore ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » PC Foren » Hardware Probleme » CPU/Core Number of Threads
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Core i3-540 oder core i5-650? pete Kaufberatung 4 21.08.10 16:04
threads::shared | threads->object() arbeitet nicht mit "shared" arrays keksinat0r Code Kitchen 0 23.08.08 14:11
Debian\Ubuntu\etc.: New openssl packages fix predictable random number generator xeno News & Ankündigungen 17 15.05.08 18:32
Credit Card Number Generator Sandman Virenschutz · Tools & Aggressive Software 1 17.07.02 23:47
General Number Field Sieve SPaRXLi Cryptography & Encryption 2 19.02.02 16:10


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61