Skip navigation links
Tools
SDKs
Libraries
Samples & Demos
Docs
Zones
Community
Support
Tools and Libraries
Skip Navigation LinksHome > Zones > OpenCL™ Zone > Tools and Libraries
OpenCL Zone

A variety of tools and libraries exists today for developers interested into writing OpenCL™ applications.

Software Development Kit

For the majority of OpenCL™ developers, all they will need is:

This contains all of the development tools you need to build an OpenCL™ program and analyze performance bottlenecks.

The AMD APP SDK v2.6 also includes almost 60 OpenCL™ sample applications to show you how to implement various popular algorithms in OpenCL™. These, and some additional samples can also be downloaded here

Aparapi – for Java developers

Aparapi is an API for expressing data parallel workloads in Java and running those workloads on a compatible GPU if possible. Using the AMD APP SDK with a compatible GPU, if your Java parallel code avoids any constructs that would make it untranslatable to OpenCL™, Aparapi will translate your workload to OpenCL™ and will run your workload on the GPU.

Performance Analysis Tools

AMD APP Profiler

Included with the AMD APP SDK v2 release, but also available as a separate download, is the AMD APP Profiler. The AMD APP Profiler is a Microsoft® Visual Studio® integrated runtime profiler that gathers performance data from the GPU as your application runs. This information can then be used by developers to discover where the bottlenecks are in their OpenCL™ application and find ways to optimize their application’s performance.

Click to view full-size image.

Updates to the AMD APP Profiler (already packaged with the AMD APP SDK v2) are available from:

AMD APP KernelAnalyzer

Also available for download is the AMD APP KernelAnalyzer (SKA for short) which is a tool for statically analyzing the performance of OpenCL™ C kernels. SKA will compile down your OpenCL™ C kernels into the actual instructions used to program the GPU. It then performs a static analysis of the instruction stream and is able to report back to the developer a variety of information, including register usage, ALU utilization and memory contention, all without having to run the application on actual hardware.

Click to view full-size image.

The AMD APP KernelAnalyzer is currently available as a separate download from:

AMD CodeAnalyst Performance Analyzer with OpenCL Support

AMD CodeAnalyst for Windows now has OpenCL support. Collect and analyze the OpenCL™ API execution performance from both CPUs and GPUs. Use the detailed lists to find calls of interest and use the timeline to understand the entire execution or drill down to the smallest API call details. Learn more on the AMD CodeAnalyst product page.

AMD CodeAnalyst

Debugging Tools

The recommended approach for developing your OpenCL™ application is to start off by targeting an x86 CPU. By debugging functionality initially on the CPU, you can take advantage of the flexible debugging facilities available on the CPU. Once your application is working properly under OpenCL™, you can easily retarget your application to take advantage of the available GPUs in your system.

gDEBugger

gDEBugger is an OpenCL™ and OpenGL debugger and memory analyzer integrated into Microsoft® Visual Studio®. gDEBugger offers real-time OpenCL kernel debugging, which allows developers to step into the kernel execution directly from the API call that issues it, debug inside the kernel, view all variable values across the different work groups and work items - and all this on a single computer with a single GPU.

AMD gDEBugger

Download now!