Multi-Language Benchmark Generation via L-Systems
Vin\'icius Francisco da Silva, Heitor Leite, Fernando Magno Quint\~ao Pereira

TL;DR
This paper introduces a novel method using L-systems to generate multi-language benchmarks for testing compiler and system performance, demonstrated through various case studies comparing different languages and compiler optimizations.
Contribution
It presents a new approach to create artificial, complex program benchmarks across multiple programming languages using L-systems, enhancing performance evaluation tools.
Findings
Effective in generating complex multi-language benchmarks
Useful for comparing compiler performance and optimizations
Provides insights into code evolution and behavior
Abstract
L-systems are a mathematical formalism proposed by biologist Aristid Lindenmayer with the aim of simulating organic structures such as trees, snowflakes, flowers, and other branching phenomena. They are implemented as a formal language that defines how patterns can be iteratively rewritten. This paper describes how such a formalism can be used to create artificial programs written in programming languages such as C, C++, Julia and Go. These programs, being large and complex, can be used to test the performance of compilers, operating systems, and computer architectures. This paper demonstrates the usefulness of these benchmarks through multiple case studies. These case studies include a comparison between clang and gcc; a comparison between C, C++, Julia and Go; a study of the historical evolution of gcc in terms of code quality; a look into the effects of profile guided optimizations…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Parallel Computing and Optimization Techniques · Embedded Systems Design Techniques
