3D LUT on NVIDIA GPU
3D LUT Transform is massively used for color grading and toning applications. To solve the task of 3D LUT grading, we have developed corresponding kernels that run on existing GPU hardware from NVIDIA. We have implemented various formats for 3D LUTs and achieved very high performance for color grading.
Usually fast GPU kernels require to put all initial data into GPU shared memory. Unfortunately this is not the case with 3D LUT cubes with dimensions 17×17×17 and more. Each point of 3D cube consists of three float values and it means that even for the latest NVIDIA GPUs it's impossible to store that amount of data in GPU shared comemory.
3DLUT Transform Features
Hardware and software
Performance of 2.5D and 3D LUT Transforms on GPU
Test images: 16-bit RGB, 2432×1366 (2.5K) and 4032×2192 (4K)
We have designed that software as a part of our GPU image & video processing SDK. Now our customers have opportunity to use fast 3D LUT transforms on NVIDIA GPU in their realtime color grading applications.