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

m |
(→The Rodinia Benchmark Suite) |
||

Line 29: | Line 29: | ||

<TR><TD>[[Needleman-Wunsch]]<TD>Dynamic Programming<TD>Bioinformatics<TD ALIGN="center">CUDA, OMP, OCL<TD ALIGN="center">✔ | <TR><TD>[[Needleman-Wunsch]]<TD>Dynamic Programming<TD>Bioinformatics<TD ALIGN="center">CUDA, OMP, OCL<TD ALIGN="center">✔ | ||

<TR><TD>[[K-Means | Kmeans]]<TD>Dense Linear Algebra<TD>Data Mining<TD ALIGN="center">CUDA, OMP, OCL<TD ALIGN="center"> | <TR><TD>[[K-Means | Kmeans]]<TD>Dense Linear Algebra<TD>Data Mining<TD ALIGN="center">CUDA, OMP, OCL<TD ALIGN="center"> | ||

− | <TR><TD>[[Graph traversal | Breadth-First Search]]<TD>Graph Traversal<TD>Graph Algorithms<TD ALIGN="center">CUDA, OMP, OCL<TD ALIGN="center"> | + | <TR><TD>[[Graph traversal | Breadth-First Search<sup>1</sup>]]<TD>Graph Traversal<TD>Graph Algorithms<TD ALIGN="center">CUDA, OMP, OCL<TD ALIGN="center"> |

<TR><TD>[[SRAD]]<TD>Structured Grid<TD>Image Processing<TD ALIGN="center">CUDA, OMP<TD ALIGN="center">✔ | <TR><TD>[[SRAD]]<TD>Structured Grid<TD>Image Processing<TD ALIGN="center">CUDA, OMP<TD ALIGN="center">✔ | ||

<TR><TD>[[Streamcluster]]<TD>Dense Linear Algebra<TD>Data Mining<TD ALIGN="center">CUDA, OMP<TD ALIGN="center"> | <TR><TD>[[Streamcluster]]<TD>Dense Linear Algebra<TD>Data Mining<TD ALIGN="center">CUDA, OMP<TD ALIGN="center"> | ||

Line 52: | Line 52: | ||

<TABLE border="1"> | <TABLE border="1"> | ||

<TR><TH WIDTH="150">Applications<TH WIDTH="150">Dwarves<TH WIDTH="150">Domains<TH WIDTH="120">Parallel Model | <TR><TH WIDTH="150">Applications<TH WIDTH="150">Dwarves<TH WIDTH="150">Domains<TH WIDTH="120">Parallel Model | ||

− | <TR><TD>[[LavaMD | LavaMD | + | <TR><TD>[[LavaMD | LavaMD<sup>2</sup>]]<TD>Structured Grid<TD>Molecular Dynamics<TD ALIGN="center">CUDA, OMP |

</TABLE> | </TABLE> | ||

## Revision as of 15:23, 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.

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 | ✔ |

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 | ✔ |

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

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

Needleman-Wunsch | Dynamic Programming | Bioinformatics | CUDA, OMP, OCL | ✔ |

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

Breadth-First Search^{1} | Graph Traversal | Graph Algorithms | CUDA, OMP, OCL | |

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

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, OCL |

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^{2} | 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 AMD, NEC labs, and NVIDIA Research. *