130 likes | 232 Views
Semester Project for Parallel Computing. Mid Defense. Cellular Automata. Group Members: Bibrak Qamar Jahanzeb Maqbool Muhammad Imran Bilawal Sarwar Mehreen Nadeem. Project Description. We have chosen 'Game of Life' and 'Fish and Shark Problem' .
E N D
Semester Project for Parallel Computing Mid Defense Cellular Automata Group Members: Bibrak Qamar Jahanzeb Maqbool Muhammad Imran Bilawal Sarwar Mehreen Nadeem
Project Description • We have chosen 'Game of Life' and 'Fish and Shark Problem' . • We are using CUDA to implement these simulations as they are not only compute intensive but also best fits in the CUDA paradigm, for having many threads. • Work Completed • Implementation Game of Life on CUDA is completed • Implementation Fish and Shark on CUDA is completed
Game of Life Kernel Host memory = NxNxsizeof(int) one array Device memory = NxNxsizeof(int) two arrays
Implementation Game of Life in CUDA using OpenGL Initialized the grid
#define fishes 0 • #define sharks 1 • #define fish_breed 2 • #define shark_breed 3 ----------------------------------------------------------------------------- • int FS_Data[4]; • FS_Data[fishes] = 0; // fishes • FS_Data[sharks] = 0; // sharks • FS_Data[fish_breed] = 0; // fishes breed • FS_Data[shark_breed] = 0; // sharks breed Good use of registers ( with block size = 256, compute capability = 1.1) nvcc --ptxas-options=-v shows registers used ptxas info : Used 10 registers, 8+16 bytes smem, 60 bytes cmem[1]
Yellow = Shark • Implementation “Fish and Shark “ on CUDA is completed Red = Fish Black = Dead Initialized the grid
Remaining Work • Using a new technique MPI + CUDA • We intend to use MPJ + JCUDA • We have successfully run JCUDA program on linux and windows, and have merged both MPJ and JCUDA.