Mercurium
Mercurium és una infraestructura de compilació d'origen a font destinada a la creació ràpida de prototips. Els idiomes actuals compatibles són C99, C++11 i Fortran 95.
Grup d´investigació:
.
Investigador/s:
Roger Ferrer Ibáñez, Sara Royuela Alcázar, Sergi Mateo Bellido, Diego Caballero De Gea
Web:
Descripció:
Mercurium és una infraestructura de compilació d'origen a font destinada a la creació ràpida de prototips. Els idiomes actuals compatibles són C99, C++11 i Fortran 95. Mercurium s'utilitza principalment juntament amb el temps d'execució Nanos++ per implementar projectes per a OmpS i OpenMP, però com que és bastant extensible s'ha utilitzat en altres projectes inclosos (però no limitant-se a) Cel·lular Superescalar, ACOTES, memòria transaccional de programari, vectorització i correcció.
Les infraestructures de compilació existents per a la producció solen ser massa grans per abordar-les en un entorn acadèmic on la mà d'obra i els recursos són limitats. Mercurium ha estat dissenyat amb l'objectiu de ser productiu en un context de prototipat ràpid de noves idees que requereixen anàlisis i transformacions del compilador.
L'arquitectura Mercurium proporciona una rica representació interna compartida per a C, C++ i Fortran i es pot ampliar mitjançant fases del compilador implementades com a connectors. Les transformacions de codi es poden implementar fàcilment mitjançant fragments de codi font que s'integren a la representació intermèdia del compilador. També hi ha disponible un mecanisme més tradicional de construcció manual de nodes per a transformacions més avançades.
Mercurium té incorporades diverses funcions d'una sola font destinades a la informàtica heterogènia: a partir d'un sol fitxer, el compilador pot generar diversos fitxers que es poden compilar amb un altre compilador de fons i, finalment, integrar-se en un únic executable. Aquest mecanisme disponible des de l'arquitectura Cell s'ha explotat també per a CUDA i altres clústers heterogenis de molts nuclis.
Problema:
N/A
Solució:
N/A
Àrees d'aplicació:
N/A
Novetat:
N/A
Protecció:
LGPL License (Version 3.0)
Mercat objectiu:
N/A
Keywords:
TRL: N/A
CRL: N/A
BRL: N/A
IPRL: N/A
TmRL: N/A
FRL: N/A
Més informació
Si vols saber més sobre aquest projecte no dubtis en contactar amb nosaltres