An die Experimentierfreudigen: iMacPro1,1 + Vega 56/64 + IGPU

  • Guten Morgen zusammen!


    ich hatte ja schonmal herausgefunden, dass man die IGPU im iMac Pro SMBIOS zusammen mit der Vega 64 obwohl das SMBIOS dafür nicht ausgelegt ist. Tatsächlich funktioniert der klassische Ansatz für Quick Sync mit "Inject Intel" und einer "Connectorless ig-platform-id" in diesem SMBIOS nicht. (siehe Anmerkung unten).
    Interessanterweise funktioniert es beim iMacPro1,1 SMBIOS genau so, wie es bei anderen SMBIOS Varianten nicht funktioniert: IGPU aktivieren, -disablegfxfirmware setzen und sonst nichts. Kein Inject Intel, keine ig-platform-id. Im Zuge des macOS 10.14.1 Updates hat das ganze nicht mehr funktioniert, mittlerweile läuft es aber wieder (ich war in Experimentier-Laune).


    Warum?!

    Das wird sich nun jeder fragen, welcher das iMacPro1,1 SMBIOS für eine bessere Encoding Performance mit den Vega Karten nutzt. Immerhin bremst Quick Sync die Karte ja aus. Und ja, das tut Quick Sync tatsächlich, aber augenscheinlich nicht bei dieser unkonventionellen Methode. Ich habe mal ein wenig rumgespielt und festgestellt, dass sich das ganze so verhält, wie man sich das von Quick Sync auf den anderen SMBIOS Varianten (z.B. iMac18,3) wünschen würde. Die Vega wird stark ausgelastet, die IGPU aber ebenfalls. Die GPUs teilen sich die Arbeit.


    In dem Screenshot seht ihr schön, wie die Vega stark ausgelastet wird und auch die IGPU einiges zu tun bekommt. In der Aktivitätsanzeige sieht man im VTDecoderXPCService sehr schön, dass sowohl die Video Accelerator Treiber für die Intel GPU als auch die AMD GPU geladen sind. Bei der regulären Quick Sync Implementierung im iMac18,3 SMBIOS ist das nicht der Fall. Hier ist immer NUR der Intel Treiber geladen.


    Interessant ist auch ein Blick in die System Infos. Bei Grafik wird die Intel IGPU überhaupt nicht angezeigt. Ganz so, als wäre sie connectorless eingebunden, obwohl ich überhaupt keine ig-platform-id gesetzt habe. Auch ein Blick in IOJones / IOReg bestätigt das. Die Graphics Acceleratoren für die IGPU werden geladen.



    Testest es doch mal und teilt eure Erfahrungen!

    Ich habe den Test so durchgeführt:
    - i7-8700k IGPU (UHD 630) aktiviert
    - iMacPro1,1 SMBIOS
    - Kein Inject Intel
    - Keine ig-platform-id
    - -disablegfxfirmware angehakt
    - Vega 64 ohne Whatevergreen oder sonstige relevante Kexte (bis auf AGPMEnabler)


    Wer eine Vega GPU nutzt, sollte das ohne Probleme nachstellen können. Mich würde da insbesondere interessieren, wie es sich mit anderen Prozessoren verhält, aber auch wie bei euch die Performance im Vergleich ausfällt (klassisches Quick Sync in iMac18,3 vs. Vega Only im iMac1,1 vs. unkonventionelles Quick Sync im iMac1,1).


    Frohes Testen!


    Nachtrag: Ich habe nun ein paar Vergleiche durchgeführt. Auch wenn die GPUs mit dieser Methode gleichmäßiger ausgelastet werden, so leidet die Performance trotzdem erheblich darunter.


    Ein Beispiel: Mit VideoProc ein VP9 4k Video nach FHD HEVC encodieren.
    - UHD630 + Vega 64: 62fps Peak (1 Minute 32 Sekunden)
    - Nur Vega 64: 204fps Peak (21 Sekunden)


    Also scheint auch diese Methode keine Vorteile zu bringen. Zumal mir aufgefallen ist, dass FinalCut in der aktuellen Version mit diesem Setup gar nicht mehr startet. Dies kann allerdings durch Inject Intel + ig-platform-id gelöst werden, was zu meiner Überraschung in der aktuellen Beta von 10.14.3 im iMacPro1,1 SMBIOS funktioniert.

    LG Chris


    Meine Hardware:

    Einmal editiert, zuletzt von CMMChris ()

  • CMMChris

    Hat den Titel des Themas von „An die Experimentierfreudigen: iMacPro1,1 + Vega 64 + IGPU“ zu „An die Experimentierfreudigen: iMacPro1,1 + Vega 56/64 + IGPU“ geändert.
  • Könnte man die iGPU nicht gleich komplett deaktivieren, wenn du ausschließlich die Vega benutzt?


    Ich überlege mir folgende Konfiguration zu holen: 8700k + Vega 56 + Asrock z370 + Mojave 10.14.2/3


    Hat es überhaupt noch einen Vorteil die integrierte GPU zu benutzen? Und bräuchte ich mit der Vega56 überhaupt noch WhateverGreen.kext?

  • Das hier war ein Experiment. Natürlich hat man die IGPU deaktiviert wenn man eine Vega 56 oder Vega 64 nutzt. Whatevergreen ist nicht nötig.

    LG Chris


    Meine Hardware:

  • Super. Und dann gebe es trotzdem keine Probleme mit dem PowerManagment? Ich meine gelesen zu haben, dass es Probleme mit Power Management gibt, sobald die iGPU deaktiviert ist.


    Reicht es im BIOS die iGPU zu deaktivieren oder muss ich noch was an der config.plist ändern? (neben iMacPro1,1)

  • Habe ich noch nichts davon gehört. Kann aber andere Probleme geben wenn man das falsche SMBIOS nutzt. iMacPro1,1 ist Pflicht.

    LG Chris


    Meine Hardware:

  • Noch eine Frage. Wenn ich ausschließlich die Vega als Grafikkarte benutze, können doch folgende DSDT Patches weg, oder?

    change GFX0 to IGPU

    Change PEGP to GFX0

  • GFX0 to IGPU kann theoretisch weg, PEGP to GFX0 nicht. Praktisch kannst du beide drin lassen, es schadet nicht und du musst dort nichts eintragen wenn du mal die IGPU nutzen willst.

    LG Chris


    Meine Hardware:

  • Community Bot

    Hat das Label Erledigt hinzugefügt