Kernel Tuner is a Python-based, open-source GPU performance tuning tool. It optimizes GPU applications by exploring permutations of parameters and analyzing performance. In this process, it stores results in JSON cache files. In this project, cache files are formalized by (1) defining validity and versioning of cache files with a JSON schema, (2) allowing conversion between different cache file versions and formats, and (3) developing a library that provides an easy interface for performing operations on cache files.
The customers of this project are Ben van Werkhoven, and Floris-Jan Willemsen. Ben van Werkhoven is an assistant professor at University of Leiden and head of the Accelerated Computing research group. On the other hand, Floris-Jan Willemsen is a PhD student at the eScience Center and the University of Amsterdam.
As a team, we used the scrum process, in which Cesar was the product owner and Renee Gerritse the scrum master. Both Cesar and Renee Gerritse, as well as Dylan Groeneveld, Tim de Jong, Tobias Hofstra and Rakesh Kumar were developers, with Dylan Groeneveld taking the lead in the design of the architecture.