DeepAI AI Chat
Log In Sign Up

Faasm: Lightweight Isolation for Efficient Stateful Serverless Computing

by   Simon Shillaker, et al.

Serverless computing is an excellent fit for big data processing because it can scale quickly and cheaply to thousands of parallel functions. Existing serverless platforms, however, isolate functions in ephemeral, stateless containers. This means that functions cannot efficiently share memory, forcing users to serialise data repeatedly when composing functions. We observe that container-based isolation is ill-suited for serverless big data processing. Instead it requires a lightweight isolation approach that allows for efficient state sharing. We introduce Faaslets, a new isolation abstraction for serverless big data computing. Faaslets isolate the memory of executed functions using software-fault isolation (SFI), as provided by WebAssembly, while allowing memory regions to be shared between functions in the same address space. Faaslets can thus avoid expensive data movement when functions are co-located on the same machine. Our runtime for Faaslets, Faasm, isolates other resources, e.g. CPU and network, using standard Linux cgroups, and provides a low-level POSIX host interface for networking, file system access and dynamic loading. To reduce initialisation times, Faasm restores Faaslets from already-initialised snapshots. We compare Faasm to a standard container-based platform and show that, when training a machine learning model, it achieves a 2x speed-up with 10x less memory; for serving machine learning inference, Faasm doubles the throughput and reduces tail latency by 90


A Survey on Spark Ecosystem for Big Data Processing

With the explosive increase of big data in industry and academic fields,...

Performance Evaluation of Big Data Processing Strategies for Neuroimaging

Neuroimaging datasets are rapidly growing in size as a result of advance...

Graalvisor: Virtualized Polyglot Runtime for Serverless Applications

Serverless is a new attractive computing model that offers great scalabi...

CAP-VMs: Capability-Based Isolation and Sharing for Microservices

Cloud stacks must isolate application components, while permitting effic...

ROLP: Runtime Object Lifetime Profiling for Big Data Memory Management

Low latency services such as credit-card fraud detection and website tar...

TRANSMUT-SPARK: Transformation Mutation for Apache Spark

We propose TRANSMUT-Spark, a tool that automates the mutation testing pr...

RDMA Performance Isolation With Justitia

Despite its increasing popularity, most of RDMA's benefits such as ultra...