CUDA Dynamic Parallelism on BFS Kernel

GPU Teaching Kit – Accelerated Computing

Objective

The purpose of this lab is to introduce the student to the Dynamic Parallelism using BFS kernel. The student will implement BFS kernel level and then convert to Dynamic Parallelism implementation. Interested students can attempt to optimize the Dynamic Parallelism for performance as discussed in the slides.

Prerequisites

Before starting this lab, make sure that:

Instructions

Edit the code in the code tab to perform the following:

Instructions about where to place each part of the code is demarcated by the //@@ comment lines.

Local Setup Instructions

The most recent version of source code for this lab along with the build-scripts can be found on the Bitbucket repository. A description on how to use the CMake tool in along with how to build the labs for local development found in the README document in the root of the repository.

The executable generated as a result of compiling the lab can be run using the following command:

./DynamicParallelism_DatasetGenerator    #this will download graphs from /
  SNAP website. If you are WINDOWS uses, you need to manually download the graphs /
  provided in dataset_generator.cpp file.  
./DynamicParallelism_Template graphs/<anygraph.txt>

where <anygraph.txt> is the real world graph download from the SNAP website.