Serverless Everywhere: A Comparative Analysis of WebAssembly Workflows Across Browser, Edge, and Cloud
Mario Colosi, Reza Farahani, Lauri Loven, Radu Prodan, Massimo Villari
TL;DR
The paper addresses evaluating WebAssembly-based serverless workflows across browser, edge, and cloud using a unified experimental framework. It implements a DAG-based Wasm workflow (wasm32-wasi) and systematically compares AOT versus JIT compilation, with and without pre-warming, across three execution environments. The study reports end-to-end metrics (cold/warm startup, per-step latency, workflow makespan, throughput) and system metrics (CPU, memory) to characterize cross-environment trade-offs. The findings show that warm and AOT configurations reduce startup time, with the browser excelling at small payloads and edge/cloud surpassing for larger payloads, providing practical guidance for cross-environment orchestration decisions.
Abstract
WebAssembly (Wasm) is a binary instruction format that enables portable, sandboxed, and near-native execution across heterogeneous platforms, making it well-suited for serverless workflow execution on browsers, edge nodes, and cloud servers. However, its performance and stability depend heavily on factors such as startup overhead, runtime execution model (e.g., Ahead-of-Time (AOT) and Just-in-Time (JIT) compilation), and resource variability across deployment contexts. This paper evaluates a Wasm-based serverless workflow executed consistently from the browser to edge and cloud instances. The setup uses wasm32-wasi modules: in the browser, execution occurs within a web worker, while on Edge and Cloud, an HTTP shim streams frames to the Wasm runtime. We measure cold- and warm-start latency, per-step delays, workflow makespan, throughput, and CPU/memory utilization to capture the end-to-end behavior across environments. Results show that AOT compilation and instance warming substantially reduce startup latency. For workflows with small payloads, the browser achieves competitive performance owing to fully in-memory data exchanges. In contrast, as payloads grow, the workflow transitions into a compute- and memory-intensive phase where AOT execution on edge and cloud nodes distinctly surpasses browser performance.
