Quicksync, Virtual-Screen Abstürze und iGPU+ded. GPU mit Grafikbeschleunigung

  • Hallo,


    Hab gerade selbst Probleme den VideoProc grün zu bekommen (15,1 SMBIOS, Mojave). Bios Einstellungen passen (PCIe auto = primary, Multi GPU enabled), die IGP wird auch vom VideoProc erkannt, bleibt halt nur alles rot. Hab schon ein Backup gemacht und mir das Hackintool geladen.. tips?


    Edit: Was mich etwas verwirrt ist dass laut Hackintool der VDA Decoder "fully supported" ist, obwohl die Platform-ID keine der bekannten headless ID's (0x0412..) für mein Haswell System ist, sondern eine 0x0D220003.

  • Für Adobe Media Encoder und den Kram, die unterstützen Metal noch nicht in allen apps, und damit auch keine reine GPU Beschleunigung.


    Habs jetzt H264 im VideoProc grün bekommen, HEVC wird von der Haswell GPU wohl nicht unterstützt.


    Hab dazu meine System EFI gemounted, die plist im Configurator unter Devices -> Properties von 0300220D auf 04001204 geändert.

  • Das hat nichts mit Metal zu tun. Deine RX 570 hat ja auch Hardware En-/Decoder die du nutzen kannst. Die können dann auch HEVC und ganz nebenbei auch noch schneller als deine olle IGPU. Mach folgendes:
    - IGPU abschalten

    - Alles IGPU spezifische aus deiner Config entfernen

    - Whatevergreen rein (hast ja wahrscheinlich eh)

    - Folgende Boot Args setzen: shikigva=32 und shiki-id=7BA5B2D9E42DDD94


    Dann sollte alles grün sein und du solltest einen deutlichen Performance Gewinn beim Encoding beobachten.

    LG Chris


    Meine Hardware:

  • Danke für den Hinweis, kann man auf jeden Fall mal versuchen. Offenbar wird auch Quicksync erst ab Skylake richtig unterstützt, ältere CPUs können wohl nur encoden.


    Welches SMBIOS wäre denn da für full GPU beschleunigung zu empfehlen? Die Trashcans gab es ja auch mit Haswell Xeons ohne iGPU.. oder kann man trotz Z97 ein neues SMBIOS nehmen?

  • Offenbar wird auch Quicksync erst ab Skylake richtig unterstützt, ältere CPUs können wohl nur encoden.

    ???
    Wie meinst du "Quick Sync wird nicht richtig unterstützt? Intel nennt sein Hardware Encoding Quick Sync. Am Ende ist es aber immer noch stinknormales Hardware Video Beschleunigung ohne irgendwelche Besonderheiten. Deine IGPU kann also "Quick Sync" wie jede andere Intel IGPU auch. Über die Zeit kamen halt neue Features (HEVC) dazu und die Leistung wurde gesteigert. Deine RX570 kann aber dasselbe und wie gesagt mit mehr Leistung und eben auch HEVC. Deshalb macht es null Sinn die IGPU zu nutzen.


    Welches SMBIOS wäre denn da für full GPU beschleunigung zu empfehlen? Die Trashcans gab es ja auch mit Haswell Xeons ohne iGPU.. oder kann man trotz Z97 ein neues SMBIOS nehmen?

    Derzeit ist iMacPro1,1 das SMBIOS der Wahl. Du musst aber nicht wechseln weil ich dir ja oben bereits den Shiki-Patch gegeben habe. Dieser biegt die AppleGVA Config auf iMacPro1,1 um ohne dass du in dieses SMBIOS wechseln musst.

    LG Chris


    Meine Hardware:

  • Bezog sich auf Adobe, dort wird Qicksync offenbar erst ab Skylake voll unterstützt (decoding / encoding). Für ältere CPUs geht nur encoding afaik. Muss die aktuelle Suite aber erst noch installieren um Dinge zu testen, bin ich noch nicht zu gekommen..


    Konnte übrigens keine Hinweise finden dass Adobe den VCE 3.0 der RX Radeon Karten unterstützt. Den meinst du doch oder? https://en.wikipedia.org/wiki/Video_Coding_Engine#VCE_3.4

  • Natürlich muss macOS es unterstützen, das alleine bringt jedoch nichts wenn Adobes Software nicht auf die Libraries zugreift die macOS anbietet. Das klappt dann möglicherweise über Plugins die das dann tun, also den Code dafür implementieren.

  • Wir reden hier von Encoding und Decoding. Wenn die Adobe Software dies auf Intel kann, dann kann sie das auch auf der AMD Karte weil - wie ich nun schon mehrfach gesagt habe - darin aus technischer Sicht kein Unterschied besteht. Die API auf die hier zugegriffen wird nennt sich Video Toolbox.


    Diese nutzt wiederum das AppleGVA Framework. AppleGVA wiederum ist eine Abstraktionsschicht welche sich darum kümmert die richtige Hardware fürs Encoding zu wählen. Dummerweise ist das standardmäßig immer die IGPU wenn diese aktiv ist, völlig egal ob eine leistungsfähigere Grafikkarte mit am Start ist, welche eine höhere Leistung im Encoding bietet.


    Indem man die IGPU deaktiviert forciert man die Nutzung einer dedizierten Grafikkarte. Da hier aber auch diverse parameter stimmen müssen damit das funktioniert, muss man auch ein passendes SMBIOS haben - in diesem Fall iMacPro1,1. Und da kann man eben entweder komplett in dieses SMBIOS wechseln oder per Shiki dem AppleGVA Framework vorgaukeln das iMacPro1,1 SMBIOS wäre aktiv, woraufhin es mit den korrekten Parametern arbeitet. Letzterer Weg ist der mit den Boot-Args die ich dir gegeben hatte.


    Das Ende der Geschichte: Du hast H.264 und H.265 Beschleunigung auf deiner AMD Karte aktiv und mehr Leistung. Alle Apps die Video Toolbox nutzen, De- und Encodieren anschließend auf der AMD Karte.

    LG Chris


    Meine Hardware:

  • Bei mir funktioniert das mit der Dec/Enc Beschkeunigung (SMBIOS 13,2 mit RX 460, Intel GPU headless aktiv aber per WEG per Parameter shikigva=32 shiki-id=Mac-7BA5B2D9E42DDD94 auf MacPro umgestellt).

    Jedoch nur mit iMovie (Apple) da ist RX 460 Auslastung meist bei 100% beim Export in Datei.

    FCP habe ich nicht.


    Thema non Apple Apps die die VIDEOTOOL Box (Apples Schnittstelle) nutzen.

    Handbrake zb, kann man einstellen das es diese API nutzt.

    Doch die Videotoolbox h264 funzt NICHT (Abbruch, Fehlermeldung betreffs videotoolbox):

    [13:25:00] encavcodecInit: H.264 (VideoToolbox)

    [13:25:00] encavcodec: encoding with stored aspect 1/1

    [h264_videotoolbox @ 0x7f94c32c0a00] Error: cannot create compression session: -12915


    wenn ich diese SHIKI Parameter nutze. Ohne diese Parameter (AMD soll encodieren) funzt Videotoolbox h264 einwandfrei mit der Intel GPU!

    Insofern hängt es eben doch auch stark von den Apps ab die man nutzt - sicher Apple eigene Apps da kompatibler mit diesem SHIKI Pararmeter.

    Nutzt jemand denn noch eine AMD mit Intel GPU headless plus shikigva=32 shiki-id=Mac-7BA5B2D9E42DDD94 bei dem Handbrake (Video Option videotoolbox h264) funktioniert? Kann das jemand mal testen (SMBIOS non MacPro, iGPU headless aktiv, jedoch mit shiki Parametern MacPro für AMD Enc)

    https://handbrake.fr (Download)


    Wie gesagt bei mir klappts nicht mit shikigva=32 shiki-id=Mac-7BA5B2D9E42DDD94 , nur ohne dann machts aber die INtel GPU.

    2 Mal editiert, zuletzt von mitchde ()

  • Du würfelst alles durcheinander und beschwerst dich dann dass du nicht Encodieren kannst? Mit den Boot Args werden die Parameter für die AMD Karte gesetzt, du hast aber die IGPU aktiv. Natürlich funktioniert das IGPU Encoding dann nicht mehr richtig weil dann hierfür nötige Parameter fehlen bzw. dafür falsche Parameter gesetzt sind. Lese doch mal oben was ich geschrieben habe. Wenn die IGPU aktiv ist wird auch diese genutzt - egal welche Parameter du mitgibst. Genau deshalb deaktiviert man die IGPU wenn mann die DGPU dafür nutzen möchte. Dass du in iMovie einen Ausschlag auf der AMD Karte siehst liegt an HEVC. Da deine IGPU kein HEVC kann findet hier ein Fallback auf die AMD Karte statt.

    LG Chris


    Meine Hardware:

  • Hi, nein iMove Export (Teilen) ist kein HVEC (denke ich) sondern ein AVC (h264) .mp4. Daher wird hier die AMD wohl - im Gegensatz zur videotoolbox auch beim encoden von h264 genutzt. Keine Ahnung wie bzw. ob man bei iMovie HEVEC als Export Codec einstellen kann.

    Die iGPU wird eben nicht genutzt wenn diese SHIKI MacPro Parameter aktiv sind.

    Ich dachte mit dem SHIKI MacPro Parameter ist die aktive headless IGPU + SMBIOS iMac 13,2 wurst und es wird dann immer die AMD genutzt.

    Wäre super, wenn jemand mit ner AMD GPU mal die videotoolbox h264 von Handbrake ausprobieren würde und sagen ob das Encodieren da ohne Error läuft. Mal egal ob SMBIOS MacPro, falls es gerade keine SMBIOS non MAcPro + SHIKI MAcPro Parameter geben sollte.

  • Das Encodieren mit Videotoolbox klappt astrein, da gibt es eigentlich kein Testbedarf. Ich (und viele weitere) benutzen das seit Monaten so auf die Art wie CMMChris sie schon erläutert hat.

    Am einfachsten ist es wirklich du wechselst auf das iMacPro (nicht MacPro!) SMBIOS. Dann hast du kein Gefrikel mit Boot-Args mehr, einmal iCloud neu einrichten, fertig ist der Bums :)

    "Never touch a running system"? Falsch!
    Warum? Darum.

  • wo genau hau ich dit rin?


    Und nebenbei geht dit ooch ohne WEG?

  • mitchde Ganz ehrlich, ich bin es leid mir zu dem Thema einen abzuschreiben. Alles was geklärt werden muss wurde geklärt und wir wissen wie es richtig funktioniert. Ob du das nun glaubst oder nicht und auch so umsetzt oder eben nicht ist dein Bier.


    ozw00d Wie gesagt sind Boot Args. Und nein geht natürlich nicht ohne WEG weil Shiki.

    LG Chris


    Meine Hardware:

  • CMMChris okay mist dann komm ich nur weiter wenn ich wirklich mal auf WEG gehe.

    Wenn ich damit nicht schon ein paar mal Probleme gehabt hätte...

    Naja am WE mal Probieren, ich werd dann meldung machen was geht bzw. nicht geht.

  • So, ich habe folgendes doch mal probiert weil es hier so beschrieben wird:

    - IGPU abschalten

    - Alles IGPU spezifische aus deiner Config entfernen

    - Whatevergreen rein (hast ja wahrscheinlich eh)

    - Folgende Boot Args setzen: shikigva=32 und shiki-id=7BA5B2D9E42DDD94


    Folge:

    Handbrake bringt immer noch den gleich Fehler wenn ich Codec Videotoolbox h264 auswähle. Mag sein das das mit der RX 460 auch nicht so funktioniert wie mit euren RX 580/Vega Karten...

    "Das Encodieren mit Videotoolbox klappt astrein, da gibt es eigentlich kein Testbedarf. Ich (und viele weitere) benutzen das seit Monaten so "

    Mit Handbrake die Videotoolbox genutzt oder welcher App? FCP interessiert mich ehrlich gesagt nicht weil ichs nicht habe.

  • Ja, mit Handbrake. Kein Fehler, volle Performance.


    Gib diesen Befehl im Terminal ein, reboote und teste es dann nochmal.

    Code
    1. sudo update_dyld_shared_cache -force

    "Never touch a running system"? Falsch!
    Warum? Darum.