Project

Alliantieonderzoeksgroep: Het optimaliseren van de prestaties en efficiëntie van moderne programmeertalen

Code
05L00115
Looptijd
01-07-2015 → 30-06-2018
Financiering
UGent-middelen
Onderzoeksdisciplines
  • Engineering and technology
    • Other computer engineering, information technology and mathematical engineering not elsewhere classified
Trefwoorden
software
 
Projectomschrijving

Wij stellen een meer verticaal geïntegreerde software- en systeem-stack voor om de groeiende wanverhouding te bestrijden tussen software en haar hogere abstractieniveaus, en low-level hardware die steeds complexer is geworden naarmate de vermogensbeperkingen zijn toegenomen. Hoewel programmeertalen naar hogere abstractieniveaus zijn gegaan om het programmeren te vergemakkelijken en software overdraagbaar te maken, is de prijs daarvoor een verlies aan prestaties. Dit verlies wordt nog verergerd doordat machines zijn overgegaan op multicore, en nu op heterogene ontwerpen. De oplossing is om de organisatie en behoeften van software door de lagen van de stack te communiceren om hardware te helpen omgaan met zijn beperkte bronnen, namelijk processors, caches, bandbreedte en vermogen. We stellen voor dat we de expertise van het VUB Software Language Lab op het vlak van programmeertaal- en softwareontwikkeling samen met de expertise van het Ghent Performance Lab op het vlak van managed language runtime en performantie- en geheugenoptimalisatie gebruiken om nieuwe taalinterfaces en nieuwe virtuele machine-implementaties te ontwikkelen. Deze zullen de hardware begeleiden bij het plannen van parallelle taken, het beheren van gegevensverplaatsingen op de chip en het minimaliseren van het vermogen. Hardware kan deze doelstellingen niet langer bereiken met zijn beperkte instructie-informatie op laag niveau - we moeten gebruik maken van de dynamische, controlerende mogelijkheden van beheerde talen op hoog niveau. Samen kunnen we een samenwerkend, verticaal geïntegreerd systeem bouwen dat de schaalbaarheid en prestaties van toepassingen op moderne machines optimaliseert.