TUTCRIS - Tampereen teknillinen yliopisto


Half-precision Floating-point Ray Traversal

Tutkimustuotos: Konferenssiesitys, posteri tai abstrakti


TilaJulkaistu - 29 helmikuuta 2016


Ray tracing is a memory-intensive application. This paper presents a new ray traversal algorithm for bounding volume hierarchies. The algorithm reduces the required memory bandwidth and energy usage, but requires extra computations. This is achieved with a new kind of utilization of half-precision floating-point numbers, which are used to store axis aligned bounding boxes in a hierarchical manner. In the traversal the ray origin is moved to the edges of the intersected nodes. Additionally, in order to retain high accuracy for the intersection tests the moved ray origin is converted to the child’s hierarchical coordinates, instead of converting the child’s bound coordinates into world coordinates. This means that both storage and the ray intersection tests with axis aligned bounding boxes can be done in half-precision. The algorithm has better results with wider vector instructions. The measurements show that on a Mali-T628 GPU the algorithm increases frame rate by 3% and decreases pow er consumption by 9% when wide vector instructions are used.