Bellman-Ford algorithm is useful in identifying arbitrage opportunities in foreign exchange markets. With an aim for speed, I parallelized the shortest-path algorithm using distributed-memory programming (MPI), shared-memory programming (OpenMP), and GPU programming (CUDA).
bf-mpi.cpp
Bellman-Ford in MPIbf-omp.cpp
Bellman-Ford in OpenMPbf-cuda.cu
Bellman-Ford in CUDAgenmat.cpp
A helper program to generate test cases