Politecnico di Torino (logo)

A graph oriented approach for implementing the MPI multicast communicator on a many-core GALS platform

Alessandro Salvato

A graph oriented approach for implementing the MPI multicast communicator on a many-core GALS platform.

Rel. Gianvito Urgese, Elisa Ficarra, Evelina Forno, Francesco Barchi. Politecnico di Torino, Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering), 2020

PDF (Tesi_di_laurea) - Tesi
Licenza: Creative Commons Attribution Non-commercial No Derivatives.

Download (3MB) | Preview

Emulation of human brain behaviour is one of the most hot topics let Computer Science and Biomedical engineers work together; today Bioinformatics and related application fields are considered emerging branches. Nowadays some software and hardware implementations exist, such as the SpiNNaker machine. SpiNNaker is a neuromorphic computer made up of hundreds of neurons. A SpiNNaker unit, called SpiNN5. A single SpiNNaker module has composed of 48 chips. Each chip integrates 18 ARM microprocessor, where one has called Monitor Processor, running low-level operating system SARK, 16 are the Application Processors and the last one has been integrated for safetly redundancy (actually not used). These 18 cores share a 128 KB Static RAM and a 128 MB Synchronous Dynamic RAM. To allow communication with the environment, each chip mounts a router, counting 1024 rows. Although SpiNNaker was born targeting spiking neural networks simulation, in years researchers have been deciding to exploit it to extend the application domain. Knowing that, globally, communication run asynchronously, but in a chip it occurs in a synchronous manner, the strong idea was on considering SpiNNaker as a set of computational object, organized in clusters, having distributed memory. To let developers deal with SpiNNaker in such manner, the SpinMPI library was implemented. It’s a light C version of the full-stack standard MPI. SpinMPI recovers the main MPI’s concepts, such as: communicator objects, rank, barrier and primitives. Currently, this extension has been released to manage unicast and broadcast scenario, missing the multicast one. This Master thesis wants to build a contribution in order to extend the state-of-art SpinMPI, by implementing some facilities for multicasting management, even when tens of groups run at the same time. It’s done by considering the big drawback SpiNNaker carries with: very small memory space for routing management. This project will present some algorithms want to fill 100 multicast groups, keeping low the memory occupation. Then, a customized synchronization handling has proposed, taking inspiration from SpinMPI previous works on broadcast communicators. Finally, in order to test the correctness of all the steps, an ad-hoc SpiNNaker simulator has been designed, allowing the user to customize the MPI algorithm running on the hardware, tune microprocessor workloads and the number of multicast groups taking part to simulation.

Relators: Gianvito Urgese, Elisa Ficarra, Evelina Forno, Francesco Barchi
Academic year: 2020/21
Publication type: Electronic
Number of Pages: 83
Corso di laurea: Corso di laurea magistrale in Ingegneria Informatica (Computer Engineering)
Classe di laurea: New organization > Master science > LM-32 - COMPUTER SYSTEMS ENGINEERING
Aziende collaboratrici: UNSPECIFIED
URI: http://webthesis.biblio.polito.it/id/eprint/15950
Modify record (reserved for operators) Modify record (reserved for operators)