Multithread C Concurrent Simulation

Wa-Tor is ecological simulation, described here (http://en.wikipedia.org/wiki/Wator).My team of four programmers was tasked with implementing a serial version of the simulation written in C99 running on Ubuntu. Then using OpenMP to create a concurrent, multi-threaded version running on up to 8 cores. Finally we produced graphed benchmarks to identify, mutex locking, false sharing, cach ping pong and various other problems associated with parallel programming. We then used this benchmark and profile information to help us identify ways we could improve our code to get the most out of all the cores at our disposal. Most of the work was done with all four of us huddled around one computer doing paired programming.

Source code

Checkout the code on github https://github.com/CiaranMcCann/Wator-Simulation

Technology

  • C99
  • OpenMP
  • GCC complier
  • Vim
  • GDB and Valgrind for Debugging

 

 


All content © Copyright 2017 by Ciarán McCann.