CodeXL - CodeXL

CodeXL
Originalautor(en) moderne Mikrogeräte
Stabile Version
2.6 / 15. Oktober 2018 ; vor 2 Jahren ( 2018-10-15 )
Repository Bearbeite dies bei Wikidata
Geschrieben in C , C++
Betriebssystem Linux , Windows
Typ GPU-Debugging, GPU- und CPU-Profiling, Statische Kernelanalyse
Lizenz MIT-Lizenz
Webseite gpuopen .com /archived /legacy-codexl / Bearbeite dies bei Wikidata

CodeXL (ehemals AMD CodeXL ) war eine Open-Source- Software-Entwicklungstool- Suite, die einen GPU- Debugger, einen GPU-Profiler, einen CPU- Profiler, einen Grafikrahmen-Analysator und einen statischen Shader/Kernel-Analyzer umfasste.

CodeXL wurde hauptsächlich von AMD entwickelt . Mit Version 2.0 wurde CodeXL Teil von GPUOpen und ist freie und Open-Source-Software , die den Anforderungen der MIT-Lizenz unterliegt . Es wird nicht mehr als AMD-Produkt gebrandmarkt.

CPU-Profiler und Power-Profiler waren bis Version 2.5 in CodeXL enthalten. Jetzt werden diese Profiler als Teil des AMD uProf- Tools veröffentlicht.

Im April 2020 aktualisierte AMD das GitHub-Repo mit der Ankündigung, dass „CodeXL von AMD nicht mehr aktiv entwickelt oder unterstützt wird und archiviert wird“.

Merkmale

GPU-Debugger

Der GPU-Debugger von CodeXL ermöglicht es Ingenieuren, OpenGL- und OpenCL- API-Aufrufe und Laufzeitobjekte zu debuggen und OpenCL-Kernel zu debuggen: Haltepunkte setzen, Quellcode in Echtzeit durchlaufen, alle Variablen über verschiedene GPU-Kerne während der Kernel-Ausführung anzeigen, Logik- und Speicherfehler identifizieren, reduzieren den Overhead von Speichertransaktionen, visualisieren OpenCL/OpenGL-Puffer und -Bilder sowie OpenGL-Texturen als Bilder oder als Tabellenkalkulationsdaten und verbessern auf diese Weise die allgemeine Softwarequalität und optimieren deren Leistung.

GPU-Profiler

Der GPU-Profiler von CodeXL sammelt und visualisiert Hardware-Leistungsindikatoren, Anwendungsverfolgung, Kernelbelegung und bietet Hotspot-Analysen für AMD- GPUs und APUs. Der Profiler sammelt während der Ausführung der Kernel Daten aus der OpenCL-Laufzeit und von der GPU/APU selbst und kann verwendet werden, um Leistungsengpässe zu erkennen und die Kernel-Ausführung zu optimieren.

CPU-Profiler

AMD uProf ersetzt CodeXL für CPU- und Power-Profiling-Funktionen auf AMD-Prozessoren.


Die CPU-Profiling-Suite von CodeXL kann verwendet werden, um die Leistung von Anwendungen, Treibern und Systemsoftware auf AMD-CPUs zu identifizieren, zu untersuchen und zu verbessern. Der CPU-Profiler von CodeXL verwendet einen statistischen Sampling-basierten Ansatz mit verschiedenen Profiling-Techniken und -Maßnahmen: Time-Based Profiling (TBP), Event-Based Profiling (EBP), Instruction-Based Sampling (IBS) und CPU-Hardware-Leistungsüberwachungen. Der CodeXL-CPU-Profiler ersetzt AMD CodeAnalyst .

Statischer Shader/Kernel-Analysator

Der statische Kernel-Analyzer von CodeXL ermöglicht es Ingenieuren, den Code von DirectX- , OpenGL- und Vulkan- Shadern und OpenCL-Kerneln zu kompilieren, zu analysieren und zu disassemblieren . Das Tool bietet eine Leistungsschätzung für jeden Shader/Kernel auf verschiedenen Arten von AMD-Chips, ohne den Code tatsächlich auszuführen. Auf diese Weise hilft das Tool bei der Feinabstimmung, um die beste Leistung auf AMD-GPUs zu erzielen.

Radeon GPU-Analysator (RGA)

Im ersten Quartal 2017 wurde AMD CodeXL Analyzer durch Radeon GPU Analyzer (RGA) ersetzt, wobei die Abwärtskompatibilität beibehalten wurde. Radeon GPU Analyzer CLI ist ein Offline-Compiler und ein Leistungsanalysetool für DirectX-Shader, OpenGL-Shader, Vulkan-Shader und OpenCL-Kernel.

HSA-Profiler

