You are here: Home » Archives for OpenCL
July 8th, 2010
Graphic Remedy is proud to announce the release of gDEBugger Version 5.6 for Windows, Linux, Mac OS X, iPhone and iPad. This version introduces iPhone and iPad on-device debugging and profiling abilities, letting developers optimize their apps in real-time on actual iPhone and iPad hardware, while viewing invaluable inside information such as the device’s GPU, CPU, graphics driver and operating system performance counters.
gDEBugger is an OpenGL, OpenGL ES and OpenCL debugger and profiler that traces application activity on top of the OpenGL API, and lets programmers see what is happening within the graphics system implementation to find bugs and optimize OpenGL application performance. gDEBugger runs on Windows, Mac OS X, iPhone and Linux operating systems.
Posted in Business, Developer Resources | Tags: gDEBugger, OpenCL, OpenGL | Write a comment
June 18th, 2010
The OpenCL
1.1 specification, including header files and documentation, has been released. It includes significant new functionality:
- Host-thread safety, enabling OpenCL commands to be enqueued from multiple host threads
- Sub-buffer objects to distribute regions of a buffer across multiple OpenCL devices
- User events to enable enqueued OpenCL commands to wait on external events
- Event callbacks that can be used to enqueue new OpenCL commands based on event state changes in a non-blocking manner
- 3-component vector data types
- Global work-offset which enable kernels to operate on different portions of the NDRange
- Memory object destructor callback
- Read, write and copy a 1D, 2D or 3D rectangular region of a buffer object
- Mirrored repeat addressing mode and additional image formats
- New OpenCL C built-in functions such as integer clamp, shuffle and asynchronous strided copies
- Improved OpenGL interoperability through efficient sharing of images and buffers by linking OpenCL event objects to OpenGL fence sync objects
- Optional features in OpenCL 1.0 have been bought into core OpenCL 1.1 including: writes to a pointer of bytes or shorts from a kernel, and conversion of atomics to 32-bit integers in local or global memory
Posted in Developer Resources | Tags: OpenCL | Write a comment
June 15th, 2010
The Vienna Computing Library (ViennaCL) is a scientific computing library written in C++ and based on OpenCL. It allows simple, high-level access to the vast computing resources available on parallel architectures such as GPUs and is primarily focused on common linear algebra operations (BLAS level 1 and 2) and the solution of large systems of equations by means of iterative methods. The following iterative solvers are implemented:
- Conjugate Gradient (CG)
- Stabilized BiConjugate Gradient (BiCGStab)
- Generalized Minimum Residual (GMRES)
Read the rest of this entry »
Posted in Developer Resources | Tags: Linear Algebra, Numerical Algorithms, OpenCL | Write a comment
June 8th, 2010
GPU Systems has added an OpenCL back end implementation to its Libra Technology compiler and runtime architecture. Libra version 1.2 now supports x86/x64, OpenGL/OpenCL and CUDA compute back ends. The OpenCL back end generates dynamic code specifically for AMD GPUs. Also, the CUDA back end generator has been enhanced with Fermi capabilities and this new release brings full BLAS 1,2,3 matrix, vector, dense, sparse, complex, single/double standard math library functionality and access through a standard C programming interface & library. The high-level approach of the Libra API enables developers to easily extend existing high-level functionality from their favorite programming language.
Read the rest of this entry »
Posted in Business, Developer Resources | Tags: AMD, APIs, Heterogeneneous Computing, NVIDIA CUDA, OpenCL, OpenGL | Write a comment
May 30th, 2010
AMD is offering an introductory tutorial to OpenCL™ that will be held alongside the 2010 Symposium on Application Accelerators in High Performance Computing (SAAHPC’10). The tutorial is a “programmer’s introduction” which covers the ideas behind OpenCL™ and their translation to source code. Read the rest of this entry »
Posted in Developer Resources, Events | Tags: AMD, ATI Stream, OpenCL, Tutorials & Courses | 1 Comment
May 20th, 2010
Advanced Micro Devices (AMD) recently released ATI Stream Profiler version 1.3. ATI Stream Profiler is a Microsoft® Visual Studio® integrated runtime profiler that gathers performance data from the GPU as your OpenCL™ 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.
Features of the tool include:
- Measure the execution time of an OpenCL kernel
- Query the hardware performance counters on ATI Radeon graphics cards
- Display the memory traffic from and to GPU
- Compare multiple runs (sessions) of the same or different programs
- Store the profile data for each run in a csv file
- Display the IL and ISA (hardware disassembly) code of the OpenCL kernel
Posted in Developer Resources | Tags: AMD, OpenCL, Profiling | Write a comment
May 4th, 2010
The Scalable Heterogeneous Computing Benchmark Suite (SHOC) is a collection of benchmark programs testing the performance and stability of systems using computing devices with non-traditional architectures for general-purpose computing, and the software used to program them. Its initial focus is on systems containing Graphics Processing Units (GPUs) and multi-core processors, and on the OpenCL programming standard. It can be used on clusters as well as individual hosts.
(Danalis, A., Marin, G., McCurdy, C., Meredith, J., Roth, P., Spafford, K., Tipparaju, V., Vetter, J. (2010). The Scalable HeterOgeneous Computing (SHOC) Benchmark Suite.Proceedings of the Third Workshop on General-Purpose Computation on Graphics Processors (GPGPU 2010). PDF. Mar 2010.)
Posted in Developer Resources, Research | Tags: Benchmarks, NVIDIA CUDA, OpenCL, Papers | 2 Comments
April 25th, 2010
GeoSpin has released the first version of CLyther for beta testing. Please visit the CLyther SourceForge website for more information. CLyther enables developers to seamlessly write GPGPU code completely in python with no additional syntax. CLyther’s core driver contains a python compiler to convert Python functions and types to OpenCL during runtime.
CLyther currently only supports a subset of the Python language definition but adds many new features to OpenCL such as:
- OpenCL interface similar to PyOpenCL
- Dynamic compilation of OpenCL code at runtime
- Fast prototyping of OpenCL code
- Create OpenCL code using the Python language definition
- Passing functions as arguments to OpenCL kernels
- Pure Python emulation mode of kernel functions
Read the rest of this entry »
Posted in Developer Resources | Tags: Open Source, OpenCL, Programming Languages, Python | Write a comment
April 5th, 2010
Geist Software Labs has released the first version of OpenCL Studio for beta testing. OpenCL Studio combines OpenCL and OpenGL into a single integrated development environment that allows you to visualize OpenCL computation using powerful 3D rendering techniques. The editor hides much of the complexity of the underlying APIs while still providing flexibility via the Lua scripting language. Integrated source code editors and debugging capabilities for OpenCL, GLSL, and Lua, as well as a toolbox of 2D user interface widgets provide a framework for a wide range of parallel programming solutions.
Posted in Business, Developer Resources | Tags: OpenCL, Programming Environments, Tools | 1 Comment
March 23rd, 2010
Abstract:
We present our effort in developing an open-source GPU (graphics processing units) code library for the MATLAB Image Processing Toolbox (IPT). We ported a dozen of representative functions from IPT and based on their inherent characteristics, we grouped these functions into four categories: data independent, data sharing, algorithm dependent and data dependent. For each category, we present a detailed case study, which reveals interesting insights on how to efficiently optimize the code for GPUs and highlight performance-critical hardware features, some of which have not been well explored in existing literature. Our results show drastic speedups for the functions in the data-independent or data-sharing category by leveraging hardware support judiciously; and moderate speedups for those in the algorithm-dependent category by careful algorithm selection and parallelization. For the functions in the last category, fine-grain synchronization and data-dependency requirements are the main obstacles to an efficient implementation on GPUs.
(J. Kong, et. al., “Accelerating MATLAB Image Processing Toolbox Functions on GPUs”, Proceedings of the Third Workshop on General-Purpose Computation on Graphics Processing Units (GPGPU-3), Pittsburgh, PA. Apr. 2010. Source code is available here.)
Posted in Developer Resources, Research | Tags: ATI Stream, Image Processing, MATLAB, NVIDIA CUDA, OpenCL, Papers | Write a comment