Litcius/Paper detail

Tahoe

Zhen Xie, Wenqian Dong, Jiawen Liu, Hang Liu, Dong Li

202120 citationsDOIOpen Access PDF

Abstract

Decision trees are widely used and often assembled as a forest to boost prediction accuracy. However, using decision trees for inference on GPU is challenging, because of irregular memory access patterns and imbalance workloads across threads. This paper proposes Tahoe, a tree structure-aware high performance inference engine for decision tree ensemble. Tahoe rearranges tree nodes to enable efficient and coalesced memory accesses; Tahoe also rearranges trees, such that trees with similar structures are grouped together in memory and assigned to threads in a balanced way. Besides memory access efficiency, we introduce a set of inference strategies, each of which uses shared memory differently and has different implications on reduction overhead. We introduce performance models to guide the selection of the inference strategies for arbitrary forests and data set. Tahoe consistently outperforms the state-of-the-art industry-quality library FIL by 3.82x, 2.59x, and 2.75x on three generations of NVIDIA GPUs (Kepler, Pascal, and Volta), respectively.

Topics & Concepts

Computer scienceInferenceDecision treeSet (abstract data type)Parallel computingMachine learningArtificial intelligenceProgramming languageMachine Learning and Data ClassificationAdvanced Neural Network ApplicationsExplainable Artificial Intelligence (XAI)
Tahoe | Litcius