Tahoe: Tree structure-aware high performance inference engine for decision tree ensemble on GPU

27Citations
Citations of this article
17Readers
Mendeley users who have this article in their library.

This article is free to access.

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.

Cite

CITATION STYLE

APA

Xie, Z., Dong, W., Liu, J., Liu, H., & Li, D. (2021). Tahoe: Tree structure-aware high performance inference engine for decision tree ensemble on GPU. In EuroSys 2021 - Proceedings of the 16th European Conference on Computer Systems (pp. 426–440). Association for Computing Machinery, Inc. https://doi.org/10.1145/3447786.3456251

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free