Seite 1 von 4 1234
  1. #1

    Mitglied seit
    01.10.2008
    Beiträge
    104.415
    Jetzt ist Ihre Meinung gefragt zu Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    Dank seiner 64 Kerne und 128 Threads lädt der Threadripper 3990X dazu ein, die Performanceskalierung unter Linux mit der unter Windows zu vergleichen. Dabei zeigt sich wieder einmal, dass der Linux-Kernel besser mit vielen Threads zurechtkommt als das Betriebssystem aus dem Hause Microsoft.

    Bitte beachten Sie: Der Kommentarbereich wird gemäß der Forenregeln moderiert. Allgemeine Fragen und Kritik zu Online-Artikeln von PC Games Hardware sind im Feedback-Unterforum zu veröffentlichen und nicht im Kommentarthread zu einer News. Dort werden sie ohne Nachfragen entfernt.

    Zurück zum Artikel: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    • Bitte einloggen, um diese Anzeige auszublenden.
  2. #2

    Mitglied seit
    29.11.2015
    Liest
    PCGH.de & Heft
    Ort
    Willich
    Beiträge
    170

    AW: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    Ein Grund warum Windows so schlecht mit den Kernen skaliert (besonders ab 64 Threads): Sobald mehr als 64 Threads vorhanden sind, splittet Windows 10 Home/Pro die Threads und tut so, als hätte man mehrere Sockel. Das beeinflusst die Performance negativ.
    Link: The Windows and Multithreading Problem (A Must Read) - The 64 Core Threadripper 3990X CPU Review: In The Midst Of Chaos, AMD Seeks Opportunity

    Bei Linux hat man das Problem nicht. Daher skaliert das Ganze gerade bei einer hohen Kernanzahl besser.
    PC: AMD Ryzen 3700X | Mugen 5 PCGH | Gigabyte G1 Gaming GTX 1070 | 16GB Crucial Ballistix Sport | Crucial MX200 256GB + MX500 1TB | be quiet! Straight Power 10 600W | TUF Gaming X570 Plus | Arch Linux + Windows 10
    MacBook Pro 15" 2017: Intel Core i7-7700HQ | 16GB DDR3-2133 | 512GB SSD | macOS Mojave 10.14

  3. #3

    Mitglied seit
    30.09.2016
    Beiträge
    3.164

    AW: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    Der Test zeigt das es nicht an Windows an sich liegt sonder daran wie die Entwickler sich entschieden haben die APis zu verwenden oder zu missbrauchen. Sieht man schön daran das bei manchen Programmen die Skalierung unter Windows sogar besser ausfällt. Was sagt uns das? Wenn Programmierer glauben sie sind schlauer als der Optimizer oder das betriebssystem dann fliegen sie meistens heftig auf die Schnauze.
    Microsoft had den Scheduler für Threadripper schon mehrmals angepasst weil die CPU sich anders verhält als man erwarten würde und auch anders als sie dem OS meldet.
    Der Windows-Scheduler geht eben von einer anderen Ausgangslage aus. Das Problem sind Prozesse mit einer hohen Anzahl An threads auf einem System mit mehreren NUMA-Knoten die nicht die Thread-Affinität selbst managen. Alles (auch die APIs) gehen davon aus das der Prozess entweder nicht viele Threads spawned die auf unterschiedlichen Nodes laufen, oder wenn er viele spawned das er die zuordnung zu den nodes selbst übernimmt da ja der prozess selbst am besten weis was er macht.
    Im ersten Fall wird das gemacht was für die meisten Anwendungen auch Sinnvoll ist: es wird versucht die Threads im selben Node zu halten. Dumm nur wenn es dann >64 Threads auf 4 Nodes verteilt gibt die ständig alle auf den sleben node verschoben werden - und dadurch dann andere Threads des selben Prozesses auf andere Nodes.

    Unter Linux läuft der Scheduler deutlich anders - was in manchen Situationen besser, in anderen Schlechter ausfällt.
    Und wunder oh wunder - Prozesse die mit die Threadzuweisung selbst übernehmen können deutlich besser laufen.
    (Und das ganze ist noch deutlich komplizierter als meine Vereinfachung hier)
    Geändert von Casurin (15.02.2020 um 17:44 Uhr)

  4. #4

    Mitglied seit
    24.08.2009
    Beiträge
    2.574

    AW: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    Was mach ich jetzt bloß mit dem 3990X ?!

    Welche Games nutzen die 64 Kerne unter Linux voll aus ?

    Und warum kann Microsoft W10 nicht dahingehend Updaten , schließlich habe ich dafür ca. 140 Euro ausgegeben !

    Äh ja hauptsache 64 Kerne , da wird sich schon noch ein Argument dafür finden

  5. #5

    Mitglied seit
    16.05.2017
    Beiträge
    1.745

    AW: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    @Casurin

    Doch, das Problem liegt bei Windows. Die haben irgendwo einmal die 64 Kerne (eigentlich Threads) statisch festgelegt und anstatt das zu ändern dann die "Processor Groups" drangepfuscht. Heißt ich kann als Entwickler meine Anwendung gar nicht über mehr als 64 Threads ohne extra Aufwand skalieren.
    Processor Groups - Win32 apps | Microsoft Docs

    NUMA hat damit nichts zu tun, das ist für den jeweils zugehörigen Speicher relevant. Der 3990X hat übrigens nur 2 NUMA Nodes.

  6. #6
    Avatar von FKY2000
    Mitglied seit
    23.08.2011
    Ort
    Bocholt a.d. schönen Aa
    Beiträge
    1.107

    AW: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    Zitat Zitat von plusminus Beitrag anzeigen
    Was mach ich jetzt bloß mit dem 3990X ?!

    Welche Games nutzen die 64 Kerne unter Linux voll aus ?

    Und warum kann Microsoft W10 nicht dahingehend Updaten , schließlich habe ich dafür ca. 140 Euro ausgegeben !

    Äh ja hauptsache 64 Kerne , da wird sich schon noch ein Argument dafür finden
    Was mach ich jetzt bloß mit dem Thread?

    Welchen Bullshit schreibe ich denn jetzt mal? Dabei habe ich doch so ein dringendes Mitteilungsbedürfnis, das mein Aufmerksamkeitsdefizit verursacht...

    Äh ja, hauptsache ich schreibe jetzt einfach, wie immer, irgendeinen Unsinn, der niemanden interessiert, aber da wird sich schon jemand finden, der mir etwas Aufmerksamkeit widmet.

  7. #7

    Mitglied seit
    06.11.2013
    Beiträge
    880

    AW: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    Tolle CPU nur halt absoluter Unsinn und eher was können wir machen.
    Der Nutzen ist aber bei der CPU mal richtig eingeschränkt, was will man den mit 256Gb Ram
    auf einem 128 Thread System.

    Wenn man die Threads brauchen könnte hat man mit dem Ram limit zu kämpfen
    768 Gb hätte das minimum sein müssen auf dem, aber 256 Gb ist eben gerade das minmum wo
    man wirklich so eine Rechenpower brauchen kann.


    AMD hat bei der CPU nur daran gedacht ihren eignen CPUs nicht zu schaden.
    Und so ist es eher eine Machbarkeitsstudie wie wirklicher nutzen.

  8. #8
    Avatar von Atma
    Mitglied seit
    21.08.2011
    Liest
    PCGH.de
    Beiträge
    7.239

    AW: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    Zitat Zitat von jadiger Beitrag anzeigen
    AMD hat bei der CPU nur daran gedacht ihren eignen CPUs nicht zu schaden.
    Und so ist es eher eine Machbarkeitsstudie wie wirklicher nutzen.
    Wir sind einfach nicht die Zielgruppe, deal with it. Ich kann damit gut leben.
    Intel Core i7-7820X // ASRock X299 Taichi // 32 GB DDR4-4000 // RTX 2080 Ti // Samsung 960 Pro 512 GB // Samsung 860 QVO 2 TB
    Samsung C49RG90 // Logitech G502 Hero // Corsair Strafe RGB MK.2 // FiiO K3 // Beyerdynamic MMX 300 // Windows 10 Pro x64

  9. #9

    Mitglied seit
    30.09.2016
    Beiträge
    3.164

    AW: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    Zitat Zitat von sterreich Beitrag anzeigen
    Heißt ich kann als Entwickler meine Anwendung gar nicht über mehr als 64 Threads ohne extra Aufwand skalieren.
    Processor Groups - Win32 apps | Microsoft Docs
    Bitte lies dir den Link den du da gepostest hast erst mal durch. Wenn du etwas nicht verstehst dann bitte frag nach bevor du hier so vielBullshit von dir gibst.

    • Bitte einloggen, um diese Anzeige auszublenden.
  10. #10

    Mitglied seit
    16.05.2017
    Beiträge
    1.745

    AW: Threadripper 3990X: Performance skaliert unter Linux besser als unter Windows

    Zitat Zitat von Casurin Beitrag anzeigen
    Bitte lies dir den Link den du da gepostest hast erst mal durch. Wenn du etwas nicht verstehst dann bitte frag nach bevor du hier so vielBullshit von dir gibst.
    Aus dem Windows Artikel
    Support for systems that have more than 64 logical processors is based on the concept of a processor group, which is a static set of up to 64 logical processors that is treated as a single scheduling entity.
    von anandtech:
    When the system is in this mode, it becomes very tricky for most software to operate properly. When a program is launched, it will be pushed into one of the processor groups based on load – if one group is busy, the program will be spawned in the other. When the program is running inside the group, unless it is processor group aware, then it can only access other threads in the same group. This means that if a multi-threaded program can use 128 threads, if it isn’t built with processor groups in mind, then it might only spawn with access to 64.
    The Windows and Multithreading Problem (A Must Read) - The 64 Core Threadripper 3990X CPU Review: In The Midst Of Chaos, AMD Seeks Opportunity
    Wenn du mich also über meinen "Bullshit" aufklären würdest? Wenn ich die vollen 128 Threads ausnutzen will muss ich den Scheduler mit meinem Programm so ansprechen, als hätte ich ein Dual-Socket-System. Das ist mehr Aufwand in meinen Augen.

Seite 1 von 4 1234

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •