HARPooning Design Automation for Data Analytics
Ricerca
-
Data inizio: 24/11/2016
Durata: 13 mesi
Sommario
I database strutturati come grafi spesso utilizzano strutture dati basati su puntatori o su linked list. Sebbene queste siano adatte a ben rappresentare relazioni tra dati che cambiano dinamicamente, possono causare una serie irregolare ed impredicibile di accessi a singoli dati e possono richiedere molteplici operazioni di sincronizzazione. I processori convenzionali sono ottimizzati per un numero ridotto di accessi a locazioni di memoria vicine e quindi non si adattano bene a questo tipo di applicazione, rendendo i dispositivi dedicati (come per esempio quelli implementati su Field Programmable Gate Array) una soluzione vantaggiosa. Per questo motivo abbiamo sviluppato una serie di architetture innovative e di metodologie per la Sintesi ad Alto Livello per generare automaticamente acceleratori per GEMS (Graph Engine for Multithreaded Systems), il nostro database basato su grafi, sul Resource Description Framework (RDF) e sul linguaggio di query SPARQL, originariamente sviluppato per cluster omogenei.
In questo progetto di ricerca, la piattaforma Intel HARP verrà utilizzata per approfondire i nostri studi e per implementare un prototipo completo funzionante su una piattaforma eterogenea. Lo studio si focalizzerà sull'analisi dell'interfacciamento fra gli acceleratori e il processore e sull'impatto della cache e dei trasferimenti di dati. Verranno inoltre fatte analisi per individuare i colli di bottiglia del sistema ed individuare quindi nuove soluzioni che permettano di incrementare la scalabilità del sistema tramite l'utilizzo di nodi multipli. Questa attività di ricerca verrà svolta congiuntamente dal Politecnico di Milano e dal Pacific Northwest National Laboratory.
In questo progetto di ricerca, la piattaforma Intel HARP verrà utilizzata per approfondire i nostri studi e per implementare un prototipo completo funzionante su una piattaforma eterogenea. Lo studio si focalizzerà sull'analisi dell'interfacciamento fra gli acceleratori e il processore e sull'impatto della cache e dei trasferimenti di dati. Verranno inoltre fatte analisi per individuare i colli di bottiglia del sistema ed individuare quindi nuove soluzioni che permettano di incrementare la scalabilità del sistema tramite l'utilizzo di nodi multipli. Questa attività di ricerca verrà svolta congiuntamente dal Politecnico di Milano e dal Pacific Northwest National Laboratory.