Difference between revisions of "Rodinia:Accelerating Compute-Intensive Applications with Accelerators"

From Rodinia
Jump to: navigation, search
(Application Download)
(The Rodinia Benchmark Suite)
Line 12: Line 12:
 
Rodinia is designed for heterogeneous computing infrastructures, and, <br/>
 
Rodinia is designed for heterogeneous computing infrastructures, and, <br/>
 
using OpenMP and CUDA, targets both GPUs and multicore CPUs. <br/>  
 
using OpenMP and CUDA, targets both GPUs and multicore CPUs. <br/>  
The suite currently consists of 6 applications and 7 kernels. They have <br/>
+
They have been parallelized with OpenMP for multicore CPUs and with <br/>
been parallelized with OpenMP for multicore CPUs and with CUDA for <br/>  
+
CUDA for GPUs. We have been preparing for the OpenCL release.
GPUs. We have been preparing for the OpenCL release.
+
  
 
Current Rodinia applications:
 
Current Rodinia applications:

Revision as of 15:37, 13 May 2011

A vision of heterogeneous computer systems that incorporate diverse
accelerators and automatically select the best computational unit for
a particular task is widely shared amongresearchers and many industry
analysts; however, there are no agreed-upon benchmarks to support the
research needed in the development of such a platform. There are many
suites for parallel computing on general-purpose CPU architectures,
but accelerators fall into a gap that is not covered by current benchmark
suites or benchmark development.

The Rodinia Benchmark Suite

Rodinia is designed for heterogeneous computing infrastructures, and,
using OpenMP and CUDA, targets both GPUs and multicore CPUs.
They have been parallelized with OpenMP for multicore CPUs and with
CUDA for GPUs. We have been preparing for the OpenCL release.

Current Rodinia applications:

ApplicationsDwarvesDomainsParallel ModelIncre. Ver.
Leukocyte*Structured GridMedical ImagingCUDA, OMP
Heart Wall*Structured GridMedical ImagingCUDA, OMP
MUMmerGPUGraph TraversalBioinformaticsCUDA, OMP
CFD SolverUnstructured GridFluid DynamicsCUDA, OMP
LU Decomposition* Dense Linear AlgebraLinear AlgebraCUDA, OMP
HotSpotStructured GridPhysics SimulationCUDA, OMP, OCL
Back PropagationUnstructured GridPattern RecognitionCUDA, OMP
Needleman-WunschDynamic ProgrammingBioinformaticsCUDA, OMP, OCL
KmeansDense Linear AlgebraData MiningCUDA, OMP, OCL
Breadth-First Search1Graph TraversalGraph AlgorithmsCUDA, OMP, OCL
SRADStructured GridImage ProcessingCUDA, OMP
StreamclusterDense Linear AlgebraData MiningCUDA, OMP
Particle FilterStructured GridMedical ImagingCUDA, OMP

Other applications (some with CUDA only):

ApplicationsDwarvesDomainsParallel Model
SQL DatabaseMap ReduceRelational DatabaseCUDA
Nearest NeighborDense Linear AlgebraData MiningCUDA, OMP, OCL
Gaussian EliminationDense Linear AlgebraLinear AlgebraCUDA
CellStructured GridCellular AutomationCUDA
PathFinderDynamic ProgrammingGrid TraversalCUDA
Hybrid SortSortingSorting AlgorithmsCUDA
Myocyte*Structured GridBiological SimulationCUDA, OMP

New Rodinia applications coming soon:

ApplicationsDwarvesDomainsParallel Model
LavaMD2Structured GridMolecular DynamicsCUDA, OMP

The applications(*) are relatively hard for compilers to analyze and
generate efficient GPU codes.

Application Download

Please read the license file.

Also, if your use of Rodinia results in a publication, please cite:

[1] S. Che, M. Boyer, J. Meng, D. Tarjan, J. W. Sheaffer, S.-H. Lee, and K. Skadron.
Rodinia: A Benchmark Suite for Heterogeneous Computing. In Proceedings of the IEEE
International Symposium on Workload Characterization (IISWC), pp. 44-54, Oct. 2009.

[2] S. Che, J. W. Sheaffer, M. Boyer, L. G. Szafaryn, L. Wang, and K. Skadron.
A Characterization of the Rodinia Benchmark Suite with Comparison to Contemporary
CMP Workloads. In Proceedings of the IEEE International Symposium on Workload
Characterization, Dec. 2010.

1Collaboration with Delft University of Technology on the OpenCL BFS.

2Collaboration with Lawrence Livermore National Laboratory.

This work is supported by NSF grant nos. IIS-0612049, CNS-0916908 and CNS-0615277, a grant from the SRC under task no. 1607, and grants from AMD, NEC labs, and NVIDIA Research.