top of page
Synchronization Aware Warp Scheduling on GPGPU -Sim
​​
​
-
What is GPGPU-Sim? GPGPU-Sim is a a cycle-level simulator modeling contemporary graphics processing units (GPUs) running GPU computing workloads written in CUDA. It also includes performance visualization tool called AerialVision and a configurable and extensible energy model called GPUWattch. GPGPU-Sim and GPUWattch have been rigorously validated with performance and power measurements of real hardware GPUs.
​​
-
GPGPU Background: A generic GPGPU program consist of multiple kernels, each containing thousands of light-weight (CUDA) threads. GPGPU exploits parallelism by running several light-weight threads together, i.e. multi-threading to hide memory latencies. These threads are launched as grid of thread blocks called Threadblocks. When a kernel is dispatched to a GPGPU, a global threadblock scheduler assigns threadblocks to SIMT(Single Instruction , Multiple Thread) cores until all SIMT cores are saturated. Within a threadblock, threads are batched into warps. These warps are then assigned to multiple warp schedulers present in each SIMT core.
​
-
What is Sychronization Aware Warp Scheduling?: It is a algorithm that suggests the synchronisation between mutliple warp schedulers present in each SIMT core to reduce the number of stalls that occur due to synchronizing warps residing in different warp schedulers. For more info: (link)​
​
-
Modified the GPGPU-Sim simulator written in C++ to implement synchronization-aware warp scheduling algorithm among multiple warp schedulers in Fermi Architecture to improve the performance of synchronization rich kernels.

PROJECTS
bottom of page