Newsletter

Newsletter
 

GPU Whitepaper Library

 


        

ArrayFire Whitepaper:
High-level GPU Computing in C, C++, Fortran, and Python

Login to Download

ArrayFire is a software platform developed at AccelerEyes that allows users and programmers to rapidly develop data-parallel programs in C, C++, Fortran, and Python. ArrayFire provides a simple, high-level matrix abstraction over low-level GPU APIs such as CUDA, OpenCL, and OpenGL along with thousands of GPU-tuned functions to allow users in science, engineering, and finance to take full advantage of GPU hardware. The combination of an easy-to-use array interface, automatic memory management, on-the-fly compilation, parallel GPU FOR-loop construction, and interactive hardware-accelerated graphics library, make ArrayFire well suited to rapid prototyping of data-parallel algorithms and building end-to-end applications.





        

Jacket Whitepaper:
High-level GPU Computing with Matlab®

Login to Download

The emergence of new software tools and cost-effective GPU-based computers are ushering in a new era for scientists, engineers and analysts working on technical problems. The platform, Jacket, described in this paper offers a more productive platform for non-computer scientists looking for ways to leverage the computational capabilities of GPUs. Jacket utilizes the M-language, and the flexibility of MATLAB from The MathWorks, to provide much larger population of users the benefit of GPU technology. Jacket abstracts all of the complexity of GPU and CUDA programming from the user and addresses the underlying challenges associated with programming GPUs. The Jacket architecture takes into account all of the possible roadblocks associated with high performance GPU applications so that the technical computing user can focus on science, engineering or analytics.





        

GPGPU Computing Horizons:
Developing and Deploying for Microsoft Windows

Login to Download

All GPGPUs currently available provide a rich multicore environment that enables highly scalable parallel processing. This hardware requires both development tools to effectively target the GPGPU modules with appropriate instructions and operating system software to manage the programs' runtimes.Traditionally, though, developing software for parallel environments is perceived as difficult. In a recent survey by Market Strategies International (MSI) of 900 programmers with expertise in parallel technologies, developers indicated that the most difficult tasks when developing parallel applications are debugging (37%), performance tuning (33%) and designing parallel algorithms (28%).