GPU are great at attacking problems that come in the following form.
•Data Parallelism – SPMD
•Embarrassingly Parallel Application
–Rendering – Raster based
–Simulation of large scale particle system
–Large Graphs/networks
–Numerical Integration
–Monte Carlo Integration
–Bioinformatics
–Genetic Algorithms and evolutionary computation metaheuristics
–Ensemble Calculations
–Visual Mining – ex Large Scale Face Recognition
–Brute force searches in cryptography
–Distributed Set Processing of relational data
–Sieve Analysis for GNFS and QS for integer factorization
HSA also bring about wider set of problem by addressing
•What GPU do well today
–Data Parallelism – Embarrassingly Parallel Application
–SPMD
•Plus a much richer set of Parallel Solutions
–Task-Parallelism,
–Nested-Parallelism,
–Braided-Parallelism,
–Irregular parallelism
–MPMD
•Parallel Problems that are Communication Intensive
–Need High Bandwidth Low Latency Interconnects
–Examples
•Solution that are Parallelizable by Domain Decomposition
•Partial differential equations on a regular grid using discrete time stepping
–More efficient implementation of MapReduce, Hash Tables, Sparse Matrix Vectors and Conjugate Gradients solvers, FETI-DP Method, List Ranking, and spatial search
•Algorithm that need Inter-task Communication
•Application with the need of branching support.
•Application that need exceptions processing
•Dynamic load balancing task between processing elements
What is revolutonary
•What GPU do well today
–Data Parallelism – Embarrassingly Parallel Application
–SPMD
•Plus a much richer set of Parallel Solutions
–Task-Parallelism,
–Nested-Parallelism,
–Braided-Parallelism,
–Irregular parallelism
–MPMD
•Parallel Problems that are Communication Intensive
–Need High Bandwidth Low Latency Interconnects
–Examples
•Solution that are Parallelizable by Domain Decomposition
•Partial differential equations on a regular grid using discrete time stepping
–More efficient implementation of MapReduce, Hash Tables, Sparse Matrix Vectors and Conjugate Gradients solvers, FETI-DP Method, List Ranking, and spatial search
•Algorithm that need Inter-task Communication
•Application with the need of branching support.
•Application that need exceptions processing
•Dynamic load balancing task between processing elements

