# Rodinia:Accelerating Compute-Intensive Applications with Accelerators

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.

The suite currently consists of 6 applications and 7 kernels. 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:

Applications | Dwarves | Domains | Parallel Model | Incre. Ver. |
---|---|---|---|---|

Leukocyte* | Structured Grid | Medical Imaging | CUDA, OMP | SOON |

Heart Wall* | Structured Grid | Medical Imaging | CUDA, OMP | |

MUMmerGPU | Graph Traversal | Bioinformatics | CUDA, OMP | |

CFD Solver | Unstructured Grid | Fluid Dynamics | CUDA, OMP | |

LU Decomposition* | Dense Linear Algebra | Linear Algebra | CUDA, OMP | Y |

HotSpot | Structured Grid | Physics Simulation | CUDA, OMP | |

Back Propagation | Unstructured Grid | Pattern Recognition | CUDA, OMP | |

Needleman-Wunsch | Dynamic Programming | Bioinformatics | CUDA, OMP | SOON |

Kmeans | Dense Linear Algebra | Data Mining | CUDA, OMP | |

Breadth-First Search | Graph Traversal | Graph Algorithms | CUDA, OMP | |

SRAD | Structured Grid | Image Processing | CUDA, OMP | Y |

Streamcluster | Dense Linear Algebra | Data Mining | CUDA, OMP | |

Particle Filter | Structured Grid | Medical Imaging | CUDA, OMP |

Other applications (some with CUDA only):

Applications | Dwarves | Domains | Parallel Model |
---|---|---|---|

SQL Database | Map Reduce | Relational Database | CUDA |

Nearest Neighbor | Dense Linear Algebra | Data Mining | CUDA, OMP |

Gaussian Elimination | Dense Linear Algebra | Linear Algebra | CUDA |

Cell | Structured Grid | Cellular Automation | CUDA |

PathFinder | Dynamic Programming | Grid Traversal | CUDA |

Hybrid Sort | Sorting | Sorting Algorithms | CUDA |

Myocyte* | Structured Grid | Biological Simulation | CUDA, OMP |

New Rodinia applications coming soon:

Applications | Dwarves | Domains | Parallel Model |
---|---|---|---|

LavaMD* | Structured Grid | Molecular Dynamics | CUDA, 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:

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.(pdf)

* 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 NVIDIA Research and NEC labs. *