Implementation of the Lattice Boltzmann Method on Heterogeneous Hardware and Platforms using OpenCL

The Lattice Boltzmann method (LBM) has become an alternative method for computational fluid dynamics with a wide range of applications. Besides its numerical stability and accuracy, one of the major advantages of LBM is its relatively easy parallelization and, hence, it is especially well fitted t...

Full description

Bibliographic Details
Main Authors: TEKIC, P. M., RADJENOVIC, J. B., RACKOVIC, M.
Format: Article
Language:English
Published: Stefan cel Mare University of Suceava 2012-02-01
Series:Advances in Electrical and Computer Engineering
Subjects:
Online Access:http://dx.doi.org/10.4316/AECE.2012.01009
_version_ 1811262548927840256
author TEKIC, P. M.
RADJENOVIC, J. B.
RACKOVIC, M.
author_facet TEKIC, P. M.
RADJENOVIC, J. B.
RACKOVIC, M.
author_sort TEKIC, P. M.
collection DOAJ
description The Lattice Boltzmann method (LBM) has become an alternative method for computational fluid dynamics with a wide range of applications. Besides its numerical stability and accuracy, one of the major advantages of LBM is its relatively easy parallelization and, hence, it is especially well fitted to many-core hardware as graphics processing units (GPU). The majority of work concerning LBM implementation on GPU's has used the CUDA programming model, supported exclusively by NVIDIA. Recently, the open standard for parallel programming of heterogeneous systems (OpenCL) has been introduced. OpenCL standard matures and is supported on processors from most vendors. In this paper, we make use of the OpenCL framework for the lattice Boltzmann method simulation, using hardware accelerators - AMD ATI Radeon GPU, AMD Dual-Core CPU and NVIDIA GeForce GPU's. Application has been developed using a combination of Java and OpenCL programming languages. Java bindings for OpenCL have been utilized. This approach offers the benefits of hardware and operating system independence, as well as speeding up of lattice Boltzmann algorithm. It has been showed that the developed lattice Boltzmann source code can be executed without modification on all of the used hardware accelerators. Performance results have been presented and compared for the hardware accelerators that have been utilized.
first_indexed 2024-04-12T19:27:40Z
format Article
id doaj.art-9734edc44d1a4e12a2203d3a9e0ae320
institution Directory Open Access Journal
issn 1582-7445
1844-7600
language English
last_indexed 2024-04-12T19:27:40Z
publishDate 2012-02-01
publisher Stefan cel Mare University of Suceava
record_format Article
series Advances in Electrical and Computer Engineering
spelling doaj.art-9734edc44d1a4e12a2203d3a9e0ae3202022-12-22T03:19:26ZengStefan cel Mare University of SuceavaAdvances in Electrical and Computer Engineering1582-74451844-76002012-02-01121515610.4316/AECE.2012.01009Implementation of the Lattice Boltzmann Method on Heterogeneous Hardware and Platforms using OpenCLTEKIC, P. M.RADJENOVIC, J. B.RACKOVIC, M.The Lattice Boltzmann method (LBM) has become an alternative method for computational fluid dynamics with a wide range of applications. Besides its numerical stability and accuracy, one of the major advantages of LBM is its relatively easy parallelization and, hence, it is especially well fitted to many-core hardware as graphics processing units (GPU). The majority of work concerning LBM implementation on GPU's has used the CUDA programming model, supported exclusively by NVIDIA. Recently, the open standard for parallel programming of heterogeneous systems (OpenCL) has been introduced. OpenCL standard matures and is supported on processors from most vendors. In this paper, we make use of the OpenCL framework for the lattice Boltzmann method simulation, using hardware accelerators - AMD ATI Radeon GPU, AMD Dual-Core CPU and NVIDIA GeForce GPU's. Application has been developed using a combination of Java and OpenCL programming languages. Java bindings for OpenCL have been utilized. This approach offers the benefits of hardware and operating system independence, as well as speeding up of lattice Boltzmann algorithm. It has been showed that the developed lattice Boltzmann source code can be executed without modification on all of the used hardware accelerators. Performance results have been presented and compared for the hardware accelerators that have been utilized.http://dx.doi.org/10.4316/AECE.2012.01009GPUJavalattice Boltzmann methodmany-coreOpenC
spellingShingle TEKIC, P. M.
RADJENOVIC, J. B.
RACKOVIC, M.
Implementation of the Lattice Boltzmann Method on Heterogeneous Hardware and Platforms using OpenCL
Advances in Electrical and Computer Engineering
GPU
Java
lattice Boltzmann method
many-core
OpenC
title Implementation of the Lattice Boltzmann Method on Heterogeneous Hardware and Platforms using OpenCL
title_full Implementation of the Lattice Boltzmann Method on Heterogeneous Hardware and Platforms using OpenCL
title_fullStr Implementation of the Lattice Boltzmann Method on Heterogeneous Hardware and Platforms using OpenCL
title_full_unstemmed Implementation of the Lattice Boltzmann Method on Heterogeneous Hardware and Platforms using OpenCL
title_short Implementation of the Lattice Boltzmann Method on Heterogeneous Hardware and Platforms using OpenCL
title_sort implementation of the lattice boltzmann method on heterogeneous hardware and platforms using opencl
topic GPU
Java
lattice Boltzmann method
many-core
OpenC
url http://dx.doi.org/10.4316/AECE.2012.01009
work_keys_str_mv AT tekicpm implementationofthelatticeboltzmannmethodonheterogeneoushardwareandplatformsusingopencl
AT radjenovicjb implementationofthelatticeboltzmannmethodonheterogeneoushardwareandplatformsusingopencl
AT rackovicm implementationofthelatticeboltzmannmethodonheterogeneoushardwareandplatformsusingopencl