Ostrich Benchmark Suite


Ostrich is a benchmark suite developed in the Sable Lab at McGill University with the objective of studying the performance of JavaScript and WebCL for numerical code. Version of the benchmarks are available in C/C++, JavaScript, OpenCL and WebCL. The current list of supported benchmarks is below:

  • back-prop: a machine-learning algorithm that trains the weights of connecting nodes on a layered neural network
  • bfs: a breadth-first search algorithm that assigns to each node of a randomly generated graph its distance from a source node
  • crc: an error-detecting code which is designed to detect errors caused by network transmission or any other accidental error
  • fft: the Fast Fourier Transform (FFT) function is applied to a random data set
  • hmm: a forward-backward algorithm to find the unknown parameters of a hidden Markov model
  • lavamd: an algorithm to calculate particle potential and relocation due to mutual forces between particles within a large 3D space
  • lud: a LU decomposition is performed on a 1024 x 1024, randomly-generated matrix
  • nqueens: an algorithm to compute the number of ways to put down n queens on an n x n chess board where no queens are attacking each other
  • nw: an algorithm to compute the optimal alignment of two protein sequences
  • page-rank: the algorithm famously used by Google Search to measure the importance of a web site
  • spmv: an algorithm to multiply a randomly-generated sparse matrix with a randomly generated vector
  • srad: a diffusion method for ultrasonic and radar imaging applications based on partial differential equations




The code is available at the Official Github Repo.

More information can be found on the wiki page.