Project
Matchmaker: Compilers gebruiken om opkomende AI algoritmes uit te huwelijken aan opkomende AI hardware
Voor het efficiënt en privacy-gericht verwerken van sensorgegevens in “the edge” wordt meer en meer Artificiële intelligentie (in de vorm van neurale netwerken) toegepast op ultra-low-power microcontrollers. Energie-efficiëntie op deze platformen is erg belangrijk aangezien deze sensor nodes vaak erg lang op een batterijlading moeten kunnen werken. Het genereren van efficiënte code om deze neurale netwerken te draaien is jammer genoeg niet zo simpel. Huidige methodes zijn vaak erg direct naar de hardware gericht. Dit zorgt ervoor dat code weinig overdraagbaar is en dat er veel manuele stappen zijn in het codegeneratieproces. Het vraagt ook erg veel voorkennis van artificieel intelligente applicatieontwerpers omtrent de hardware, wat het voor hen vaak moeilijk maakt om deze nieuwe ultra-low-power platformen te programmeren. Deze thesis onderzoekt tools (compilers) die het voor de applicatieprogrammeur vergemakkelijken om neurale netwerken efficiënt te laten draaien op deze nieuwe ultra-low-power platformen. We onderzoeken welke programmastructuren het mogelijk maken om dit op een efficiënte, overdraagbare en liefst zoveel mogelijk automatische manier te doen. Er wordt ook onderzocht of het ondersteunen van deze tools misschien aanpassingen van de de applicatie of de hardware vergt, om zo op die manier een optimale brug tussen soft- en hardware te vormen.