I present a tutorial overview demonstrating the key technique used by GPUVerify, a static verification tool for graphics processing unit (GPU) kernels. The technique is a method for translating a massively parallel GPU kernel into a sequential program such that correctness of the sequential program implies data race-freedom of the parallel kernel.

September 16, 2014 by hgpu

This tutorial is written for beginners as an introduction to basic wave propagation using nite dierence method, from acoustic and elastic wave modeling, to reverse time migration and full waveform inversion. Most of the theoretical delineations summarized in this tutorial have been implemented in Madagascar with Matlab, C and CUDA programming, which will benet readers’ […]

June 8, 2014 by hgpu

This tutorial will demonstrate how to use features in NAMD and VMD to harness the computational power of graphics processing units (GPUs) to accelerate simulation, visualization and analysis. You will learn how to drastically improve the efficiency of your computational work, achieving large speedups over CPU only methods. You will explore ways of investigating large […]

May 24, 2014 by hgpu

This book is a practical guide to the OpenGL Shading Language, which contains several real-world examples that will allow you to grasp the core concepts easily and the use of the GLSL for graphics rendering applications. If you want upgrade your skills, or are new to shader programming and want to learn about graphic programming, […]

January 5, 2014 by hgpu

This book follows an example-driven, simplified, and practical approach to using OpenCL for general purpose GPU programming. If you are a beginner in parallel programming and would like to quickly accelerate your algorithms using OpenCL, this book is perfect for you! You will find the diverse topics and case studies in this book interesting and […]

December 27, 2013 by hgpu

Many of today’s complex scientific applications now require a vast amount of computational power. General purpose graphics processing units (GPGPUs) enable researchers in a variety of fields to benefit from the computational power of all the cores available inside graphics cards. Understand the Benefits of Using GPUs for Many Scientific Applications: Designing Scientific Applications on […]

November 13, 2013 by hgpu

Computer Graphics: From Pixels to Programmable Graphics Hardware explores all major areas of modern computer graphics, starting from basic mathematics and algorithms and concluding with OpenGL and real-time graphics. It gives students a firm foundation in today’s high-performance graphics. UP-TO-DATE TECHNIQUES, ALGORITHMS, AND API: The book includes mathematical background on vectors and matrices as well […]

November 6, 2013 by hgpu

Welcome to the OpenCL Parallel Programming Development Cookbook! Whew, that was more than a mouthful. This book was written by a developer, that’s me, and for a developer, hopefully that’s you. This book will look familiar to some and distinct to others. It is a result of my experience with OpenCL, but more importantly in […]

September 27, 2013 by hgpu

OpenCL (Open Computing Language) is an open standard for cross-platform, programming of modern highly-parallel processor architectures. Introduced withOS X v10.6,OpenCL consists of a C99-based programming language designed for parallelism, a powerful scheduling API, and a flexible runtime that executes kernels on the CPU or GPU. OpenCL lets your application harness the computing power of these […]

August 24, 2013 by hgpu

In many cases there is still a large gap between the performance of current optimization technology and the requirements of real world applications. As in the past, performance will improve through a combination of more powerful solution methods and a general performance increase of computers. These factors are not independent. Due to physical limits, hardware […]

August 12, 2013 by hgpu

In many cases there is still a large gap between the performance of current optimization technology and the requirements of real world applications. As in the past, performance will improve through a combination of more powerful solution methods and a general performance increase of computers. These factors are not independent. Due to physical limits, hardware […]

August 12, 2013 by hgpu

Matrix multiplication is a commonly-used mathematical operation that has many practical applications. It is used to solve a number of problems in a wide variety of fields including science, engineering, and computer science. Given two matrices, A and B, and a resultant matrix C. The concept of density is used to describe the number of […]

May 9, 2013 by hgpu