Articles producció científicaEnginyeria Informàtica i Matemàtiques

Stateful Serverless Computing with Crucial

  • Dades identificatives

    Identificador:  imarina:9264742
    Autors:  Barcelona-Pons, Daniel; Sutra, Pierre; Sanchez-Artigas, Marc; Paris, Gerard; Garcia-Lopez, Pedro
    Resum:
    Serverless computing greatly simplifies the use of cloud resources. In particular, Function-As-A-Service (FaaS) platforms enable programmers to develop applications as individual functions that can run and scale independently. Unfortunately, applications that require fine-grained support for mutable state and synchronization, such as machine learning (ML) and scientific computing, are notoriously hard to build with this new paradigm. In this work, we aim at bridging this gap. We present Crucial, a system to program highly-parallel stateful serverless applications. Crucial retains the simplicity of serverless computing. It is built upon the key insight that FaaS resembles to concurrent programming at the scale of a datacenter. Accordingly, a distributed shared memory layer is the natural answer to the needs for fine-grained state management and synchronization. Crucial allows to port effortlessly a multi-Threaded code base to serverless, where it can benefit from the scalability and pay-per-use model of FaaS platforms. We validate Crucial with the help of micro-benchmarks and by considering various stateful applications. Beyond classical parallel tasks (e.g., a Monte Carlo simulation), these applications include representative ML algorithms such as k-means and logistic regression. Our evaluation shows that Crucial obtains superior or comparable performance to Apache Spark at similar cost (18%-40% faster). We also use Crucial to port (part of) a state-of-The-Art multi-Threaded ML library to serverless. The ported application is up to 30% faster than with a dedicated high-end server. Finally, we attest that Crucial can rival in performance with a single-machine, multi-Threaded implementation of a complex coordination problem. Overall, Crucial delivers all these benefits with less than 6% of changes in the code bases of the evaluated applications.
  • Altres:

    Enllaç font original: https://dl.acm.org/doi/10.1145/3490386
    Referència de l'ítem segons les normes APA: Barcelona-Pons, Daniel; Sutra, Pierre; Sanchez-Artigas, Marc; Paris, Gerard; Garcia-Lopez, Pedro (2022). Stateful Serverless Computing with Crucial. Acm Transactions On Software Engineering And Methodology, 31(3), 39-. DOI: 10.1145/3490386
    Referència a l'article segons font original: Acm Transactions On Software Engineering And Methodology. 31 (3): 39-
    DOI de l'article: 10.1145/3490386
    Any de publicació de la revista: 2022
    Entitat: Universitat Rovira i Virgili
    Versió de l'article dipositat: info:eu-repo/semantics/publishedVersion
    Data d'alta del registre: 2025-03-15
    Autor/s de la URV: Barcelona Pons, Daniel / García López, Pedro Antonio / Sanchez Artigas, Marc
    Departament: Enginyeria Informàtica i Matemàtiques
    URL Document de llicència: https://repositori.urv.cat/ca/proteccio-de-dades/
    Tipus de publicació: Journal Publications
    Autor segons l'article: Barcelona-Pons, Daniel; Sutra, Pierre; Sanchez-Artigas, Marc; Paris, Gerard; Garcia-Lopez, Pedro
    Accès a la llicència d'ús: https://creativecommons.org/licenses/by/3.0/es/
    Àrees temàtiques: Ciência da computação, Computer science, software engineering, Engenharias iii, Software
    Adreça de correu electrònic de l'autor: pedro.garcia@urv.cat, marc.sanchez@urv.cat, daniel.barcelona@urv.cat, daniel.barcelona@urv.cat
  • Paraules clau:

    faas
    in-memory
    stateful
    synchronization
    Communication
    Serverless
    Computer Science
    Software Engineering
    Software
    Ciência da computação
    Engenharias iii
  • Documents:

  • Cerca a google

    Search to google scholar