🤖 AI Summary
General-purpose programs often struggle to achieve efficient parallel execution on GPUs, hindering advances in program synthesis, superoptimization, and array programming. To address this limitation, this work proposes a highly parallel virtual machine architecture tailored for linear algebra computations on GPUs, enabling efficient execution of massively concurrent array programs. By integrating a parallel virtual machine, an array-program execution model, and a scalable evaluation framework, the proposed architecture achieves up to a 147× speedup over serial execution across workloads involving millions of concurrent tasks. This substantial acceleration significantly enhances GPU resource utilization and improves the efficiency of program synthesis pipelines.
📝 Abstract
Many techniques in program synthesis, superoptimization, and array programming require parallel rollouts of general-purpose programs. GPUs, while capable targets for domain-specific parallelism, are traditionally underutilized by such workloads. Motivated by this opportunity, we introduce a pleasingly parallel virtual machine and benchmark its performance by evaluating millions of concurrent array programs, observing speedups up to $147\times$ relative to serial evaluation.