News GPU Reshape auf GPUopen

User-News

Von E555user

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.
Auf GPUOpen wurde GPU Reshape veröffentlicht. Damit wird es möglich Bugs im Shader-Code zu finden, die sich in dynamischen Code über Validation-Layer nicht finden lassen. Neben der bereits verlinkten Tool-Seite gibt es eine ausführliche Einführungsseite zum Release:
Initiativ wurde das Tool von Miguel Petersen, Senior Rendering Engineer bei Striking Distance (The Callisto Protocol) entwickelt. Er wurde bei der weiteren Entwicklung und Veröffentlichung von Kollegen bei der Avalanche Studios Group und AMD unterstütz.

Erstmals wird damit ein nicht von AMD entwickeltes Tool auf GPUopen präsentiert und unterstreicht damit die Offenheit nicht nur in der Nutzung, sondern auch für Beiträge durch die Entwicklercommunity.

Cover.png


Das Tool kann mit allen GPUs eingesetzt werden und läuft unter Win10/11 mit DX12 und Vulkan (SPIR-V, DXIL, DXBC).
Es bietet Funktionalität zur Analyse von und Unterstützung bei:

  • Ressourcenbereiche (-Abgrenzung)
    • Validierung der Lese-/Schreibkoordinaten einer Ressource und deren Speichergrenzen.
  • Export-Stabilität
    • Validierung der numerischen Stabilität von Fließkomma-Exporten (UAV-Schreibvorgänge, Renderziele, Vertex-Exporte), z. B. NaN / Inf.
  • Deskriptor-Validierung
    • Validierung von Deskriptoren, die ggf. dynamisch indiziert sind. Dazu gehören undefined, missmatched (Kompilier- und Laufzeit), out of bounds Deskriptorindizierung und fehlende table bindings.
  • Concurrency Validierung
    • Validierung konkurrierender Ressourcen, z. B. alleinige Ersteller vs. mehere Nutzer, zwischen Warteschlangen und Ereignissen.
  • Ressourcen-Initialisierung
    • Validierung der Ressourceninitialisierung, um sicherzustellen, dass jedem Lesevorgang ein Schreibvorgang vorausgegangen ist.
  • Endlosschleifen
    • Erkennung von Endlosschleifen (experimentell)

Auf der Github Seite ist der derzeitige Stand die Beta-Version 0.9.0, darüber hinaus finden sich bereits weitere Entwicklungsoptionen auf einer angestrebten Feature-Liste.
 
Zurück
Oben Unten