CodeXL (anteriormente AMD CodeXL ) es un conjunto de herramientas de desarrollo de software de código abierto que incluye un depurador de GPU , un perfilador de GPU, un perfilador de CPU , un analizador de cuadros de gráficos y un analizador de kernel / sombreador estático.
Autor (es) original (es) | Micro dispositivos avanzados |
---|---|
Lanzamiento estable | 2.6 / 15 de octubre de 2018 |
Repositorio | |
Escrito en | C , C ++ |
Sistema operativo | Linux , Windows |
Tipo | Depuración de GPU, creación de perfiles de GPU y CPU, análisis de kernel estático |
Licencia | Licencia MIT |
Sitio web | gpuopen |
CodeXL ha sido desarrollado principalmente por AMD . Con la versión 2.0, CodeXL pasó a formar parte de GPUOpen y es un software gratuito y de código abierto sujeto a los requisitos de la licencia MIT . Ya no tiene la marca de un producto AMD. [1]
El perfilador de CPU y el perfilador de energía se incluyeron en CodeXL hasta la versión 2.5. Ahora, estos perfiladores se lanzan como parte de la herramienta AMD uProf .
Características
Depurador de GPU
El depurador de GPU de CodeXL permite a los ingenieros depurar las llamadas a la API de OpenGL y OpenCL y los objetos en tiempo de ejecución, y depurar los núcleos de OpenCL: establecer puntos de interrupción, recorrer el código fuente en tiempo real, ver todas las variables en diferentes núcleos de GPU durante la ejecución del kernel, identificar errores de lógica y memoria, reducir la sobrecarga de transacciones de memoria, visualizar búferes e imágenes OpenCL / OpenGL y texturas OpenGL como imágenes o como datos de hoja de cálculo, y de esta manera mejorar la calidad general del software y optimizar su rendimiento.
Generador de perfiles de GPU
El generador de perfiles de GPU de CodeXL recopila y visualiza datos de contadores de rendimiento de hardware, seguimiento de aplicaciones, ocupación del kernel y ofrece análisis de puntos de acceso para GPU y APU de AMD . El generador de perfiles recopila datos del tiempo de ejecución de OpenCL y de la propia GPU / APU durante la ejecución de los núcleos, y se puede utilizar para descubrir cuellos de botella en el rendimiento y optimizar la ejecución del núcleo.
Perfilador de CPU
AMD uProf reemplaza CodeXL para las funcionalidades de CPU y Power Profiling en los procesadores AMD.
El conjunto de perfiles de CPU de CodeXL se puede utilizar para identificar, investigar y mejorar el rendimiento de las aplicaciones, los controladores y el software del sistema en las CPU de AMD. El generador de perfiles de CPU de CodeXL utiliza un enfoque basado en muestreo estadístico con varias técnicas y medidas de creación de perfiles: perfiles basados en el tiempo (TBP), perfiles basados en eventos (EBP), muestreo basado en instrucciones (IBS) y monitores de rendimiento del hardware de la CPU. El generador de perfiles de CPU CodeXL reemplaza a AMD CodeAnalyst .
Shader estático / analizador de kernel
El analizador de kernel estático de CodeXL permite a los ingenieros compilar, analizar y desensamblar el código de los sombreadores DirectX , OpenGL y Vulkan y los kernels OpenCL. La herramienta proporciona una estimación del rendimiento para cada sombreador / kernel en diferentes tipos de chips AMD, sin ejecutar realmente el código. De esta manera, la herramienta ayuda a realizar ajustes para lograr el mejor rendimiento en las GPU de AMD. [2] [3]
Analizador de GPU Radeon (RGA)
En el primer trimestre de 2017, AMD CodeXL Analyzer fue reemplazado por Radeon GPU Analyzer (RGA), manteniendo la compatibilidad con versiones anteriores. Radeon GPU Analyzer CLI es un compilador fuera de línea y una herramienta de análisis de rendimiento para sombreadores DirectX, sombreadores OpenGL, sombreadores Vulkan y kernels OpenCL. [4]
Perfilador de HSA
Con la versión 2.0, CodeXL HSA Profiler y HSAIL Kernel Debugger admiten el controlador de la iniciativa Boltzmann, en hardware GCN 1.2 (es decir, Radeon R9 Fury, Fury X y Fury Nano, y APU "Carrizo". [1]
Analizador de cuadros de gráficos
Frame Analyzer puede recopilar y mostrar una línea de tiempo de fotogramas para aplicaciones que utilizan Microsoft DirectX 12 o Vulkan . La vista del analizador enumera cada llamada a la API que se realizó en el lado de la CPU y su comando correspondiente que se ejecutó en el lado de la GPU en una vista de línea de tiempo unificada e interconectada, así como estadísticas agregadas para el fragmento de tiempo específico seleccionado por el usuario: tiempo acumulado para cada tipo de API, número de llamadas, 20 llamadas más largas y más.
Plataformas compatibles
CodeXL es compatible oficialmente con los sistemas operativos Linux y Microsoft Windows . En Windows, CodeXL está disponible como una aplicación independiente y como una extensión de Microsoft Visual Studio totalmente integrada .
Versiones y disponibilidad
- AMD CodeXL 1.0, lanzado el 4 de diciembre de 2012. [6]
- AMD CodeXL 1.1, lanzado el 27 de febrero de 2013. [7]
- AMD CodeXL 1.2, lanzado el 9 de julio de 2013. [8]
- AMD CodeXL 1.3, lanzado el 11 de noviembre de 2013. [9]
- AMD CodeXL 1.4, lanzado el 11 de abril de 2014. [10]
- AMD CodeXL 1.5, lanzado el 22 de septiembre de 2014. [11]
- AMD CodeXL 1.6, lanzado el 16 de diciembre de 2014. [12]
- AMD CodeXL 1.7, lanzado el 28 de abril de 2015. [13]
- AMD CodeXL 1.8, lanzado el 20 de agosto de 2015. [14]
- CodeXL 2.0, lanzado el 19 de abril de 2016. [1]
- CodeXL 2.1, publicado el 31 de mayo de 2016. [15]
- CodeXL 2.2, publicado el 8 de agosto de 2016. [16]
- CodeXL 2.4, lanzado el 20 de junio de 2017.
- CodeXL 2.5, lanzado el 26 de septiembre de 2017.
- CodeXL 2.6, publicado el 15 de octubre de 2018. [17]
La última versión de CodeXL está disponible gratuitamente para descargar en la página de lanzamientos de CodeXL GitHub.
PerfStudio de GPU
GPU PerfStudio es la herramienta de depuración y rendimiento de AMD para aplicaciones gráficas. Inicialmente se desarrolló para admitir Direct3D y OpenGL solo en Microsoft Windows y se transfirió a Linux durante 2013 y está disponible para Linux desde finales del primer trimestre de 2014. El conjunto de herramientas se considera útil al desarrollar juegos para Steam Linux y especialmente útil al optimizar juegos para GPU AMD. GPU PerfStudio tiene un Frame Profiles, Frame Debugger y API Trace integrados con información de tiempo de CPU.
GPU PerfStudio es compatible con Direct3D 10, Direct3D 10.1, Direct3D 11 y OpenGL 4.2. Se describe como un paquete de herramientas de GPU ligero, sin instalador, sin cambios en el juego, arrastrar y soltar . Se puede ejecutar desde una unidad USB, no es necesaria la integración de Visual Studio, se ejecuta con ejecutables del juego, no requiere un controlador especial ni una nueva compilación.
GPU PerfStudio 3.6 es compatible con Direct3D 12 en Windows 10 y Vulkan en Windows y Linux. [18]
GPU PerfStudio está disponible para Linux y Microsoft Windows.
En la Cumbre de desarrolladores de AMD (APU) en noviembre de 2013, Gordon Selley presentó GPU PerfStudio 2. [19]
En SteamDevDays en febrero de 2014, Tony Hosier y Gordon Selley presentaron GPU PerfStudio 2 en un video de 43 minutos. [20]
Depurador de cuadros
Perfiles de estructura
Depurador de sombreado
Rastreo de API
GPUPerfAPI
GPUPerfAPI es la biblioteca de AMD para acceder a los contadores de rendimiento de la GPU en las tarjetas gráficas y APU de AMD Radeon. Es utilizado por GPU PerfStudio y CodeXL y también está disponible para desarrolladores externos que deseen incorporarlo dentro de sus propias aplicaciones. GPUPerfAPI admite aplicaciones DirectX11, OpenGL y OpenCL. GPUPerfAPI está disponible para Linux y Microsoft Windows. [21]
Ver también
- AMD uProf
- Lista de herramientas de análisis de rendimiento
- Analista de código de AMD
- Arquitectura de sistema heterogéneo (HSA)
Referencias
- ↑ a b c AMD GPUOpen (19 de abril de 2016). "CodeXL 2.0 hecho de código abierto" . Archivado desde el original el 27 de junio de 2018 . Consultado el 21 de abril de 2016 .
- ^ http://gpuopen.com/gaming-product/amd-codexl-analyzercli/
- ^ http://gpuopen.com/up-and-running-with-codexl-analyzer-cli/
- ^ https://github.com/GPUOpen-Tools/RGA
- ^ "Simulación de cuerpo rígido Bullet 3 OpenCL" . 2013-11-21.
- ^ http://developer.amd.com/community/blog/2012/12/04/continue-your-heterogeneous-computing-hc-development-with-amd-codexl-1-0-final-release-now-available / Publicación de blog de lanzamiento de AMD Developer Central CodeXL 1.0
- ^ http://developer.amd.com/community/blog/2013/02/27/amd-codexl-version-1-1-released-to-developer-amd-com/ Publicación de blog de lanzamiento de AMD Developer Central CodeXL 1.1
- ^ http://developer.amd.com/community/blog/2013/07/09/latest-versions-of-amd-codexl-bolt-and-amd-app-sdk-now-available/ AMD Developer Central CodeXL 1.2 publicar publicación de blog
- ^ http://developer.amd.com/community/blog/2013/11/08/codexl-1-3-released/ Publicación de blog de lanzamiento de AMD Developer Central CodeXL 1.3
- ^ http://developer.amd.com/community/blog/2014/04/15/codexl-1-4-released/ Publicación de blog de lanzamiento de AMD Developer Central CodeXL 1.4
- ^ http://developer.amd.com/community/blog/2014/09/22/whats-new-codexl-1-5/ AMD Developer Central "¿Qué hay de nuevo en CodeXL 1.5?" entrada en el blog
- ^ http://developer.amd.com/community/blog/2014/12/16/whats-new-amd-codexl-1-6/ AMD Developer Central "¿Qué hay de nuevo en CodeXL 1.6?" entrada en el blog
- ^ http://developer.amd.com/community/blog/2015/04/28/amd-codexl-1-7/ Central de desarrolladores de AMD "¡AMD CodeXL 1.7 ya está aquí!" entrada en el blog
- ^ http://developer.amd.com/community/blog/2015/08/20/amd-codexl-1-8-released/ Entrada de blog "CodeXL 1.8 Release Loaded With Features" de AMD Developer Central
- ^ "CodeXL 2.1 está fuera y ardiendo con Vulkan - GPUOpen" . 2016-05-31 . Consultado el 15 de agosto de 2016 .
- ^ "¡Blazing CodeXL 2.2 ya está aquí! - GPUOpen" . 2016-08-08 . Consultado el 15 de agosto de 2016 .
- ^ "¡Lanzamiento de CodeXL 2.6! - GPUOpen" . 2018-10-15 . Consultado el 15 de octubre de 2018 .
- ^ "Herramientas de GPUPerfStudio Vulkan" . AMD . Archivado desde el original el 29 de enero de 2017 . Consultado el 15 de octubre de 2016 .
- ^ "Optimización del desarrollo de juegos usando AMD GPU PerfStudio 2" . 2013-11-21.
- ^ "Copia archivada" . Archivado desde el original el 7 de enero de 2015 . Consultado el 7 de febrero de 2015 .CS1 maint: copia archivada como título ( enlace )
- ^ "Copia archivada" . Archivado desde el original el 7 de enero de 2015 . Consultado el 7 de febrero de 2015 .CS1 maint: copia archivada como título ( enlace )
enlaces externos
- Página web oficial