AMD heeft versie 1.0 van een programmaatje genaamd GPU Detective uitgebracht. Dit stuk gereedschap helpt met proberen uit te leggen waarom een crash van de gpu-driver gebeurd is en waarom misschien zelfs de computer is vastgelopen.
Volgens AMD zelf is het een krachtig stuk gereedschap voor ontwikkelaars om te helpen analyseren hoe de gpu(-driver) tot een crash kwam. Het staat een ieder echter vrij om de software te downloaden en te gebruiken. Er zijn nog wel wat limitaties aan de software. Zo werkt het alleen bij DirectX 12-spellen en is het ook alleen te gebruiken op de nieuwere Radeon RX 6000- en 7000-series gpu’s. AMD’s Adrenalin-software, versie 23.7.2 of hoger is ook nodig; softwareversies van daarvoor werken (nog) niet. Ondersteunde besturingssystemen zijn Windows 10 en 11. Als aan dit alles voldaan is, gaat de Detective te werk vergelijkbaar met Windows in het geval van een crash. Als DX12 vastloopt schrijft de AMD-software alle informatie die het kan verkrijgen over de crash weg in een bestand.
Om de Detective te gebruiken zijn ook de Developer Tools nodig
De tool is voorlopig alleen te gebruiken via een opdrachtregel; er is geen grafische schil gemaakt. Als de software op het systeem staat kan de driver in een ‘crash analysis'-modus gezet worden waarna het zal proberen om de crash te reproduceren zodat details vastgelegd kunnen worden. Middels voor ontwikkelaars welbekende execution markers kan vervolgens aangestipt worden welke stappen in het renderproces en welke draw-calls voor problemen zorgden. Het stuk software komt in actie als de gpu voor een bepaalde tijd niet meer reageert naar het os. Bij Windows staat die periode ingesteld op twee seconde. Het os zal proberen het apparaat te verwijderen of te herstarten. Dit wordt de Timeout Detection and Recovery genoemd.
In de praktijk ziet dat er als volgt uit: Als de gpu stopt met reageren op het os, dan schakelt het scherm hoogstwaarschijnlijk op zwart en verschijnt er een foutmelding in de trant van DXGI_ERROR_DEVICE_RESET. AMD heeft een tutorial voor gebruik gemaakt en stelt daarin dat als de crash door de cpu veroorzaakt was, dat niet meegenomen wordt in de dump van de details van de crash-analyse.
Zoals wel vaker met AMD-software is de code van het stuk gereedschap opensource. Het geheel staat op Github. De tool moet in de achtergrond draaien maar het gebruik van geheugen en cpu is erg laag volgens het bedrijf. Prestaties in spellen zouden in ieder geval niet mogen lijden onder het laten draaien van de tool. AMD ziet de grootte van het crash-dump-bestand als normaal als het zo’n enkele tientallen megabytes aan data bevat.
Bronnen: ExtremeTech, AMD (GPUOpen)