Open sourcing CUDA MOSP

Happy Sunday!

I was organizing my stuff and I realized that I have a lot of past projects which were not on github. Some of them I lost and other I had already forgot that I made, some of which are pretty cool.

So I decided to push some of my projects and I started by my graduation white paper. I used GPU programming to parallelize solutions of a NP-hard problem (MOSP). I used CUDA, which is a platform created by NVIDIA to enable mere mortal developers to exploit the massive parallel architecture of GPUs.

During this project, it was nice to returns to my origins and code in C. I used C++11 for the code that runs in the CPU, but had to fallback to pure C in the CUDA kernels (functions executed by the GPU).

I have good feelings for C, it was my first programming language and taught me so much. I even made my own version of bomberman using OpenGL back in 2011. I didn’t know I could use images, so I had to drawn everything mathematically, i.e, ellipses for the head and hat, saw function for the explosion effect and so on. I lost that code though, because I had never heard of git nor cloud storage at the time.

Returning to the paper, there were some nice performance gains by using CUDA C/C++. See:

If you can read Portuguese, check out the white paper.

Project link: https://github.com/Andresnds/cuda-mosp

 

Leave a comment