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

Stateful Serverless Computing with Crucial

  • Datos identificativos

    Identificador:  imarina:9264742
    Autores:  Barcelona-Pons, Daniel; Sutra, Pierre; Sanchez-Artigas, Marc; Paris, Gerard; Garcia-Lopez, Pedro
    Resumen:
    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.
  • Otros:

    Enlace a la fuente original: https://dl.acm.org/doi/10.1145/3490386
    Referencia 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
    Referencia al articulo segun fuente origial: Acm Transactions On Software Engineering And Methodology. 31 (3): 39-
    DOI del artículo: 10.1145/3490386
    Año de publicación de la revista: 2022
    Entidad: Universitat Rovira i Virgili
    Versión del articulo depositado: info:eu-repo/semantics/publishedVersion
    Fecha de alta del registro: 2025-03-15
    Autor/es de la URV: Barcelona Pons, Daniel / García López, Pedro Antonio / Sanchez Artigas, Marc
    Departamento: Enginyeria Informàtica i Matemàtiques
    URL Documento de licencia: https://repositori.urv.cat/ca/proteccio-de-dades/
    Tipo de publicación: Journal Publications
    Autor según el artículo: Barcelona-Pons, Daniel; Sutra, Pierre; Sanchez-Artigas, Marc; Paris, Gerard; Garcia-Lopez, Pedro
    Acceso a la licencia de uso: https://creativecommons.org/licenses/by/3.0/es/
    Áreas temáticas: Ciência da computação, Computer science, software engineering, Engenharias iii, Software
    Direcció de correo del autor: pedro.garcia@urv.cat, marc.sanchez@urv.cat, daniel.barcelona@urv.cat, daniel.barcelona@urv.cat
  • Palabras clave:

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

  • Cerca a google

    Search to google scholar