Skip to content

Benchmark

Three realistic Python serverless workloads measured live from your browser against two deployed workers — pymode (this domain) and Cloudflare’s Pyodide-based Python Workers (a separate *.workers.dev deployment with the same handler source).

Cold start (CF-reported at deploy time)

Cloudflare prints "Worker Startup Time" after every wrangler deploy, measured before any traffic hits the worker. These are the only honest cold-start numbers — a live page-load benchmark always finds the isolate already warmed up by someone else.

RuntimeWorker Startup Time
pymode52 ms
Cloudflare Python Workers (Pyodide)1134 ms

Warm latency (live, from your browser)

Auto-running benchmark…

CSV → JSON aggregate

POST /api/csv

POST a CSV chunk, parse with stdlib csv.DictReader, return aggregated JSON (row count + numeric column means). Real S3 / Kinesis ETL ingest pattern. Both runtimes use stdlib.

p50p99OK
pymode
Cloudflare Python Workers (Pyodide)

Regex log extract

POST /api/logs

POST nginx-style access logs, regex-extract IPs and HTTP status codes, return per-status counts and unique-IP count. Real CloudWatch / log scrubbing pattern. Stdlib re.

p50p99OK
pymode
Cloudflare Python Workers (Pyodide)

HTML link extract

POST /api/scrape

POST HTML, parse with stdlib html.parser, return list of <a href> targets. Real RSS / sitemap scraping pattern. Stdlib only.

p50p99OK
pymode
Cloudflare Python Workers (Pyodide)

Image thumbnail (Pillow)

POST /api/image

POST a JPEG, resize with Pillow. Real S3-image-upload trigger pattern. Requires Pillow — neither runtime has it deployed yet (pymode needs the variant wired into AOT; CF Pyodide can't load it). Both cells will be HTTP 501.

p50p99OK
pymode
Cloudflare Python Workers (Pyodide)

Both endpoints serve the same stdlib-only Python source. pymode runs on this domain; the Pyodide baseline lives at https://pyodide-bench.chong1222.workers.dev. The first request of each measurement is discarded as a warmup so the reported p50/p99 reflect steady-state behaviour. Latencies include network round-trip from your browser.