The Euro-Par 2021 is the first conference that covers all aspects of parallel and distributed processing (parallel and distributed systems and infrastructures, fundamental computational problems, full-fledged applications, architecture, compiler, language and interface design and implementation, tools, support infrastructures, and application performance aspects).
This year the conference is going to take place from 30 August to 3 September 2021 online.
On 3 September, Francesc Lordan, researcher at Barcelona Supercoming Center, presents the paper "Colony: Parallel Function as a Service in the Cloud-Edge Continuum". The talk introduces Colony: an innovative software solution, developed by BSC and to be further extended in the context of the AI-SPRINT project, to ease the programming and running of FaaS applications on Cloud-Edge environments.
The framework proposes organizing the devices composing the infrastructure resembling organic colonies where autonomous individuals group together to achieve a higher purpose: in this case, reducing the compute time to provide a better user experience. Each device member of a colony offers its embedded compute resources so other members execute serverless functions on them; in exchange, it obtains a platform where to offload the compute-intensive parts of the application. At the same time, colonies can be part of larger colonies; thus, the framework allows organizing the infrastructure in a hierarchic peer-to-peer manner that matches the geophysical distribution of its devices to better-exploit the benefits of low latencies between nearby devices. To deal with the connectivity issues that mobile devices arise, Colony topologies are fluent, and its organization can be dynamically adjusted according to changes on the physical device distribution.
To ease the development of applications, Colony natively adopts the COMPSs programming model to convert the logic of the submitted functions into task-based workflows. Thus, the workload of a function can run in parallel and be shared out among all the nodes of the infrastructure. The COMPSs programming model supports both atomic and persistent task; therefore, Colony allows developers to use one single programming model to code services either triggering computation on data changes (sense-process-actuate model), processing continuous data inputs (stream processing) or launching large computations on demand by service users or administrators (batch processing).