# 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 six applications and seven 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 |
---|---|---|

Leukocyte* | Structured Grid | Medical Imaging |

Heart Wall* | Structured Grid | Medical Imaging |

MUMmerGPU | Graph Traversal | Bioinformatics |

CFD Solver | Unstructured Grid | Fluid Dynamics |

LU Decomposition* | Dense Linear Algebra | Linear Algebra |

HotSpot | Structured Grid | Physics Simulation |

Back Propagation | Unstructured Grid | Pattern Recognition |

Needleman-Wunsch | Dynamic Programming | Bioinformatics |

Kmeans | Dense Linear Algebra | Data Mining |

Breadth-First Search | Graph Traversal | Graph Algorithms |

SRAD | Structured Grid | Image Processing |

Streamcluster | Dense Linear Algebra | Data Mining |

Particle Filter | Structured Grid | Medical Imaging |

Applications with the CUDA implementations only:

Applications | Dwarves | Domains |
---|---|---|

SQL Database | Map Reduce | Relational Database |

Nearest Neighbor | Dense Linear Algebra | Data Mining |

Gaussian Elimination | Dense Linear Algebra | Linear Algebra |

Cell | Structured Grid | Cellular Automation |

PathFinder | Dynamic Programming | Grid Traversal |

Hybrid Sort | Sorting | Sorting Algorithms |

Myocyte* | Structured Grid | Biological Simulation |

The applications(*) are relatively hard for compilers to analyze and

generate efficient GPU codes.

### Application Download

Please read the license. 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. *