git404hub

what is faasflow fr?

xiaorenwu234/faasflow — explained in plain English

Analysis updated 2026-05-18

25PythonAudience · researcherComplexity · 5/5Setup · hard

tl;dr

FaaSFlow is an academic research prototype of a serverless workflow engine that reduces scheduling overhead and data-transfer latency when chaining small cloud functions, published at ASPLOS 2022.

vibe map

mindmap
  root((faasflow))
    What It Does
      Serverless workflow engine
      Reduces scheduling overhead
      Faster data transfer
    Key Techniques
      WorkerSP local scheduling
      Adaptive local memory transfer
    Cluster Requirements
      8 machines minimum
      1 database and gateway
      7 worker nodes
    Research Context
      ASPLOS 2022 paper
      8 benchmark workflows
    Use Cases
      Reproduce experiments
      Compare scheduling modes

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Reproduce the benchmark experiments from the ASPLOS 2022 FaaSFlow paper using the included test scripts and eight built-in workflows.

VIBE 2

Compare centralized versus worker-local scheduling overhead by switching between modes with a single script flag.

VIBE 3

Study how passing data through local memory instead of a shared database affects latency between co-located serverless functions.

VIBE 4

Measure end-to-end latency and tail latency under bandwidth limits using the provided experiment scripts.

what's the stack?

Python

how it stacks up fr

xiaorenwu234/faasflowalexrosbach/replibookarlandaren/proagents
Stars252525
LanguagePythonPythonPython
Setup difficultyhardeasyeasy
Complexity5/52/51/5
Audienceresearcherops devopsvibe coder

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · hard time til it works · 1day+

Requires a cluster of at least eight physical or virtual machines with specific services configured and IP addresses set on each node.

in plain english

FaaSFlow is a research prototype of a serverless workflow engine, published as part of a paper accepted at ASPLOS 2022, a major computer systems conference. The project addresses a specific performance problem: when you run a chain of small functions in a serverless environment (the kind where each step is an independent unit of code that spins up on demand), there is overhead involved in scheduling each step and in passing data between them. FaaSFlow proposes two techniques to reduce that overhead. The first technique is called WorkerSP, which shifts scheduling decisions to the individual worker machines rather than a central coordinator. The idea is that if a worker already knows what steps come next in a workflow, it can handle the handoff itself without waiting for a central manager to respond each time. The second technique is an adaptive storage layer that uses the local memory of a machine to transfer data between two functions running on the same physical node, instead of writing and reading from a shared database in between. The repository is structured around reproducing the experiments from the paper. Setup requires a cluster of at least eight machines: one for the database and gateway, seven as worker nodes. The README walks through installing dependencies on each machine, configuring IP addresses in config files, and starting the right services in the right order. Experiments are run via Python scripts that measure things like scheduling overhead, data transfer time, end-to-end latency, and tail latency under network bandwidth limits. This is academic research code, not a production-ready system you would deploy to run real applications. It is designed so other researchers can reproduce the benchmarks from the paper. The eight benchmark workflows used in experiments are built into the setup scripts, and the test scripts accept flags to switch between the two scheduling modes and data modes being compared. There is no description provided for this repository beyond what the README itself contains.

prompts (copy fr)

prompt 1
Walk me through setting up the FaaSFlow 8-machine cluster: configuring IP addresses in the config files and starting gateway and worker services in the correct order.
prompt 2
Run the FaaSFlow scheduling overhead benchmark and explain what the output latency metrics mean in plain English.
prompt 3
Explain the difference between WorkerSP distributed scheduling and centralized scheduling in FaaSFlow and when each one performs better.
prompt 4
Help me adapt the FaaSFlow benchmark scripts to add a ninth workflow and measure its end-to-end latency using the same test harness.

Frequently asked questions

what is faasflow fr?

FaaSFlow is an academic research prototype of a serverless workflow engine that reduces scheduling overhead and data-transfer latency when chaining small cloud functions, published at ASPLOS 2022.

What language is faasflow written in?

Mainly Python. The stack also includes Python.

How hard is faasflow to set up?

Setup difficulty is rated hard, with roughly 1day+ to a first successful run.

Who is faasflow for?

Mainly researcher.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.