Faasm: Lightweight Isolation for Efficient Stateful Serverless Computing
summary
Faasm implements thread-based Faaslets on WebAssembly SFI to let co‑located functions share memory directly, use a minimal POSIX host interface, and restore snapshots in ~500 µs with ~90 KB incremental memory. Compared to container platforms, it claims ~2× faster ML training with 10× less memory, ~2× inference throughput and 90% tail‑latency reduction, over 100k concurrent instances per host (≈12× density) and up to ~1000× faster cold‑start churn.
AI-written summary · about
chapters (19)
- 0:00Faasm and serverless challenges
- 1:12Serverless isolation and state sharing problems
- 2:57Existing solutions and limitations
- 3:58Why WebAssembly for isolation
- 6:45Faasm’s Phaselets and state
- 8:10Phaselet host interface and languages
- 9:34Proto-Phaselets for snapshot/restore
- 11:00Faasm’s state and programming model
- 13:06Phaselets share memory safely
- 13:48Two-tier state sync: push and pull
- 14:29Serialization-free data transfer
- 15:09Evaluation: Isolation overheads vs containers
- 16:53Evaluation: Function churn and cold starts
- 17:55Evaluation: ML training performance
- 18:59Evaluation: Network transfers in ML
- 19:19Evaluation: Inference latency and throughput
- 20:43Evaluation: Dynamic language performance
- 21:03Evaluation: Microbenchmarks and overheads
- 22:08Summary and open-source
related talks
12mFaaS Platform Engineering with Wasm
15mFaastlane: Accelerating Function-as-a-Service Workflows
12mFaaSNet: Scalable and Fast Provisioning of Custom Serverless Container Runtimes...
22mUnFaaSener: Latency and Cost Aware Offloading of Functions from Serverless Platforms
26mGoing Faaster: Function as a Service at Netflix
39mFaaS: A Contemporary, Comparative Study
34mFaaS and Furious - 0 to Serverless in 60 Seconds, Anywhere
26mWebAssembly as a cloud-native runtime for serverless functions
