Observatorio de I+D+i UPM

Memorias de investigación
Turning Control-flow Graphs into Callgraphs - Transformation of Partitioned Codes for Execution in Heterogeneous Architectures
Áreas de investigación
  • Ciencias de la computación y tecnología informática
Porting sequential codes to parallel heterogeneous platforms is a far from resolved problem. Recent research has tried to diminish development times by automating some stages of the process, such as parallelization, partitioning or mapping. Many of these works are implemented as compiler extensions as a barely intrusive tool for the application programmer. The last stage of the development toolchain, code generation, is the topic of our work. As far as we know, all previous approaches follow a master-accelerator concept, where possible accelerators such as GPUs or FPGAs are supervised by a general-purpose CPU. In order to move away from this concept in favour of a peer-to-peer solution, we have developed a new code generation pass under the LLVM infrastructure. Our pass transforms the original LLVM module, splitting functions up into new functions. We believe that remote function call methods, such as RMI (Remote Method Invocation), are a portable and scalable way to pass control flow between heterogeneous devices, thus supporting functional-level parallelism that may be present in the application. We deal with many implementation challenges resulting from this approach, such as differences between function-call-based and Basic-Block-based control flow, and we present our first correctness and performance tests based on a sample heterogeneous multicore architecture.
Entidad relacionada
Nacionalidad Entidad
Lugar del congreso
Esta actividad pertenece a memorias de investigación
  • Autor: Pablo Barrio Lopez-Cortijo (UPM)
  • Autor: Carlos Carreras Vaquer (UPM)
Grupos de investigación, Departamentos, Centros e Institutos de I+D+i relacionados
  • Creador: Grupo de Investigación: Laboratorio de Sistemas Integrados (LSI)
  • Departamento: Ingeniería Electrónica
S2i 2021 Observatorio de investigación @ UPM con la colaboración del Consejo Social UPM
Cofinanciación del MINECO en el marco del Programa INNCIDE 2011 (OTR-2011-0236)
Cofinanciación del MINECO en el marco del Programa INNPACTO (IPT-020000-2010-22)