Posts
Jul, 3
Using OpenCL: Programming Massively Parallel Computers
In 2011 many computer users were exploring the opportunities and the benefits of the massive parallelism offered by heterogeneous computing. In 2000 the Khronos Group, a not-for-profit industry consortium, was founded to create standard open APIs for parallel computing, graphics and dynamic media. Among them has been OpenCL, an open system for programming heterogeneous computers […]
Jun, 27
Solving Molecular Distance Geometry Problems in OpenCL
We focus on the following computational chemistry problem: Given a subset of the exact distances between atoms, reconstruct the three-dimensional position of each atom in the given molecule. The distance matrix is generally sparse. This problem is both important and challenging. Our contribution is a novel combination of two known techniques (parallel breadth-first search and […]
Jun, 27
OpenCL Floating Point Software on Heterogeneous Architectures – Portable or Not?
OpenCL is an emerging platform for parallel computing that promises portability of applications across different architectures. This promise is seriously undermined, however, by the frequent use of floating-point arithmetic in scientific applications. Floating-point computations can yield vastly different results on different architectures – even IEEE 754-compliant ones -, potentially causing changes in control flow and […]
Jun, 23
Parallel Neural Network Training with OpenCL
This paper describes the parallelization of neural network training algorithms on heterogeneous architectures with graphical processing units (GPU). The algorithms used for training are particle swarm optimization and backpropagation. Parallel versions of both methods are presented and speedup results are given as compared to the sequential version. The efficiency of parallel training is investigated in […]
Jun, 20
Parallel Implementation of the Wu-Manber Algorithm Using the OpenCL Framework
One of the most significant issues of the computational biology is the multiple pattern matching for locating nucleotides and amino acid sequence patterns into biological databases. Sequential implementations for these processes have become inadequate, due to an increasing demand for more computational power. Graphic cards offer a high parallelism computational power improving the performance of […]
Jun, 18
OpenCL for programming shared memory multicore CPUs
Shared memory multicore processor technology is pervasive in mainstream computing. This new architecture challenges programmers to write code that scales over these many cores to exploit the full computational power of these machines. OpenMP and Intel Threading Building Blocks (TBB) are two of the popular frameworks used to program these architectures. Recently, OpenCL has been […]
Jun, 13
Using Fermi architecture knowledge to speed up CUDA and OpenCL programs
The NVIDIA graphics processing units (GPUs) are playing an important role as general purpose programming devices. The implementation of parallel codes to exploit the GPU hardware architecture is a task for experienced programmers. The threadblock size and shape choice is one of the most important user decisions when a parallel problem is coded. The threadblock […]
Jun, 5
Shortening design time through multiplatform simulations with a portable OpenCL golden-model: the LDPC decoder case
Hardware designers and engineers typically need to explore a multi-parametric design space in order to find the best configuration for their designs using simulations that can take weeks to months to complete. For example, designers of special purpose chips need to explore parameters such as the optimal bit width and data representation. This is the […]
Jun, 4
High Accuracy Gravitational Waveforms from Black Hole Binary Inspirals Using OpenCL
There is a strong need for high-accuracy and efficient modeling of extreme-mass-ratio binary black hole systems because these are strong sources of gravitational waves that would be detected by future observatories. In this article, we present sample results from our Teukolsky EMRI code: a time-domain Teukolsky equation solver (a linear, hyperbolic, partial differential equation solver […]
May, 30
clSpMV: A Cross-Platform OpenCL SpMV Framework on GPUs
Sparse matrix vector multiplication (SpMV) kernel is a key computation in linear algebra. Most iterative methods are composed of SpMV operations with BLAS1 updates. Therefore, researchers make extensive efforts to optimize the SpMV kernel in sparse linear algebra. With the appearance of OpenCL, a programming language that standardizes parallel programming across a wide variety of […]
May, 29
Using OpenCL to Calculate a Pressure Field
This report details the project in converting a CUDA program into an OpenCL program that would be adaptable to many platforms. Originally the CUDA program could only be ran on a NVIDA graphics card, which did not make the program very applicable for the user. Throughout this project the above authors learned how to program […]
May, 23
Medical Image Registration using OpenCL
Medical image registration is a computational task involving the spatial realignment of multiple sets of images of the same or different modalities. A novel method of using the Open Computing Language (OpenCL) framework to accelerate affine image registration across multiple processing architectures is presented. The use of this method on graphics processors results in a […]