Intel® SDK for OpenCL™ Applications - API Debugger
The interface of the Microsoft Visual Studio* IDE provides standard
debugging capabilities for the host side of OpenCL™ applications, while
the API Debugger plug-in of the Intel® SDK for OpenCL™ Applications
enables debugging OpenCL kernels. The stitch between simultaneous debugging
of OpenCL kernel and host application might be complicated in different
stages. API Debugging feature of the Intel SDK for OpenCL Applications
for Microsoft Visual Studio covers the stitch.
The API Debugging feature enables monitoring and understanding OpenCL
environment of applications throughout execution.
The feature supports the following:
- API Tracing - lists a trace of all OpenCL API calls that
occurred during the execution, list of trace arguments, return values,
and execution time.
- OpenCL Objects View - shows all OpenCL objects that exist
in memory during the execution.
- Properties View - retrieves common information per each
OpenCL object.
- Command-Queue View - tracks the execution status of the
enqueued commands.
- Problems View - summarizing all error and warning messages.
- Image View - visually displays all 2D image objects as bitmaps.
- Data View - visually displays buffer data and 2D image pixel
arrays on a grid.
- Save/Load session - enables capturing a state/snapshot of
all views of the plug-in, saving it on disk, and also loading the
stored sessions.
- Memory Tracing - enables storing OpenCL Images and Buffers
content, and visually examining either by Bitmap or Grid view the
contents of the underlying data associated with the memory object
throughout the various API calls that affected it.
Note
Concurrent debugging sessions are not supported with the Intel SDK
for OpenCL Applications - API Debugger. This includes attaching the
debugger to more than one process, or opening multiple instances of
the Visual Studio and debugging processes concurrently.
See Also
Trace View
Objects Tree View
Properties View
Command Queue View
Problems View
Image View
Data View
Memory Tracing