Releases: intel/opencl-intercept-layer
v3.0.5
This is an OpenCL 3.0 release update, in sync with the OpenCL specifications v3.0.17.
Noteworthy Changes
- added enum tracing for all known extensions
- updated to the latest provisional command buffer APIs
- improved tracing for clCommandCopyImageToBufferKHR
- fixed a crash in clSetKernelArgSVMPointer in some cases
- fixed chrome tracing to generate valid json files
- fixed MDAPI event profiling so errors are only logged for kernel events
- added missing mutex locks when adding chrome tracing metadata
- added InjectBuffers and InjectImages control to inject buffers and images
- added ExitOnEnqueueCount control to force an application to exit after a specified number of enqueues
- added UniqueFiles control to find unique log and report file names
Supported Operating Systems
- Windows
- Linux (tested Ubuntu 22.04)
- OSX
- Android (experimental)
- FreeBSD (experimental)
Full Changelog: v3.0.4...v3.0.5
v3.0.4
This is an OpenCL 3.0 release update.
Noteworthy Changes
- added enum and API tracing for many new extensions, including all known KHR and EXT extensions
- added many performance improvements to reduce overhead, especially with event profiling and chrome tracing
- added many improvements to tracing and logging
- added kernel capture and replay support for easier debugging
- added the ability to dump modified program source or options for inspection
- added support for chrome tracing flow events
- added support for chrome tracing using the Perfetto UI
- added an override for the CL_DEVICE_IL_VERSION query
- added support for querying kernel register counts
- added the ability to dump buffer and image hashes
- added the ability to demangle the names of C++ kernels
- added the ability to track transfer sizes
- added the ability to flush files after every write
- added the ability to generate report data at regular intervals
- added many new cliloader options, including an option to dump available MDAPI metrics
- added a check to verify proper permissions for MDAPI counters
- added the ability to set the MDAPI time-based sampling period and buffer size
Supported Operating Systems
- Windows
- Linux (tested Ubuntu 22.04)
- OSX
- Android (experimental)
- FreeBSD (experimental)
Supported OpenCL Versions
- Up to OpenCL 3.0
New Contributors
- @trbauer made their first contribution in #270
- @isanghao made their first contribution in #293
- @Novermars made their first contribution in #294
- @ivvenevt made their first contribution in #330
- @karolherbst made their first contribution in #348
Full Changelog: v3.0.3...v3.0.4
v3.0.3
This is an OpenCL 3.0 release update.
Noteworthy changes in this release are:
- enum and API tracing for many new extensions, including all known KHR and EXT extensions
- many updates and improvements for chrome tracing, including better alignment of the host and device timelines
- added scripts to combine chrome traces from multiple processes
- added queue info logging for queue family and queue index
- added a filename suffix to differentiate between compile options and link options
- added support for the KHR suggested work size extension for DevicePerformanceTimingSuggestedLWSTracing
- added more cliloader options, including an option to print all controls to the console for easier searching
- added host and device timing tags to differentiate different types of calls to the same APIs (e.g. blocking vs. non-blocking)
- added tracking and reporting for various tool overheads
- many bugfixes and performance enhancements
Supported Operating Systems:
- Windows
- Linux (tested Ubuntu 20.04)
- OSX
- Android (experimental)
Supported OpenCL Versions:
- Up to OpenCL 3.0
v3.0.2
This is an OpenCL 3.0 release update.
Noteworthy additions in this release are:
- fixed call logging when tracing very large size_t values
- many ChromeTracing improvements
- enum and API tracing for many new extensions
- preliminary suggested local work size query support
- a control to automatically partition devices
- a control to relax allocation limits on some devices
- improved buffer dumping to work with USM allocations
- added an emulated USM blocking free function
Supported Operating Systems:
- Windows
- Linux (tested Ubuntu 18.04)
- OSX
- Android (experimental)
Supported OpenCL Versions:
- Up to OpenCL 3.0
v3.0.0 Release
This is the first official release for OpenCL 3.0!
Noteworthy additions in this release are:
- full support for tracing all OpenCL 3.0 APIs.
- tracing for more vendor-specific extensions.
- proper handling of extension APIs from multiple platforms.
- a control to disable event profiling for performance analysis.
- min and max enqueue counter controls for DevicePerformanceTiming.
- an override control for CL_DRIVER_VERSION.
- emulated support for Unified Shared Memory (USM) via Shared Virtual Memory (SVM).
- better subgroup size tracking for kernel info.
- all non-default control values are logged for easier reproducibility.
- bug fixes and performance improvements.
Supported Operating Systems:
- Windows
- Linux (tested Ubuntu 18.04)
- OSX
- Android (experimental)
Supported OpenCL Versions:
- Up to OpenCL 3.0
v2.2.2 Release
It has been a very long time since the last Intercept Layer for OpenCL Applications release!
Noteworthy additions in this release are:
- the
cliloader
utility to simplify installation and common usage. - fixes for compilation on ARM Linux.
- fixes for Android builds.
- the ability to dump and disassemble ISA kernel binaries.
- the ability to collect MDAPI performance counters for Intel GPU devices.
- the ability to set priority hints and throttle hints for command queues.
- the ability to append a process ID to log directories for simpler scripting.
- kernel name mapping for very long kernel names.
- checks to ensure objects are properly release and valid USM usage.
- kernel info logging.
- more options for Chrome tracing.
- more call logging.
Supported Operating Systems:
- Windows
- Linux (tested Ubuntu 16.04 and 18.04)
- OSX
- Android (experimental)
Supported OpenCL Versions:
- Up to OpenCL 2.2
First CLIProf Release
This is the first release that includes the CLIProf loader utility to simplify basic usage of the Intercept Layer for OpenCL Applications. Additionally, this release supports OSX.
Supported Operating Systems:
- Windows
- Linux (tested Ubuntu 14.04 and 16.04)
- OSX
- Android (experimental)
Supported OpenCL Versions:
- Up to OpenCL 2.2
First Public Release
This is the first public release.
Supported Operating Systems:
- Windows
- Linux
- OSX (experimental)
- Android (experimental)
Supported OpenCL Versions:
- Up to OpenCL 2.2