Palace: A Library for Interactive GPU-Accelerated Large Tensor Processing and Visualization
Dominik Drees, Benjamin Risse
TL;DR
Palace tackles the challenge of interactive processing and visualization of tensors that exceed local memory by introducing a GPU-accelerated, out-of-core framework on workstations. It combines chunked tensors, a pull-based compute graph, asynchronous task scheduling, a GPU-oriented page-table hierarchy, and level-of-detail pyramids to efficiently manage data across RAM, VRAM, and disk, including multi-GPU execution. The paper demonstrates Palace’s effectiveness through volume raycasting and hierarchical random walker segmentation, achieving superior or competitive performance against state-of-the-art systems and showcasing versatile use cases from 2D slide viewers to 4D time-series processing and virtually unlimited procedurally generated data. The results indicate Palace enables rapid prototyping and scalable visualization pipelines on commodity hardware, with practical impact for researchers handling very large, multi-dimensional tensors.
Abstract
Tensor datasets (two-, three-, or higher-dimensional) are fundamental to many scientific fields utilizing imaging or simulation technologies. Advances in these methods have led to ever-increasing data sizes and, consequently, interest and development of out-of-core processing and visualization techniques, although mostly as specialized solutions. Here we present Palace, an open-source, cross-platform, general-purpose library for interactive and accelerated out-of-core tensor processing and visualization. Through a high-performance asynchronous concurrent architecture and a simple compute-graph interface, Palace enables the interactive development of out-of-core pipelines on workstation hardware. We demonstrate on benchmarks that Palace outperforms or matches state-of-the-art systems for volume rendering and hierarchical random-walker segmentation and demonstrate applicability in use cases involving tensors from 2D images up to 4D time series datasets.
