Wukong Logo

A scalable, high-performance, and locality-aware serverless DAG engine

โ†“

Scroll to explore

The Problem

Serverless computing meets parallel computing

Serverless computing is increasingly being used for parallel computing, which have traditionally been implemented as stateful applications. But executing complex, burst-parallel workloads on serverless platforms introduces fundamental challenges.

The Challenge

Executing complex DAG jobs at massive scale

Rapid Scaling

Serverless frameworks must rapidly scale to handle burst-parallel workloads with thousands of concurrent tasks.

High-Throughput Scheduling

Tasks must be scheduled at high throughput to keep pace with the parallelism of the computation.

Data Movement

Minimizing data movement across tasks is critical for performance โ€” shuffling data between executors is expensive.

The Insight

Decentralized
Scheduling

Rather than relying on a single centralized scheduler, Wukong distributes scheduling across Lambda executors themselves โ€” enabling tasks to be scheduled in parallel, reducing resource contention, and making task scheduling locality-aware.

Parallel SchedulingReduced ContentionData LocalityAuto-Elasticity

Key Benefits

Why decentralized scheduling wins

๐ŸŽฏ

Enhanced Data Locality

Tasks are scheduled on executors that already hold the required data, eliminating costly data transfers.

๐Ÿ“‰

Reduced Network I/O

Network I/O is reduced by multiple orders of magnitude compared to centralized approaches.

โšก

Automatic Elasticity

Resources scale automatically with workload demands โ€” no manual provisioning required.

๐Ÿ’ฐ

Cost Effective

Pay only for the compute you use. Wukong achieves 92.96% tenant-side cost savings.

Results

Performance that speaks for itself

Deployed on AWS Lambda, Wukong delivers transformative improvements across every dimension.

68.17ร—

Faster execution

10ยฒโ€“10ยณร—

Less network I/O

92.96%

Cost savings

Near-ideal

Scalability

Implementation

Built on AWS Lambda

Wukong is implemented and deployed on AWS Lambda, leveraging serverless functions as distributed executors. Each Lambda function acts as both a worker and a scheduler, enabling fully decentralized task coordination with no dedicated scheduling infrastructure.

AWS LambdaPythonDaskRedisAWS Fargate

Explore Wukong

Read the paper, explore the code, or watch the presentation.