Decision tree learning algorithms dynamically generate huge queries. Because these queries are executed often, the trade-off between meta-calling and compiling & running them has been in favor of the latter, as compiled code is faster. However, compilation is expensive, and experiments show that sometimes meta-call can outperform compile & run. In this paper, we investigate alternative approaches that either improve meta-call execution, or reduce compilation time without sacrificing execution speed. By embedding the meta-call we can improve its execution by a factor of 3 to 4. We also propose a hybrid scheme of compilation and meta-call that reduces compilation times by an order of magnitude. Our results strongly suggest that the same techniques are worth applying in the context of decision tree learners.
Published: R. Tronšon, G. Janssens, en B. Demoen, Alternatives for compile & run in the WAM, Proceedings of CICLOPS 2003: Colloquium on Implementation of Constraint and LOgic Programming Systems (Lopes, R. and Ferreira, M., eds.), pp. 45-58, 2003
Source: PDF, 130463 bytes