Guardado en:
Detalles Bibliográficos
Autores principales: Biebert, Daniel, Hakert, Christian, Chen, Kuan-Hsun, Chen, Jian-Jia
Formato: Preprint
Publicado: 2024
Materias:
Acceso en línea:https://arxiv.org/abs/2404.06846
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866913308521529344
author Biebert, Daniel
Hakert, Christian
Chen, Kuan-Hsun
Chen, Jian-Jia
author_facet Biebert, Daniel
Hakert, Christian
Chen, Kuan-Hsun
Chen, Jian-Jia
contents Bringing high-level machine learning models to efficient and well-suited machine implementations often invokes a bunch of tools, e.g.~code generators, compilers, and optimizers. Along such tool chains, abstractions have to be applied. This leads to not optimally used CPU registers. This is a shortcoming, especially in resource constrained embedded setups. In this work, we present a code generation approach for decision tree ensembles, which produces machine assembly code within a single conversion step directly from the high-level model representation. Specifically, we develop various approaches to effectively allocate registers for the inference of decision tree ensembles. Extensive evaluations of the proposed method are conducted in comparison to the basic realization of C code from the high-level machine learning model and succeeding compilation. The results show that the performance of decision tree ensemble inference can be significantly improved (by up to $\approx1.6\times$), if the methods are applied carefully to the appropriate scenario.
format Preprint
id arxiv_https___arxiv_org_abs_2404_06846
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Register Your Forests: Decision Tree Ensemble Optimization by Explicit CPU Register Allocation
Biebert, Daniel
Hakert, Christian
Chen, Kuan-Hsun
Chen, Jian-Jia
Machine Learning
Bringing high-level machine learning models to efficient and well-suited machine implementations often invokes a bunch of tools, e.g.~code generators, compilers, and optimizers. Along such tool chains, abstractions have to be applied. This leads to not optimally used CPU registers. This is a shortcoming, especially in resource constrained embedded setups. In this work, we present a code generation approach for decision tree ensembles, which produces machine assembly code within a single conversion step directly from the high-level model representation. Specifically, we develop various approaches to effectively allocate registers for the inference of decision tree ensembles. Extensive evaluations of the proposed method are conducted in comparison to the basic realization of C code from the high-level machine learning model and succeeding compilation. The results show that the performance of decision tree ensemble inference can be significantly improved (by up to $\approx1.6\times$), if the methods are applied carefully to the appropriate scenario.
title Register Your Forests: Decision Tree Ensemble Optimization by Explicit CPU Register Allocation
topic Machine Learning
url https://arxiv.org/abs/2404.06846