Offloading Techniques to Improve Performance on MPI Applications in NoC-Based MPSoCs
Eduardo Fernández Alonso · TDX (Tesis Doctorals en Xarxa) · 2014
Probablement, el sistema-en-xip encastat futur estara compost per desenes o centenars de nuclis de Propietat Intel·lectual heterogenis que executaran una aplicacio paral·lela o fins i tot diverses aplicacions que funcionin en paral·lel. Aquests sistemes seran possible gracies a l'evolucio constant de la tecnologia que segueix la llei de Moore, que ens dura a integrar mes transistors en un unic dau, o el mateix nombre de transistors en un dau mes petit. En els sistemes MPSoC encastats, les xarxes intenrades (NoC) poden proporcionar una infraestructura de comunicacio flexible, en que diversos components, com ara els nuclis microprocessadors, MCU, DSP, GPU, memories i altres components IP, poden estar interconnectats. En primer lloc, en aquesta tesi presentem un proces de desenvolupament complet creat per desenvolupar MPSoC en clusters reconfigurables tot complementant el proces de desenvolupament SoC actual amb passos addicionals per admetre la programacio paral·lela i l'optimitzacio del software. Aquest treball explica de manera sistematica els problemes i les solucions per aconseguir un MPSoC basat en FPGA seguint el nostre flux sistematic, i s'ofereixen eines i tecniques per desenvolupar aplicacions paral·leles per a aquests sistemes. D'altra banda, descrivim diversos models de programacio per a MPSoC encastats i proposem adoptar MPI per a aquests sistemes, i mostrem algunes implementacions creades en aquesta tesi amb arquitectures de memoria compartida i distribuida. Finalment, ens centrem en la sobrecarrega de temps que produeix la llibreria MPI i intentarem trobar solucions per tal de minimitzar aquesta sobrecarrega i, per tant, poder accelerar l'execucio de l'aplicacio, descarregant algunes parts del software stack al controlador d'interficie de la xarxa.