What business of mine is the future? No doubt Seldon has foreseen it and prepared against it. There will be other crises in the time to come when money power has become as dead a force as religion is now. Let my successors solve those new problems, as I have solved the one of today. - Foundation (Isaac Asimov)

Using Ray Tracing cores for accelerating a KNN algorithm.

This project studies the use of ray tracing cores - a novel type of GPU hardware used for accelerating ray tracing algorithms - for accelerating a k-nearest neighbours algorithm. Final project of GPGPU - General purpose computing in GPUs at Universidad de la República (UDELAR).

The aim of this project was to do a research of the state of the art in using ray tracing cores - introduced in Nvidia Turing architecture - for general purpose computing. Specifically, we studied the use of this new hardware for accelerating the KNN algorithm. This involved the analysis of how the original problem of the K nearest neighbours can be reformulated to a ray tracing problem.

Below you can find a report about the algorithm (Explanation, experimental analysis and performance reports) and its source code. Unfortunately, the report is only available in Spanish. The appendix section contains a detailed explanation of how to use the OptiX library for building a KNN algorithm that benefits from the ray tracing cores.

This project was a great opportunity to gather experience in:

  • GPU programming.
  • Investigation of the state of the art in GPUs and RT cores.
  • Graphic programming with OptiX.
  • Algorithm analysis.


Created on the 26th of March 2023. Last edition on 26/3/2023