Radeon GPU Temperatur mit VirtualSMC

  • So wie jede andere Kext auch die eine executable hat.

  • LetsGo , Aluveitie : ...nur aus Neugierde: In den VirtualSMC Docs sind die Sensoren von verschiedenen Modellen aufgelistet.

    Z.B gibts z.B TC0c für die CPU Temp und TCGc für Gfx CPU Temp. Könnte ein VSMC Plugin nicht die Radeon GPU Temp via TCGc zur Verfügung stellen, oder stelle ich mir das zu einfach vor?

  • Hab ich mir auch mal angeschaut. Wie das genau funktioniert, habe ich aber nicht begriffen. Man kann aber mit dem Tool smcread die Sensoren auslesen und in eine txt speichern, soweit ich das verstanden habe.



    In der SMCSensorKeys.txt findest du eine Beschreibung zu jeder Menge Sensoren. Wie und was man damit tun kann bzw. wie man die in VirtuelSMC integrieren kann kapiere ich aber nicht.

  • talkinghead danke für den Tip, werde das bei Gelegenheit nochmal genauer anschauen.

    • Apple Mac Studio | M1 Ultra | 64GB RAM | 1TB
    • PowerMac G5 | Dual 2GHz | 8GB RAM | GeForce 6800 Ultra DDL
    • AMD Ryzen 9 3950X | ASUS Strix X570-I Gaming | 64GB DDR4-3600 CL16 RAM | Corsair MP600 M.2 NVMe | Radeon RX 6900 XT | Phanteks Enthoo Evolv Shift | Custom Loop | MacOS 12 | OpenCore
      Ryzen MacPro | EFI | RadeonSensor | Aureal
  • fabiosun yes as griven told, I’ve got an Custom Loop, my Nitro+ is in.


    By the Way: there ist only TIM on the Die, no LM, with LM the Game is much more changed.


    Bit risky, but up to 10K more dropped Temps.

    Unbelieveable, seemed to me too, but on an VII with LM the Drop came at max OC with LM an the HotSpot went to around 40! Really.


    Maybe Mork vom Ork can report of his Temps, in case he has used LM i think, also with an 6900XT (Reference) in a custom Loop.


    Aluveitie, tolles Monitoring, macht total Spaß endlich die Coretemp mal zu sehen! Bekommst du die Frequenz auch rein?

  • kaneske Ich habe den Code zum auslesen 1:1 von RadeonMonitor genommen. Aber mal schauen, wenn sich die Frequenz auf eine ähnliche weise auslesen liesse würde das sicher mit wenig Aufwand erweitern lassen.

    • Apple Mac Studio | M1 Ultra | 64GB RAM | 1TB
    • PowerMac G5 | Dual 2GHz | 8GB RAM | GeForce 6800 Ultra DDL
    • AMD Ryzen 9 3950X | ASUS Strix X570-I Gaming | 64GB DDR4-3600 CL16 RAM | Corsair MP600 M.2 NVMe | Radeon RX 6900 XT | Phanteks Enthoo Evolv Shift | Custom Loop | MacOS 12 | OpenCore
      Ryzen MacPro | EFI | RadeonSensor | Aureal

  • @Aluveitie: nice - danke sehr!

    Gibts noch die Möglichkeit, da ein Auslesen der verbrauchten Watt der GPU dazu zu programmieren?


    lg

    luki

  • Sobald ich rausfinde wie das geht werde ich das noch erweitern.


    Edit Mal die Linux Treiber genauer angeschaut, soweit scheint nur die Temperatur so einfach ausgelesen werden zu können. Sonst hätte RadeonMonitor das wohl auch schon lange eingebaut :D

    • Apple Mac Studio | M1 Ultra | 64GB RAM | 1TB
    • PowerMac G5 | Dual 2GHz | 8GB RAM | GeForce 6800 Ultra DDL
    • AMD Ryzen 9 3950X | ASUS Strix X570-I Gaming | 64GB DDR4-3600 CL16 RAM | Corsair MP600 M.2 NVMe | Radeon RX 6900 XT | Phanteks Enthoo Evolv Shift | Custom Loop | MacOS 12 | OpenCore
      Ryzen MacPro | EFI | RadeonSensor | Aureal

    Einmal editiert, zuletzt von Aluveitie ()

  • I have asked @slice on GitHub if he can read other GPU sensor (I mean no hot spot). at this moment no answer so maybe it is not simple to do it

  • fabiosun I've found the responsible code in the Linux driver, it is just not as straight forward as reading the temperature. The temperature can just be read from a specific location. Reading other values requires writing the key you want to read to a specific address and then waiting for the corresponding result.

    Should not be that hard to implement, just tricky to get it right as testing it is a little tedious.


    Next on my list of todos are now to read the frequency, and provide gpu temperature to VirtualSMC :)

    • Apple Mac Studio | M1 Ultra | 64GB RAM | 1TB
    • PowerMac G5 | Dual 2GHz | 8GB RAM | GeForce 6800 Ultra DDL
    • AMD Ryzen 9 3950X | ASUS Strix X570-I Gaming | 64GB DDR4-3600 CL16 RAM | Corsair MP600 M.2 NVMe | Radeon RX 6900 XT | Phanteks Enthoo Evolv Shift | Custom Loop | MacOS 12 | OpenCore
      Ryzen MacPro | EFI | RadeonSensor | Aureal
  • Aluveitie May I ask if you have seen (in linux driver) something related to fan RPM? :)

  • fabiosun What I've found are those Keys: AMDGPU_PP_SENSOR_GFX_SCLK, AMDGPU_PP_SENSOR_GFX_MCLK, AMDGPU_PP_SENSOR_GPU_TEMP, AMDGPU_PP_SENSOR_VCN_POWER_STATE, AMDGPU_PP_SENSOR_GPU_LOAD


    So I might be able to get core/memory frequency and load besides the temperature.


    Edit Just saw there are already fragments to read that from slice in the code, just commented out. He was playing around with that but did never finish it.

    • Apple Mac Studio | M1 Ultra | 64GB RAM | 1TB
    • PowerMac G5 | Dual 2GHz | 8GB RAM | GeForce 6800 Ultra DDL
    • AMD Ryzen 9 3950X | ASUS Strix X570-I Gaming | 64GB DDR4-3600 CL16 RAM | Corsair MP600 M.2 NVMe | Radeon RX 6900 XT | Phanteks Enthoo Evolv Shift | Custom Loop | MacOS 12 | OpenCore
      Ryzen MacPro | EFI | RadeonSensor | Aureal
  • Aluveitie in my "empiric" tests with radeonMonitor/fakesmc and all apps available the best results in data exposed are:


    1) hot spot temp
    2) memory use (avaìlable/used)

    3) GPU load


    So maybe you have found other interesting values as GPU frequency

  • fabiosun Interesting, memory use and GPU load must come from somewhere else (maybe the macOS driver) since RadeonMonitor only provides temperatures.

    • Apple Mac Studio | M1 Ultra | 64GB RAM | 1TB
    • PowerMac G5 | Dual 2GHz | 8GB RAM | GeForce 6800 Ultra DDL
    • AMD Ryzen 9 3950X | ASUS Strix X570-I Gaming | 64GB DDR4-3600 CL16 RAM | Corsair MP600 M.2 NVMe | Radeon RX 6900 XT | Phanteks Enthoo Evolv Shift | Custom Loop | MacOS 12 | OpenCore
      Ryzen MacPro | EFI | RadeonSensor | Aureal


  • Aluveitie these kexts are in use by now

    here not so much correct with

    Sensei seems to be more precise

    Interesting that this app exposes many values (not working for real so I do not know if it is only a fake of them or useful for others GPU seen by Apple SMC)


    hackintosh-forum.de/attachment/183697/

    if could be useful :

    in this screenshot you can try to find all data exposed with used kext I shown above (it is sensei Graphics advanced Panel)

    Einmal editiert, zuletzt von fabiosun ()

  • Aluveitie

    Großartig, es funktioniert. :)

    Habe in meinen beiden Rechnern je zwei Grafikkarten in Nutzung, viele Nutzer die ich kenne ebenfalls. Es wird aber nur jeweils ein Wert angezeigt – was auch schon super ist. :)

    Wäre es möglich, anstelle von "GPU" die tatsächlich verwendeten Devices aus der ACPI (GFX0, GFX1) zu verwenden und somit auch Werte für mehrere Grafikkarten darzustellen?


    OT: Wie bekomme ich eine ähnliche Anzeige für CPU dargestellt, wie im Eingangsthread zu sehen (oder nur für AMD)? Ich habe so etwas bislang nie benutzt, entschuldigt meine Unwissenheit auf diesem Gebiet. Gern hätte ich aber auch diese "schlanke" Anzeige, kein überbordendes Dropdown-Menü.

    ASUS WS X299 SAGE/10G i9-10980XE • DDR4 64GB • SSD 970 PRO 1TB • Thunderbolt3 Titan Ridge • 2x AMD Radeon VII • BMD DeckLink 4K Extreme 12G

    ASUS PRIME X299-DELUXE i9-9940X • DDR4 64GB • SSD 960 PRO 1TB • Thunderbolt3 Titan Ridge • 2x AMD Radeon RX Vega 64 • BMD Intensity Pro 4K


    Ordnung ist die primitivste Form von Chaos. (Hans-Jürgen Quadbeck-Seeger)

  • apfelnico Das wäre prinzipiell möglich, im Moment nimmt er einfach die erste die gefunden wird. Werde das mal auf meine Todo Liste setzen.


    Die CPU Anzeige kommt vom AMD Power Gadget. Von dort habe ich auch die Idee mit Kext/App um die Werte ohne FakeSMC zu raportieren und mich daran orientiert.

    • Apple Mac Studio | M1 Ultra | 64GB RAM | 1TB
    • PowerMac G5 | Dual 2GHz | 8GB RAM | GeForce 6800 Ultra DDL
    • AMD Ryzen 9 3950X | ASUS Strix X570-I Gaming | 64GB DDR4-3600 CL16 RAM | Corsair MP600 M.2 NVMe | Radeon RX 6900 XT | Phanteks Enthoo Evolv Shift | Custom Loop | MacOS 12 | OpenCore
      Ryzen MacPro | EFI | RadeonSensor | Aureal
  • apfelnico

    you can use this app for Intel CPU HWMonitorSMC2

    double left mouse click on the value you want to expose and you will see "tiny" on the bar


    in this sample I have exposed:

    GPU utilisation, mem used and disk temp and disk life in %

    you can do the same with CPU and other many parameters


  • So wie jede andere Kext auch die eine executable hat.

    kaneske Danke, Ach ich Trottel


    Bekomme aber leider trotzdem nicht keine Temps raus..... Also nur 0°


    Vielleicht ist ja noch was falsch....


    anbei meine EFI


    Vielen Dank