Memorias de investigación
Cursos, seminarios y tutoriales:
Turning Control-flow Graphs into Callgraphs - Transformation of Partitioned Codes for Execution in Heterogeneous Architectures
Año:2012

Áreas de investigación
  • Ciencias de la computación y tecnología informática

Datos
Descripción
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.
Internacional
Si
Nombre congreso
EuroLLVM
Entidad organizadora
ARM
Nacionalidad Entidad
REINO UNIDO
Lugar/Ciudad de impartición
Londres
Fecha inicio
12/04/2012
Fecha fin
13/04/2012

Esta actividad pertenece a memorias de investigación

Participantes

Grupos de investigación, Departamentos, Centros e Institutos de I+D+i relacionados
  • Creador: Departamento: Ingeniería Electrónica