Skip to content
/ klap Public
forked from illinois-impact/klap

A source-to-source compiler for optimizing CUDA dynamic parallelism by aggregating launches

License

Notifications You must be signed in to change notification settings

ielhajj/klap

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

KLAP

Overview

KLAP is a source-to-source compiler that optimizes CUDA code which uses dynamic parallelism to implement applications with nested parallelism. KLAP aggregates dynamic launches across warps, blocks, and grids to reduce the total number of grid launches and increase their granularity.

Instructions

Refer to src for instructions on how to build the compiler.

Refer to include for instructions on how to setup the runtime.

Refer to test for instructions on how to run the benchmarks.

Citation

Please cite the following paper if you find this work useful:

  • I. El Hajj, J. Gómez-Luna, C. Li, L.-W. Chang, D. Milojicic, W.-M. Hwu. KLAP: Kernel Launch Aggregation and Promotion for Optimizing Dynamic Parallelism. In Proceedings of the 49th Annual IEEE/ACM International Symposium on Microarchitecture (MICRO), 2016.

About

A source-to-source compiler for optimizing CUDA dynamic parallelism by aggregating launches

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 68.7%
  • Cuda 20.0%
  • C 8.7%
  • Makefile 1.1%
  • Objective-C 1.0%
  • Shell 0.4%
  • CMake 0.1%