Mit Version 2.0 unterstützen der CodeXL HSA Profiler und der HSAIL Kernel Debugger den Boltzmann-Initiative-Treiber auf GCN 1.2- Hardware (dh Radeon R9 Fury, Fury X und Fury Nano sowie "Carrizo" APUs.

Grafikrahmen-Analysator

Der Frame Analyzer kann eine Frame-Timeline für Anwendungen erfassen und anzeigen, die Microsoft DirectX 12 oder Vulkan verwenden . Die Ansicht des Analysators listet jeden API-Aufruf, der auf der CPU-Seite getätigt wurde, und den entsprechenden Befehl, der auf der GPU-Seite ausgeführt wurde, in einer verknüpften und einheitlichen Zeitachsenansicht sowie aggregierte Statistiken für ein vom Benutzer ausgewähltes spezifisches Zeitfragment auf – kumulierte Zeit für jede Art von API, Anzahl der Aufrufe, 20 längste Aufrufe und mehr.

Unterstützte Plattformen

CodeXL unterstützt offiziell sowohl Linux- als auch Microsoft Windows- Betriebssysteme. Unter Windows ist CodeXL sowohl als eigenständige Anwendung als auch als vollständig integrierte Microsoft Visual Studio- Erweiterung verfügbar .

CodeXL wurde erfolgreich zum Debuggen von Bullet verwendet .

Versionen und Verfügbarkeit

  • AMD CodeXL 1.0, veröffentlicht am 4. Dezember 2012.
  • AMD CodeXL 1.1, veröffentlicht am 27. Februar 2013.
  • AMD CodeXL 1.2, veröffentlicht am 9. Juli 2013.
  • AMD CodeXL 1.3, veröffentlicht am 11. November 2013.
  • AMD CodeXL 1.4, veröffentlicht am 11. April 2014.
  • AMD CodeXL 1.5, veröffentlicht am 22. September 2014.
  • AMD CodeXL 1.6, veröffentlicht am 16. Dezember 2014.
  • AMD CodeXL 1.7, veröffentlicht am 28. April 2015.
  • AMD CodeXL 1.8, veröffentlicht am 20. August 2015.
  • CodeXL 2.0, veröffentlicht am 19. April 2016.
  • CodeXL 2.1, veröffentlicht am 31. Mai 2016.
  • CodeXL 2.2, veröffentlicht am 8. August 2016.
  • CodeXL 2.4, veröffentlicht am 20. Juni 2017.
  • CodeXL 2.5, veröffentlicht am 26. September 2017.
  • CodeXL 2.6, veröffentlicht am 15. Oktober 2018.

Die neueste Version von CodeXL steht auf der CodeXL GitHub-Versionsseite zum kostenlosen Download bereit.

GPU PerfStudio

GPU PerfStudio ist AMDs Leistungs- und Debugging-Tool für Grafikanwendungen. Es wurde ursprünglich entwickelt, um Direct3D und OpenGL nur unter Microsoft Windows zu unterstützen und wurde 2013 auf Linux portiert und ist seit Ende des ersten Quartals 2014 für Linux verfügbar Spiele für AMD-GPUs. GPU PerfStudio verfügt über integrierte Frame-Profile, Frame-Debugger und API-Trace mit CPU-Timing-Informationen.

GPU PerfStudio unterstützt Direct3D 10, Direct3D 10.1, Direct3D 11 und OpenGL 4.2. Es wird als leichtgewichtig beschrieben, kein Installationsprogramm, keine Änderung Ihres Spiels, Drag-and-Drop- Suite von GPU-Tools. Es kann von einem USB-Laufwerk ausgeführt werden, es ist keine Visual Studio-Integration erforderlich, es läuft mit ausführbaren Spieldateien, es erfordert keinen speziellen Treiber oder eine neue Kompilierung.

GPU PerfStudio 3.6 unterstützt Direct3D 12 unter Windows 10 und Vulkan unter Windows und Linux.

GPU PerfStudio ist für Linux und Microsoft Windows verfügbar.

Auf dem AMD Developer Summit (APU) im November 2013 stellte Gordon Selley die GPU PerfStudio 2 vor.

Auf den SteamDevDays im Februar 2014 präsentierten Tony Hosier und Gordon Selley GPU PerfStudio 2 in einem 43-minütigen Video.

Frame-Debugger

GPU PerfStudio2 Frame-Debugger

Rahmenprofile

GPU PerfStudio2 Frame-Profiler

Shader-Debugger

GPU PerfStudio2 Shader-Debugger

API-Trace

GPU PerfStudio2 API Trace API-Aufruf
GPU PerfStudio2 API Trace der Multithread-API-Nutzung

GPUPerfAPI

GPUPerfAPI ist AMDs Bibliothek für den Zugriff auf GPU-Leistungsindikatoren auf AMD Radeon-Grafikkarten und APUs. Es wird von GPU PerfStudio und CodeXL verwendet und steht auch Drittentwicklern zur Verfügung, die es in ihre eigenen Anwendungen integrieren möchten. GPUPerfAPI unterstützt DirectX11-, OpenGL- und OpenCL-Anwendungen. GPUPerfAPI ist für Linux und Microsoft Windows verfügbar.

Siehe auch

Verweise

Externe Links