Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  NX
  Hyperthreading

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
  
NX: Erste Schritte, ein Webinar am 26.09.2025
Autor Thema:  Hyperthreading (2291 mal gelesen)
DinnerForOne
Mitglied



Sehen Sie sich das Profil von DinnerForOne an!   Senden Sie eine Private Message an DinnerForOne  Schreiben Sie einen Gästebucheintrag für DinnerForOne

Beiträge: 62
Registriert: 29.10.2004

UG NX3

erstellt am: 30. Mrz. 2005 10:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo zusammen,
habe eine Frage zu Hyperthreading. Wir fahren mit UG CAM Maschinensimulationen (IS&V), haben also einen Prozess der sehr viel CPU braucht. Hyperthreading ist bei uns aktiviert, wenn ich also im Taskmanager die CPU anschaue, ist diese nur zu 50% ausgelastet. Da habe ich mir gedacht, dass wenn ich das Hyperthreading deaktiviere (im BIOS), der eine Simulationsprozess ja dann 100% zur Verfügung haben wird, die Simulation dann schneller laufen soll. Hyperthreading bringt ja vor allem Vorteile, wenn ich mehrere Prozesse miteinander laufen habe, ich habe aber einen rechenintensiven. Gedacht, getan, aber dasselbe Ergebniss (je 12 min. für die Simulation). Anschliessend habe ich verifiziert, dass Hyperthreading effektiv aktiviert und deaktiviert wurde, das ist so (sieht man im Task Manager und im Gerätemanager hat es eine bzw. zwei CPU's aufgeführt).

Meine Vermutung ist deshalb, dass bei aktiviertem Hyperthtreading die CPU auch zu 100% ausgelastet ist, auch wenn im Task Manager visuell nur 50% angezeigt werden. Habt ihr selber schon Erfahrungen gemacht?

Unsere Umgebung:
WS:  Dell Precision 360
CPU: P4 3GHz
RAM: 2x512RDRAM
UG:  NX3.0.1.3

Allgemeines zu Hyperthrading (aus dem Internet):
Hyper-Threading im neuen Pentium 4 mit 3,06GHz

Intels neue Marktstrategie, oder wirklich eine Verbesserung?


Erst einmal klären wir, was Hyper-Threading überhaupt bedeutet


Intel führt Hyper-Threading schon seit längerem unter einem anderem Namen. Die Technologie wurde bis jetzt unter dem Namen "Jackson Technology" geführt, was auch unter SMT oder besser gesagt Simultaneous Multithreading bekannt ist. Bei SMT arbeiten mehrere logische Prozessoren in einem Chip. Bei dem neuesten Intel sind es zur Zeit zwei. Beide Prozessoren arbeiten weitgehend unabhängig voneinander, was den Datendurchsatz steigern soll. Ob dies wirklich funktioniert, wird sich später herausstellen. Aber nun weiter zu dem Chip. Um diese zwei Prozessoren zu erreichen, hat Intel nicht 2 Prozessoren in einer DIE integriert, sondern ihm einfach einen zusätzlichen Registersatz spendiert, so wie einem eigenen Interrupt Controller (APIC), zusätzlich auch einige interne Verwaltungsstrukturen. Weder die DIE Größe, noch die Anzahl der Rechenwerke haben sich geändert, aber es sind ein paar Transistoren mehr geworden. Diese Anzahl ist aber so gering, daß an der DIE fast nichts geändert werden muss, was wiederum keine zusätzlichen Kosten verursacht, eben weil der Mehraufwand sehr gering ist. Anfangs sind die Prozessoren sehr Teuer, was sich aber mit der Zeit legen sollte.

Intel verspricht sich dank der neuen Technologie einen Geschwindigkeitszuwachs von 35%, was doch sehr beachtlich ist, bei dem geringen Mehraufwand. Man sollte aber bedenken, daß der Pentium 4 nur die zweite CPU simuliert! Das heißt nicht, daß zwei Prozessoren in einer DIE sind. Der Pentium 4 gaukelt dem Windows so zu sagen eine zweite CPU vor, was aber nichts schlechtes bedeuten soll. Bisher versuchte Intel immer mit höheren Taktraten zu glänzen. Die Taktrate sagt aber nichts über die Leistung der Prozessoren aus. So langsam hat man sprichwörtlich das Ende der Fahnenstange erreicht. Denn immer höhere Taktraten bedeuten auch höhere Temperaturen. Bei den neusten Prozessoren wird immer noch das sogenannte -Brute Force System- benutzt, daß heißt das nur die Taktrate zählt, so zu sagen die rohe Power. Aber es müssen bessere und intelligentere Techniken her.

Man hat schon damals beim Pentium 1 versucht eine Art intelligentere Technik einzubauen. Das bedeutete, daß er mehrere Befehle pro Takt gleichzeitig ausführen konnte, was ihm allerdings nicht viel half, weil die meisten Programmcodes so ausgelegt waren, daß die Daten hintereinander berechnet werden mußten, und nicht voneinander unabhängig ausgeführt werden konnten. Somit waren die Pipelines des Pentium nie wirklich ausgelastet.

Der Nachfolger vom Pentium 1 war der Pentium Pro, dort hatte man die neue Technik verbessert. Man baute sozusagen eine Technik namens Out of Order Execution (OOO), das heißt daß der Prozessor bei der Bearbeitung der Befehle nicht unbedingt alles nach der Reihenfolge erledigen muss, sondern er parallel Befehle ausführen kann, was die Geschwindigkeit wiederum erhöht. Leider sind solche Befehle sehr komplex und der Aufwand für einen fehlerfreien Betrieb währe einfach zu gewaltig.

Was damals das Out of Order Execution war, ist heute Hyper-Threading, aber in einer verbesserten Version.


Aber was genau ist Hyper-Threading?


Hyper-Threading ist wie SIMD (MMX, SSE, 3DNow usw.) eine Technik, von der Programme nicht automatisch profitieren. Während SIMD sich aber vorwiegend an Multimedia Anwendungen richtet und sich für viele Algorithmen nicht eignet, sieht das bei Hyper-Threading besser aus. Sobald mindestens zwei Programmteile gleichzeitig aktiv sind, bringt es bereits einen Vorteil. Dafür muss die Software jedoch nicht zwingend Threads verwenden, zwei gleichzeitig laufende Anwendungen reichen aus (Multi-Processing). Im Windows Taskmanager läßt sich überprüfen, daß selbst bei einem frisch gestarteten Rechner daran kein Mangel ist (z.B. Autostart).

Hyper-Threading simuliert also eine 2 CPU. Es gibt verschiedene Arten von Mehr-Prozessoren-Systemen.

Das erste ist SMT, was eine 2 CPU simuliert

SMT bedeutet 2 oder mehrere virtuelle Prozessoren, in einem Logischen Prozessor, in einem System! Eine 2 CPU wird praktisch emuliert, dadurch sind Leistungssteigerungen von bis zu 35% möglich. Und diese 35% bekommt man fast geschenkt, da das System keine speziellen PC Komponenten braucht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP



Anzeige:Infos zum Werbeplatz >>

speedyPDM CAD APP für Andere, Datenaustausch, Allgemeine Werkzeuge

speedyPDM ist das führende technische Dokumenten- und Produktdatenmanagementsystem für Solidworks, Solid Edge, Inventor, AutoCAD, ZWCAD, BricsCAD, Office und Email inklusive Revisionsmanagement.

deepblue
Mitglied
Simulationsingenieur


Sehen Sie sich das Profil von deepblue an!   Senden Sie eine Private Message an deepblue  Schreiben Sie einen Gästebucheintrag für deepblue

Beiträge: 912
Registriert: 17.04.2003

erstellt am: 30. Mrz. 2005 12:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für DinnerForOne 10 Unities + Antwort hilfreich

Hallo DinnerForOne,
einen schönen Beitrag hast Du da geschrieben und im Prinzip schon alle Fragen selbst beantwortet. Dafür gibts von mir 10 U's!!! 

Die gleichen Erfahrungen mit Hyperthreading haben wir auch gemacht. Man kann es getrost einschalten und hat keine Leistungseinbußen dadurch (auch wenn der Taskmanager "nur" 50% anzeigt).
Wie in Deinem Beitrag beschrieben, wird eine zweite CPU emuliert. Hat man 2 CPU's im System zeigt der Taskmanager für jede CPU maximal 50% an.
Bei einigen Operationen (oft bei FEM) werden aber auch 2 CPU's unterstützt. Dann geht die Auslastung bis auf ca. 70 - 80 % hoch und der Rechner ist schneller als jedes Single-CPU-System. Auch sollen einige Programmteile in UG für 2 CPU's programmiert sein (leider die wenigsten - man merkt es kaum) und Hyperthreading bringt dann die von Intel versprochenen Performancegewinne.
Hier noch ein paar Tip's wie man noch ein wenig Performance rauskizteln kann:
- Im Taskmanager kann man für jeden Prozeß bestimmen auf welcher CPU dieser ausgeführt werden soll (Zugehörigkeit festlegen...). Bei längeren Prozessen (die sowieso nur eine CPU unterstützen) kann man diesen auf die andere CPU legen. Andere Anwendungen können dann auf der jeweils anderen CPU ausgeführt werden. So hat man sozusagen eine parallele Abarbeitung der Prozesse. Hat man Programme die tatsächlich Dualprozessing unterstützen sollte man sich das aber überlegen, denn die Software kann das nur ansteuern, wenn auch tatsächlich auf 2 CPU's zugegriffen werden darf - sonst läufts halt etwas langsamer - eben wie auf einem Single-CPU-System.
- Frist ein Prozeß zu viele Resourcen, kann man die Priorität niedriger setzen. So sind alle anderen Prozeße erst mal wichtiger! Und der andere Prozeß läuft im Hintergrund. Das ist praktisch wenn man an der Maschine noch arbeiten will - braucht man CPU werden niedriger eingestufte Prozeße kurzfristig langsamer abgearbeitet.

Diese Optionen lassen sich im Taskmanager ohne Risiko schalten. Ich habe noch nie erlebt das deswegen ein Prozeß abestürzt ist.

So jetzt ist es auch bei mir etwas mehr geworden...

Gruss
Deepblue

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz