Ergebnis 1 bis 4 von 4
  1. Beitrag #1
    User-News Von eratte ist gerade online
    Hinweis: Diese "User-News" wurde nicht von der Planet 3DNow! Redaktion veröffentlicht, sondern vom oben genannten Leser, der persönlich für den hier veröffentlichten Inhalt haftet.

    AMD auf Reddit zu Fastest Cores: Is Windows Right? Or Ryzen Master? It's Both!

    Fastest Cores: Is Windows Right? Or Ryzen Master? It's Both! The Inside Scoop & What Happens Next

    SUMMARY UPFRONT: Windows and Ryzen Master are both correct when identifying the fastest CPU core. The performance ranking of the cores is fused at the factory and reported by firmware, and both sources draw on that table. But Windows and Ryzen Master have substantially different goals when identifying a fastest core, which can lead to the appearance of a discrepancy. We plan to align Ryzen Master with Windows to alleviate the confusion. If you would like the details, please read on.

    Hello, everyone. Over the past week or two, we’ve seen an uptick in chatter alleging that Windows is selecting the wrong fastest core. These posts typically cite Ryzen Master as evidence, though I’ve also seen some trawling of the Windows event log as justification. With apologies to the authors of these posts, who have done time-consuming investigative work, they are unfortunately incorrect. Today I wanted to share with all you a few lesser-known details that will make it clear why Ryzen Master and Windows are both correct, but for different reasons.

    The firmware maintains the relative ranking of the cores. The list is maintained by reading voltage/frequency characteristics generated by the cores during final test and assembly.

    Both Windows and Ryzen Master read this FW-generated ranking to determine the fastest core selection.

    If you check the core rankings with the ‘sysfs’ command in Linux, some have noticed that our cores are ranked about 3% apart. This does not mean one core is 3% faster than another.

    Instead, you need to know that CPPC2 (aka “preferred core” or “fastest core”) is a “continuous, abstract, unit-less performance scale” (ACPI spec, section 8.4.7). To translate: the rankings mean nothing beyond asserting which cores are fastest. It so happens that arbitrarily ranking the cores ~3% apart is perfect for communicating the ranking to the OS, without leaving room for rounding errors when this arbitrary scale is interpreted to set the CPU’s performance target.

    Now we’re at the handoff to the OS. This is where things get more complicated. Windows selects and prioritizes the fastest core in the firmware with an additional criterion that there must be a second core in the same CCX that’s nearly as fast. The scheduler rotates between them to ensure one core isn’t shouldering all the single-threaded work all the time. (This is why you will sometimes see a “one thread” task jump back and forth between two different cores.) Additionally, I believe it’s now widely understood in this community that corralling workloads within a CCX, when possible, is optimal for “Zen 2” performance. Windows 10 May 2019 Update also respects this. So, if Windows is going to pick and use a fastest core, it needs a partner within the same CCX to ensure all the criteria are met for optimal performance. This is the best-performing configuration for 1T and lightly-threaded scenarios.

    Ryzen Master, using the same firmware readings, selects the single best voltage/frequency curve in the entire processor from the perspective of overclocking. When you see the gold star, it strictly means that is the one core with the best overclocking potential. As we explained during the launch of 2nd Gen Ryzen, we thought that this could be useful for people trying for frequency records on Ryzen. To be crystal clear: this core may not be optimal for boost performance, it is irrelevant to OS fastest core selection, and it may not meet other technical criteria involved in selecting optimal cores for automated scheduling.

    Therefore: both Windows and Ryzen Master are correct for their own needs, using the same common set of information prescribed by the firmware. Core selection is working as intended and designed, but we definitely see and understand it could be clearer. We hope this post begins to clear things up, and…

    As a next step: we’ll be updating Ryzen Master to flag the fastest cores in the same manner Windows does so that there is no confusion. The core pair flagged by Ryzen Master will be the same pair that were selected for the best autonomous performance.

    For day-to-day system use, our guidance remains unchanged: install any version of Windows from May 2019 (or newer) and keep it up-to-date, grab the current chipset driver from July 7 onwards, and use the latest BIOS from AGESA 1002 onwards. You will see the expected “fastest core” experience. No additional updates are required. If a user wants to confirm with their motherboard as well to remove all doubt, then you can force-enable the following BIOS settings: Global C-States, CPPC, CPPC Preferred Core(s). These settings are available in the AMD CBS menu of virtually any motherboard. Our official guidance is auto/default ON for these settings, but it’s a step you can take out of an abundance of caution.

    Hope this clears things up, and I’ll be back to let you know when Ryzen Master is updated. You will see a post from me when the build with this change is live.

    HYPOTHETICAL EXAMPLE: Let’s take a hypothetical 16-core AMD CPU and pick out a few cores. Core 0 and Core 1 in the first CCX on the first die can boost to 2.2GHz and 2.15GHz, respectively, for 2.175GHz average frequency. Core 13 and 15 in the second CCX on the other die can boost to 2.25GHz and 2.05GHz, respectively, for an average of 2.150GHz. Core 0 and 1 would be the CPPC preferred cores for Windows, but Ryzen Master would assign the gold star to Core 13. Core 13 might be the fastest core in the chip, but you can see it’s not the best choice for autonomous boosting. Pairing Core 13 to Core 0, theoretically the highest average frequency by a hair, would potentially be negated by crossing CCX boundaries.

    This is a grossly simplified example of the selection process, but you can see why and how Windows and Ryzen Master might take the same information and present different views. With this example you can also see why ranking the cores 1-n is not enough context to determine the most performant configuration.
    Annadtech dazu: AMD Clarifies "Best Cores" vs "Preferred Cores" Discrepancies For Ryzen CPUs (Annadtech)

  2. Die folgenden 3 Benutzer sagen Danke zu eratte für diesen nützlichen Beitrag:

    E555user (22.11.2019), WindHund (02.12.2019), X1900AIW (23.11.2019)

  3. Beitrag #2
    Avatar von E555user

    Registriert seit
    Danke Danke gesagt 
    Danke Danke erhalten 
    AMD vermeidet also zur Microsoft-These der alternierenden Cores eines CCX für Threads hoher Priorität Stellung zu nehmen. Man würde annehmen wollen AMD hätte von selbst die Core-Paare gekennzeichnet wenn das die bessere Lösung darstellt.

    Vermutlich würde MS besser für Low-Priority Threads optimieren und diese konsequent alle auf dem schlechtesten CCX zusammenfassen. Den besten CCX und Core mit seinem CCX für High Priority Prozesse reservieren und den Rest dem Zufall überlassen.

    Kennt jemand Analysen zum Cache Thrashing unter MS Windows? Vermutlich könnte hier im Victim Cache für Zen ein Vorteil gegenüber Intel-Arch liegen.

  4. Beitrag #3
    Grand Admiral
    Grand Admiral
    Avatar von eratte
    • Mein System
      Modell: HP PAVILION 14-dk0002ng
      Prozessor: Ryzen R9 3900x
      Mainboard: ASUS ROG Crosshair 8 Hero
      Kühlung: Noctua NH-D15
      Arbeitsspeicher: 4 x 16 GB Crucial Ballistix Sport LT@3200 CL14
      Grafikkarte: MSI RX 5700 XT Evoke OC
      Display: S27A850D 2560x1440 / U2412M 1920x1200
      SSD(s): Samsung 960 Pro 512 und 950 Pro 512
      Optische Laufwerke: LG BH10LS30 Blu-Ray Brenner
      Soundkarte: Onboard
      Gehäuse: Lian Li PC-A51 Schwarz
      Netzteil: Seasonic Platinum 860 (80+ Platinum)
      Betriebssystem(e): Windows 10 Pro 64
      Browser: Firefox
      Sonstiges: 4 x NF-S12A u. 1 x NF-A14 Noctua Lüfter. Corsair K70, Steelseries Rival 300, Plantronics HS.
    • Mein DC

      eratte beim Distributed Computing

      Aktuelle Projekte: YoYo, Collatz
      Lieblingsprojekt: YoYo
      Rechner: i7-980x - Rest nach Bedarf und Laune
      Mitglied der Kavallerie: Ja

    Registriert seit
    Rheinberg / NRW
    Danke Danke gesagt 
    Danke Danke erhalten 
    Weiterer Artikel zu dem Thema:

    Ryzen Master gegen Windows Scheduler: Unterschiedliche Definitionen für "beste Kerne" (HardwareLUXX)

    Ryzen Master soll in Kürze ein Update erhalten, welches dann dazu führt, dass nicht einfach nur die schnellsten Kerne anzeigt werden, sondern das hier auch die Auswahl des Windows Scheduler mit einbezogen wird.

  5. Beitrag #4
    Grand Admiral
    Grand Admiral
    Avatar von WindHund
    • Mein System
      Prozessor: AMD FX-8350 Eight-core @ Asus enhancement Mode
      Mainboard: ASUS Sabertooth 990FX/Gen3 R2.0 sponsored by P3D
      Kühlung: WaKü EK WB Supreme LTX 366x40mm Radiator 6l Brutto m³
      Arbeitsspeicher: 4x 8GiB Crucial DDR3-1866 CL11 ECC DR
      Grafikkarte: 2x XFX Radeon R7970 DD 6GiB @ CrossFireX
      Display: 37" LE37A550P1R 60Hz 550cd/m Full HD -> best part of my system
      SSD(s): Samsung 830 128GB, Crucial BX100 256GB native SATA3
      Festplatte(n): 1x SATA2 Samsung HD103UJ, 1x SATA3 WD75000AAKS, 1x USB3.0 boost M.2 128GB
      Optische Laufwerke: 1x HL-DT-ST BD-RE BH10LS30 SATA2
      Soundkarte: ALC892 HD Audio (onboard)
      Gehäuse: SF-2000 Big Tower
      Netzteil: Corsair HX850W (80+ Silber)
      Betriebssystem(e): Windows 10 x64 Professional (up to date!)
      Browser: @Chrome.Google.CPU_Last_niedrig
      Sonstiges: Gehäuselüfter: 4x200mm + 7x120mm (inklusive Radiatorlüfter extern)
    • Mein DC

      WindHund beim Distributed Computing

      Aktuelle Projekte: SIMAP, Einstein, Collatz, RadioAktiv
      Lieblingsprojekt: none, try all
      Rechner: FX-8350, FX-6300, Galaxy S2 2xR7970 + 1xGTX580 + Galaxy SII
      Mitglied der Kavallerie: Nein

    Registriert seit
    Im wilden Süden (0711)
    Danke Danke gesagt 
    Danke Danke erhalten 
    Netter Versuch, aber da passt was nicht ganz.

    CPPC ist ein Register Set womit sich der schnellste Kern in Echtzeit ermitteln lässt, unter dem gegeben Auslastungszustand der CPU.
    Dies wird dann dem Kernel bereit gestellt, damit dieser weiß welche freien Kerne im Moment die schnellsten sind.

    Aber gut, irgendeine Erklärung braucht man ja und so Abwegig kann Robert nicht sein.


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