CodeXL_Release_Notes
CodeXL_Release_Notes
5 GA Release Notes
Contents
CodeXL 2.5 GA Release Notes ....................................................................................................................... 1
New in this version.................................................................................................................................... 2
System Requirements ............................................................................................................................... 2
Getting the latest Radeon™ Software release .......................................................................................... 4
Note about installing CodeAnalyst after installing CodeXL for Windows® ............................................... 4
Fixed Issues ............................................................................................................................................... 4
Known Issues............................................................................................................................................. 4
Support ..................................................................................................................................................... 8
Thank you for using CodeXL. We appreciate any feedback you have! Please use the CodeXL Issues Page
to provide your feedback.
You can also check out the Getting Started guide and the latest CodeXL blog at GPUOpen.com
1
New in this version
CodeXL v2.5 adds the following major features on top of the CodeXL v2.4 feature set:
Updated version of Radeon Compute Profiler (5.2). See the Radeon Compute Profiler’s Release
Notes for details.
GPU Profiling:
o Improved display of HSA Agent names in the Application Timeline.
System Requirements
CodeXL contains a host of development features with varying system requirements:
Frame Analysis
o The latest Radeon™ Software version (see "Getting the latest Radeon™ Software
release" section below).
GPU Profiling and OpenCL™ Kernel Debugging
o An AMD GPU (Radeon HD 7700 series or newer, desktop or mobile version) or APU is
required.
o Radeon Software Crimson ReLive Edition 17.9.1 (driver 17.30) is the recommended
driver on Windows®, and the latest amdgpu-pro (driver 17.30) on Linux®.
o Earlier HW configurations (Radeon HD 5000/6000 series) are no longer supported by
Radeon Software Crimson Edition and CodeXL 2.0. For these configurations please
install CodeXL 1.9 (available here) and the AMD Catalyst driver release 13.11 or later.
Catalyst 15.9.1 (driver 15.201) is the recommended version.
o OpenCL™ kernel debugging requires the closed-source AMD OpenCL™ compiler.
ROCm/HSA Profiling
o Supported on the ROCm stack, version 1.6. See the below link for supported hardware
configurations:
https://rocm.github.io/hardware.html
o Follow the installation instructions at the following link to install ROCm:
https://rocm.github.io/install.html
o Should a new version of the ROCm become available, the version of the profiler
included in CodeXL may need to be updated in order to be compatible with that version.
If/when a new runtime is published to GitHub, we will also publish new HSA Profiler
binaries on GitHub (https://github.com/GPUOpen-Tools/RCP). There will be instructions
included in the aforementioned repository describing what steps may need to be taken
to use a new profiler build with an existing CodeXL build.
For GPU API-Level Debugging, a working OpenCL™/OpenGL® configuration is required (AMD or
other).
CPU Profiling
o Time-Based Profiling can be performed on any x86 or AMD64 (x86-64) CPU/APU.
o The Event-Based Profiling (EBP) and Instruction-Based Sampling (IBS) session types
require an AMD CPU or APU processor.
2
o CPU Profiling on Linux® platforms - Limitations of PERF
CPU profiling uses PERF which requires kernel 2.6.32 or later. CPU Profiling with
Call Stack Sampling requires Linux® kernel 3.0 or later. However, we
recommend using kernel 3.2 and above which has shown to be more stable.
Call chain analysis on Linux® currently depends on the call chain information
provided by Linux® PERF. This requires the profiled binaries to have stack frame
pointer. (i.e., compiled with -fno-omit-frame-pointer).
For non-root users to run CodeXL CPU profiling,
"/proc/sys/kernel/perf_event_paranoid" needs to be set to "-1".
Instruction-Based Profiling on Linux® requires Linux® kernel 3.5 and above.
Call chain information (stack trace) for inline functions is not available.
CPU Profiling on VMWare
o Time-Based Profiling (TBP) and Event-Based Profiling (EBP) are supported in guest OS
running on VMware Workstation 11.0 or later.
o If VMWare Workstation’s Virtual Performance Monitoring Counters (VPMC) is not
supported on a given CPU, then only time-based profiling will be available. Event-Based
Profiling will not capture any data other than CPU cycles.
o Event-Based Profiling works on Windows® and Linux® guest OS in these scenarios:
Host OS: Windows®, Guest OS: Windows® 7, Windows® 8.1, Win10, Ubuntu
14.04, RHEL 7
Host OS: Linux®, Guest OS: Window 7, Windows® 8.1, Win10, Ubuntu 14.04,
RHEL 7
o Basic CPU configuration requirements:
CPU should support SVM or AMD-V feature. Without this VMware will not be
able to do hardware virtualization.
This CPU feature can be enabled/disabled from BIOS settings.
Power Profiling
o Supported on:
AMD Ryzen CPU Processor.
Carrizo, Kaveri, Mullins and Temash APUs.
The majority of the Graphics IP 7 GPUs (code name “Sea Islands”) or more
recent, including AMD Radeon™ and AMD FirePro™ models.
AMD Radeon RX 500 Series.
Static Analysis
o OpenCL™/DirectX® 11 kernel/shader analysis requires a working AMD
OpenCL™/DirectX® 11 configuration
o OpenGL® shader analysis on Windows® requires Catalyst 15.9. (driver 15.20) or later
o For Vega support, Radeon Vega Frontier Edition 17.6 (Driver Packaging Version 17.20) or
later is required
Supported platforms:
3
Windows® platforms
o Windows® 7 64-bit, 8.1 64-bit and 10 64-bit (including Windows® 10 Anniversary
Update).
Windows® 7 & 8.1 require to install Microsoft update KB2999226
https://support.microsoft.com/en-us/kb/2999226
o Note: For the CodeXL Visual Studio 2010/2012/2013/2015 Package, the station must be
installed with Visual Studio 2010/2012/2013/2015, respectively. However, the CodeXL
Standalone Application does not require Visual Studio to be installed.
Linux® platforms
o Red Hat EL 7 64-bit
o Ubuntu 16.04 64-bit
o SUSE 11 SP3 64-bit
Radeon Vega Frontier Edition 17.6 (Driver Packaging Version 17.20) can be found here:
- Windows 10
- Windows 7
- Linux
Fixed Issues
The following are the major fixes that were not part of the v2.4 release and are new to this version:
Known Issues
On Linux® machines that have gfx900 (Vega) or gfx804 (Lexa) GPUs installed,
OpenCL™ compilation fails.
On Linux® machines, Vulkan Rendering Pipeline compilation fails for gfx900 4028
(Vega), due to a compiler crash.
4
When opening a project in CodeXL 2.5 that was originally created in CodeXL 4029
2.4 on a system with a Vega GPU, a GPU Performance Counter session may
not collect all available performance counters even though the Project
Settings UI shows that all counters are selected. The workaround in this case
is to manually unselect and re-select a counter in the UI.
Debugging OpenCL™ kernels that use read-modify-write atomic operations is
not supported.
GPU Debugging on OpenCL™ Static C++ Kernels is not supported. 334415
OpenCL™ 1.2 keyword printf and barriers are not supported during kernel
debugging.
Building kernels with OpenCL™ 1.2 clCreateProgramWithBinaries and 369171
clLinkProgram API prevents the display of source code when debugging these
kernels.
Performing CPU Profiling with Call-Stack Sampling (CSS) enabled, on systems 352399
with discrete graphics card (Radeon HD 5000, 6000 or 7000 series) and
Linux® kernel version 3.0 or lower, may result in Linux® kernel panic. This
kernel panic does not occur with Linux® kernel version 3.2 onwards.
CPU Profiling is disabled on Windows® 8 and 8.1 if Hyper-V is enabled. 438549
Note that installing Microsoft Windows® Phone 8.0 SDK activates Hyper-V.
PERF call chains which contain call stacks across modules have shown to be
truncated. This results in inaccurate "Deep Samples", "Downstream
Samples", and "Call Path" analysis.
If gDEBugger 6.x is installed on the machine, mouse click doesn't start text 344811
fields editing in CodeXL Visual Studio Extension. Workaround: Navigate to the
text fields using TAB or uninstall gDEBugger before installing CodeXL.
Menu items are present but not visible after minimization and restore of 353082
CodeXL in Ubuntu system using Unity theme. Workaround: Use Unity 2D
theme instead of Unity theme.
AMDTTeapot sample may crash while debugging OpenCL™ kernels after 357741
multiple step operations (45 or more).
CPU Profiling on Windows® 8 shows two target applications in Profile
Overview. The conhost.exe process is an actual executable. This process fixes
a fundamental problem in the way previous versions of Windows® handled
console windows®, which broke drag & drop in Vista.
If CodeXL is installed in path that includes non-ASCII Unicode characters, 365118.
profiling does not work
GPU Debugger does not display locals when debugging a kernel with 23, 1156
extremely large buffers or worksize.
Power Profiling of Tonga and Iceland dGPUs is disabled. 36, 1497
The Call-graph view for CPU Profiling with call stack collection of 32-bit 223
applications may show two separate paths for a function that has a single
path.
If the profiled station goes into Sleep/Hibernate state during a Power 459572, 224
Profiling session, only data collected before hibernation is displayed, and the
navigation slider does not respond.
GPU Debugger does not stop at breakpoints inside kernels that take a very 240
long time to execute and cause a driver TDR.
5
Performing 2 GPU Profiling sessions concurrently - Timeline Application Trace 259, 68176
and Performance Counters - on a Red Hat Linux® System may cause a system
hang after several minutes.
CPU Profiler runs out of memory and closes down while performing post- 265
processing of a system-wide profile session that combines IBS, CLU and Time-
based sampling for over 5 minutes.
CPU Profiling multiple processes with call stack collection may result in call 289
graph view displaying addresses instead of function names for functions used
by more than one process.
The GPU Debugger can't step into a kernel if blocks that contain a return 349
statement.
Windows® system crash (Blue Screen of Death) is observed, if CPU Profiling 907
using Event-Based-Profiling is run both in guest and host OS or if CPU
Profiling using Event-Based-Profiling is run on host OS while the guest OS is
launched. This is an issue in the VMWare VMM driver.
GPU Profiler does not display any hsa_*_get_info calls in host thread calls list 980
if they are callbacks encompassed by hsa_iterate_agents calls.
CPU Profiler time-based profiling on a VM may produce more samples than 1125
the session duration and sampling interval suggest.
Power Profiler displays zero values for ‘Others’ counters in Summary view if 1200
only dGPU counters are selected.
GPU Debugger skips the internal loop in APP SDK nBody sample. 1250
In CPU Profiler’s Time-Based Profiling, an unexpected low number of samples 1277
is collected when running on guest Win10-64 OS.
Step-in operations require over a minute when debugging clFFT sample. 1324
Unable to launch GPU profiler - cannot allocate memory error on starting 1347
profiling after running 2 or 3 GPU Profiler timeline trace sessions for 2-3 min.
CodeXL throws segmentation fault while launching on Linux® through SSH. 1533
The HSAIL Debugger’s Debugged Process Events viewer shows SIGPIPE or 1590
SIGBUS error while debugging HSAIL Applications.
Multiwatch view is disabled while debugging HSAIL. 1628
API/Draw/Frame steps should be disabled while doing HSAIL debugging. 1648
Newly registered Windows® Store Apps do not appear in the Project Settings 1688
list of apps.
CPU Profiler doesn’t launch Windows® Store App that is specified in project 1689
settings.
System Information dialog’s OpenCL™ Devices tab appears empty on Linux®. 1954
GPU debugger backend crashes when we close the Teapot window on I+A 2201
system.
In Visual Studio Host+GPU debug session, execution of the debugged 2412
application resumes and doesn’t break when performing a ‘step out‘
operation.
For some debugged applications, the HSA Debugger breakpoints are not hit. 2516
Frame Analysis runs out of memory when loading and displaying ~40 2561
captured frame traces at once.
6
In Visual Studio, after using Frame Analysis to capture frame traces, clicking a 2893
frame thumbnail without stopping the session may lead to "Session Aborted"
error pop up followed by "Failed to load frame data" error.
Cannot open a GPU Profiler session once we rename it, after re-starting 2912
Visual Studio.
CPU Profiler does not display symbol information on importing a .prd file. 2942
The GPU debugger does not display OpenGL® static buffers when running 3167
inside the Visual Studio extension and ‘Break’ is clicked.
Modules are identified as ‘Unknown’ in Power Profiler sessions when the 3168
profiled process is run after the profiler’s command line tool session began.
Some Steam games may crash when Steam is launched from CodeXL Frame 3172
Analysis mode.
Visual Studio displays error "The following session files could not be deleted" 3179
when deleting a CodeXL Power Profiling session.
Filtering the CPU Profiling display based on CPU Core/Numa is disabled in the 3233
display filter.
When CPU Profiling on Linux®, C++/Java inline functions are shown with 3240
generic names or missing.
The Vulkan versions of Doom and The Talos Principle fail to start when 3364
launched from Steam as part of a Frame Analysis session on Windows®.
When launching the Vulkan version of DOTA2 from Steam as part of a Frame 3381
Analysis session on Linux®, The game must be manually shutdown at the end
of the session else viewing frame traces and session export will fail.
The CPU Profiler’s Overview ‘5 Hottest functions’ table does not filter out 3497
JVM functions when profiling Java applications on Linux®.
Double clicking a function name in the CPU Profiling session’s Functions view 3498
displays an empty source view for profiled Java applications on Linux®.
Double clicking a module name in the CPU Profiling session’s Overview 3499
displays an empty source view for profiled Java applications on Linux®.
On Linux®, GPU Profiling Performance Counters of an OpenGL® application 68152
may cause a system hang after a few seconds.
In Power Profile sessions on machines without Catalyst installed, ‘iGPU 459364
Frequency’ is constantly shown as 100MHz. If Catalyst is installed, then
CodeXL reports the proper integrated-GPU frequency.
Collecting GPU Profiler performance counters on the integrated GPU on an 68176
APU while another 3D app is running outside CodeXL can lead to a display
hang.
Debugging OpenCL™ kernels with optimizations disabled may cause kernel 80095
hang / driver not responding (TDR) in Radeon Software Crimson Edition
(driver 15.30).
For Power Profiler’s Process/Module profiling, “Process Name” and “Process 3792
path” is shown as “unknown” for some of the user space applications.
Timeline view's energy/power graphs highlight multiple (first counter is 3873
always shown selected) counters though only one counter is selected.
Some power profile counters are all plotted in Black for imported session. 3877
On Linux®, first run after killing power profile run gives zero records. 3902
7
For process/module profiling, Irrespective of admin/non-admin privilege, 3904
launch app with CodeXLPowerProfiler CLI is always shown as unknown.
For Remote Power Profiling, counters are shown without Counter Type 3914
(heading: Power, Frequency, Temperature).
Caching of files/.pdb/executable not working with CPU Profiling session. 3244
On Linux®, "5 Hottest functions" does not show correct functions for CPU 3497
profiling using Java app (scimark2).
For huge source files (like sqlite3.c), CodeXL source view does not show the 3541
complete source code - View seems to limit to 64K lines
Samples not attributed to source for functions that belong to huge (100K+ 3542
lines) source file
On AMD Ryzen, CPU Profiler does not support pre-defined profile
configurations. User has to use the Custom Profiler to select the required
PMC or IBS events.
On AMD Ryzen, selecting multiple PMC or IBS events to perform CPU
profiling may not work properly.
On AMD Ryzen, IBS Profiling may not be enabled by default. In that case, IBS
can be enabled through BIOS settings.
On Linux® OS, CPU Profiler may show zero samples for IBS Fetch event. 3773
Samples reported differs in Overview tab and Callgraph view. 3785
CodeXL displays empty source view if debug information (.pdb) is not present 3566
for the profiled application.
Visual Studio plugin crashes on running power profile session by "New Power 3908
Session..."
Source view for Java inline functions shows no samples for the source. 3912
Installing APP SDK will break GPU kernel debugging. 3815
Support
Please use our CodeXL Issues Page for bug reports, support and feature requests.