KLARAPTOR: A Tool for Dynamically Finding Optimal Kernel Launch Parameters Targeting CUDA Programs

11/05/2019
by   Alexander Brandt, et al.
0

In this paper we present KLARAPTOR (Kernel LAunch parameters RAtional Program estimaTOR), a new tool built on top of the LLVM Pass Framework and NVIDIA CUPTI API to dynamically determine the optimal values of kernel launch parameters of a CUDA program P. To be precise, we describe a novel technique to statically build (at the compile time of P) a so-called rational program R. Using a performance prediction model, and knowing particular data and hardware parameters of P at runtime, the program R can automatically and dynamically determine the values of launch parameters of P that will yield optimal performance. Our technique can be applied to parallel programs in general, as well as to generic performance prediction models which account for program and hardware parameters. We are particularly interested in programs targeting manycore accelerators. We have implemented and successfully tested our technique in the context of GPU kernels written in CUDA using the MWP-CWP performance prediction model.

READ FULL TEXT

page 1

page 2

page 6

research
06/01/2019

A Technique for Finding Optimal Program Launch Parameters Targeting Manycore Accelerators

In this paper, we present a new technique to dynamically determine the v...
research
05/16/2023

Auto-Tuning High-Performance Programs Using Model Checking in Promela

The paper combines research approaches that traditionally have been disj...
research
01/12/2018

Comprehensive Optimization of Parametric Kernels for Graphics Processing Units

This work deals with the optimization of computer programs targeting Gra...
research
04/10/2019

Cross-Platform Performance Portability Using Highly Parametrized SYCL Kernels

Over recent years heterogeneous systems have become more prevalent acros...
research
06/29/2021

Web-based Structural Identifiability Analyzer

Parameter identifiability describes whether, for a given differential mo...
research
12/31/2020

Extracting Clean Performance Models from Tainted Programs

Performance models are well-known instruments to understand the scaling ...
research
01/27/2020

Automated Parallel Kernel Extraction from Dynamic Application Traces

Modern program runtime is dominated by segments of repeating code called...

Please sign up or login with your details

Forgot password? Click here to reset