Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.
AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.
Coarse-Grained Reconfigurable Arrays (CGRAs) are a programmable architectural solution that efficiently supports the execution of computation-intensive application functions (kernels). Compilers for CGRAs typically focus on optimizing the mapping of single loops, whose body can be expressed in a basic block produced by a compiler front-end. This approach, while effective in leveraging spatial parallelism within data flows, restricts the scope of deployment and neglects opportunities stemming from control flow analysis.
To enhance the code coverage of CGRA compilers, the end-to-end compilation framework presented in this paper operates at the kernel level, considering both Data Flow Graph (DFG)-based and Control Flow Graph (CFG)-based optimizations. Its implementation, based on the MLIR infrastructure, includes a front-end for Intermediate Representation (IR) abstraction, an optional middle-end reshaping the IR to facilitate modulo scheduling, a kernel mapper for operation allocation that supports both DFG and CFG mapping optimizations, and a back-end that performs register allocation and generates assembly with the mapped solution. The entire framework pipeline is fully automated and is released as open-source software.
Felix Schürmann, Omar Awile, Ioannis Magkanaris, Snehal Pramod Kumbhar
Anton Schleiss, José Pedro Gamito de Saldanha Calado Matos