🤖 AI Summary
To address the challenges of scheduling heterogeneous subtasks and low hardware utilization in scientific computing, this paper proposes a domain-semantic-aware DAG-driven scheduling and compilation framework. Methodologically, it models computational workflows as directed acyclic graphs (DAGs) and incorporates domain-specific physical constraints—such as those from quantum electrodynamics—to jointly optimize cross-device parallelism, data movement, and dependency management. Integrating static compilation with dynamic scheduling, the framework enables fine-grained resource allocation and automatic code generation within Julia. Its key contribution lies in being the first to deeply embed domain-specific semantics throughout the entire DAG scheduling and compilation pipeline, thereby overcoming the limitations of conventional hardware-agnostic schedulers. Experimental evaluation on multi-external-particle scattering matrix element computation demonstrates significant improvements in execution efficiency and scalability, with hardware utilization increased by up to 2.3×.
📝 Abstract
Complex computational problems in science often consist of smaller parts that can have largely distinct compute requirements from one another. For optimal efficiency, analyzing each subtask and scheduling it on the best-suited hardware would be necessary. Other considerations must be taken into account, too, such as parallelism, dependencies between different subtasks, and data transfer speeds between devices. To achieve this, directed acyclic graphs are often employed to represent these problems and enable utilizing as much hardware as possible on a given machine. In this paper, we present a software framework written in Julia capable of automatically and dynamically producing statically scheduled and compiled code. We lay theoretical foundations and add domain-specific information about the computation to the existing concepts of DAG scheduling, enabling optimizations that would otherwise be impossible. To illustrate the theory we implement an example application: the computation of matrix elements for scattering processes with many external particles in quantum electrodynamics.