How to Efficiently Process $2^100$ List Variations

kaestner@cs.cmu.edu (L. Lazarek)
Fri, 17 Jan 2020 15:18:48 -0500

Lukas Lazarek. How to Efficiently Process $2^100$ List Variations. In Proceedings of the 2017 ACM SIGPLAN Conference on Systems, Programming, Languages, and Applications: Software for Humanity (SPLASH-SRC), pages 36--38, New York, NY: ACM Press, 2017. SPLASH Student research competition, first place.

Variational execution offers an avenue of efficiently analyzing configurable systems, but data structures like lists require special consideration. We implement automatic substitution of a more efficient list representation in a variational execution framework and evaluate its performance in micro-benchmarks. The results suggest that the substitution may offer substantial performance improvements to programs involving highly variational lists.