Skip to content

Common HPC Algorithms

Tommy Gorham edited this page May 2, 2022 · 1 revision
  1. Matrix-Vector Multiplication: This Program Computes the Matrix-Vector Dot Product using Kokkos where y=Ax.

  2. Conway's Game of Life: This program solves Conway's Game of Life is a cellular automaton that is played on a 2D square grid. Each square (or "cell") on the grid can be either alive or dead, and they evolve according to the following rules:

  • Any live cell with fewer than two live neighbours dies (referred to as underpopulation).
  • Any live cell with more than three live neighbours dies (referred to as overpopulation).
  • Any live cell with two or three live neighbours lives, unchanged, to the next generation.
  • Any dead cell with exactly three live neighbours comes to life.
  1. Compute PI using Monte Carlo Algorithm: This program uses a Monte Carlo algorithm to compute PI as an example of how random number generators are used to solve problems. This was the best speedup that was achieved as expected, since this program is embarrassingly parallel by nature.

  2. Parallel Merge Sort: This Program Sorts a 1-Dimensional Datatype on the CPU or the GPU using Kokkos Parallel Sort and serial merge sort.

Clone this wiki locally