CW 433

Jon Sneyers, Tom Schrijvers, Bart Demoen
Suspension optimization and in-place updates for optimizing CHR compilation

Abstract

We introduce two CHR compiler optimizations aimed at reducing garbage creation by reusing suspension terms, used to represent the CHR constraints. We have implemented both optimizations in the K.U.Leuven CHR system. The optimizations dramatically improve the memory footprint and speed of CHR programs: in several benchmarks we have measured speedups of 40% and more, and a reduction of memory usage by a factor of four.

report.pdf (275K) / mailto: J. Sneyers