NVIDIA has released what it says is the first public OpenCL conformant GPU drivers for Windows and Linux. In addition to the drivers, NVIDIA has released a performance profiling tool and OpenCL Best Practices Guide.
This public release is fully conformant with the OpenCL v1.0 specification and supports the OpenCL features of the specification that, while optional for other vendors, provides significant performance benefits across many image processing disciplines such as medical imaging, video transcoding applications, machine vision and facial detection.
NVIDIA's OpenCL drivers and hardware performance signals are designed into NVIDIA GPUs. The OpenCL Visual Profiler provides developers with insight into performance bottlenecks and opportunities for optimization. Key features include:
- Profiling of actual hardware signals, kernel efficiency, and instruction issue rate
- Timing of memory copies between system memory and GPU dedicated memory
- Customizable graphs to help developers focus in on problem areas
- Basic auto-analysis to reveal warp serialization problems
- Import/export to CSV for custom analysis
- Support for all CUDA enabled GPUs
NVIDIA has also prepared the OpenCL Best Practices Guide designed to help OpenCL developers programming for the CUDA architecture implement high-performance parallel algorithms and understand best practices for GPU Computing. Topics covered include: GPU Computing with OpenCL, Performance Metrics, Memory Optimizations, Instruction Optimizations, and Performance Optimization Strategies, among others.