Reading up on performance
100 deep · digging since dec 05, 25
- So long, Spokes: GitHub rewrites storage to restore reliability, just in time for agentic hordes
GitHub is rewriting its Git storage architecture, replacing the Spokes system with Azure Blob Storage to achieve a 35× write performance boost for agent-driven traffic.
- It’s official: Airline websites are slow, but they don’t have to be
Analysis of 111 airline websites shows 95% fail Google’s Core Web Vitals on mobile, with top‑rated carriers like Qatar Airways and Cathay Pacific among the slowest.
- Shipping JPEG XL in Chrome | Blog
Chrome 155 adds JPEG XL decoding, delivering 30‑50% better compression than JPEG, HDR support and lossless transcoding via a memory‑safe Rust decoder.
- How fast is the web? Explore billions of real-user measurements with BEACON
Cloudflare releases the BEACON dataset, offering billions of anonymized real‑user performance measurements to reveal how web speed varies across browsers, devices, regions and site types.
- Node.js at scale, rebalanced: how we cut cost by 38%
By optimizing their largest Node.js service, the team reduced compute expenses by 38% through targeted performance improvements, better resource allocation, and refined workload scaling.
- Solving Factorio Quality
The article describes methods and tools used to improve the quality and stability of the Factorio game through modding, optimization, and community feedback.
- The Grand Unifying Architecture of Frontend - DEV Community
The article proposes a unified frontend architecture based on client navigation, server content, and client affordances, showing how various frameworks fit this three‑layer model.
- The Bitter Lesson
Over 70 years of AI research, methods that scale with computation—search and learning—consistently beat approaches that encode human knowledge, despite short-term gains from the latter.
- S3 Is the Future, S3 Is the Past
S3's architecture is built for disk-era limits, but with cheap SSDs and fast networks, a new SSD-based disaggregated storage service could replace it — cloud providers lack incentive.
- Database Architects: Safe Optimistic Lock Coupling
Lock coupling causes physical contention on root-node locks, limiting scalability despite no semantic contention among concurrent lookups, as shown by benchmark on a 16‑core 9950X3D with a 100,000‑node binary tree.
- Why strict memory overcommit matters for Postgres
ClickHouse Managed Postgres enables strict memory overcommit so that out‑of‑memory conditions fail a single query instead of triggering an instance‑wide OOM restart, with no measurable throughput loss.
- Fast poker hand evaluation via hardware synthesis and bitslicing
Using hardware synthesis and bitslicing, the author generates fast C/WebGPU poker hand evaluators for Hold'em and Omaha, achieving up to 100× speedup over table‑based methods.
- Saving another 100TB of RAM
This piece describes a technique or system change that freed an additional 100TB of RAM in data-center operations.
- Can a language model run in Linux eBPF?
Running Qwen3-0.6B’s 28 decoder layers in Linux eBPF shows token inference possible but slow (~1.2 s), highlighting tradeoffs in fixed‑point math, memory, and INT4 quantization.
- State of Zig game development
The author details porting a moto trials prototype from WebGL to a native Zig/WebGPU game, overcoming tooling and binding issues to achieve 120‑210 fps.
- 700 TPS on Kimi K3: A Case for TPU Megakernels
Inferact's TPU‑v7 megakernel for Kimi K3 achieves over 700 tokens per second with speculative decoding, nearly double the GB200 baseline at batch size 1.
- Basic Linear Algebra Subprograms - Wikipedia
BLAS defines standard low-level linear algebra routines used as the foundation for optimized numerical libraries like LAPACK and MATLAB.
- Rails World 2026 Opening Keynote - DHH
DHH’s Rails World 2026 keynote reveals Hey’s backend rewritten in Rust by AI agents, cutting needs from 110 to 10 servers and hinting at Rails’ declining role.
- Faster SSE Responses with Async Generators and Promise.race()
The article shows how async generators combined with Promise.race let Express SSE handlers stream database query results as each finishes, improving perceived load time.
- How we made claude.ai 3x faster in two weeks / claude.dev
Claude and engineers made claude.ai 3x faster in two weeks by using Claude to build benchmarks, find bottlenecks, and ship 3,000 changes safely.
- Introducing System One Models & Jev - TypeSafe AI Blog
TypeSafe AI releases Jev, a System One model that provides structured, hallucination-free decisions at sub-500ms speeds, aiming to replace LLMs for automation workflows.
- A summer of AI optimization
The maintainer of several widely-used C++ open-source libraries (ada, fastfloat, simdjson, simdutf) shares a summer of AI-optimization work on them.
- A summer of AI optimization
The author spent the summer using AI techniques to optimize several widely used open-source libraries, including ada, fastfloat, simdjson, and simdutf.
- Saturation at GitHub: the saga continues – Surfing Complexity
A GitHub cleanup job saturated a database primary because its safeguard monitored only replica lag, not primary load, causing site-wide errors.
- Mac mini alternatives for local LLMs: M6, M5 and Strix Halo
For local LLMs, memory bandwidth and size determine token speed and model capacity; Strix Halo offers more memory per dollar, while Apple Macs with higher bandwidth generate tokens faster.
- Faster previews, soon powered by OJ
Lovable's new Rust-based dev server OJ makes preview startups up to 4× faster and uses a fraction of Vite's memory, now open‑sourced on GitHub.
- How SpaceX Streamlined the Raptor Engine - by Brian Potter
SpaceX streamlined the Raptor engine by eliminating external sensors, igniters, bolted flanges, and internalizing piping via 3D printing, raising thrust about 35% while reducing mass.
- Homebrew: 7.0.0
Homebrew 7.0.0 launches with faster installs, stronger sandboxing, a native macOS app, built‑in vulnerability checks, and drops macOS 10.15 support while moving Intel Macs to Tier 3.
- Connection reuse is the money
By reusing TLS connections with Undici keep‑alive, the webhook sender eliminated most handshakes, cutting latency and saving over $2,000 monthly.
- Introducing TIN: full-text search for Postgres — PlanetScale
PlanetScale announces TIN, a Postgres full‑text search extension that outperforms existing indexes with up to 57× higher query throughput and lower latency.
- Speculative Decoding in vLLM on AMD GPUs
Speculative decoding in vLLM enables vLLM to verify multiple draft tokens per target-model pass, boosting throughput on AMD GPUs depending on drafting method and acceptance rate.
- Finding Slow Code with Wrapture
Wrapture instruments Python code to measure self-time and aggregate statistics, identifying slow methods without modifying application code.
- I made a build profiler to understand Bun’s compile times - Lalit Maganti
The author built buildprof to trace Bun's compile times, revealing that Full LTO linking and a monolithic Zig module caused slow builds, which improved with ThinLTO and crate splitting.
- Pandas Should Go Extinct
Pandas becomes inefficient beyond tens of gigabytes, but most analytics workloads stay under 100 GB and are better served by single‑machine tools like Polars or DuckDB.
- A 20-Minute Workout for Aging Well
A short, 20‑minute routine of specific exercises improves strength and mobility, making it easier for older adults to rise from the floor safely and independently.
- Eliminating Go bounds checks with unsafe
The article shows how using Go's unsafe package to perform pointer arithmetic can eliminate bounds checks in hot paths, yielding over 2x speedup in benchmarks.
- Signals and Threads
Andrew Hunter contrasts hyperscale performance tuning, where tiny changes yield big savings, with latency‑focused trading systems where profiling must capture rare, critical moments.
- The browser's main thread is expensive
The article explains that running work on the browser's main thread incurs significant performance costs, advocating offloading tasks to workers.
- Zod 4.5
Zod 4.5 introduces ahead‑of‑time schema compilation with z.compile(), cutting memory use up to 9× and adding features like z.creditCard() and z.validate().
- Python sets and dictionaries can have quadratic-time performance
Python's built‑in set and dict types can exhibit quadratic‑time behavior when many elements hash to the same bucket, causing worst‑case O(n²) performance.
- Static Allocation, Constant Work
The piece shows that fixing a maximum object count and always iterating the full array with sentinel values prevents use‑after‑free type confusion and guarantees flat latency under load.
- Use Speedlify2 to Continuously Measure Website Performance—zachleat.com
Speedlify2 automates continuous website performance measurement for 1565 sites using parallel GitHub Actions runs, decoupled ranking, and more detailed metrics like Core Web Vitals and Axe CLI.
- Web-Perf Wednesday 006 – Faster Browser Releases Change Your RUM Population – CSS Wizardry
Chrome and Firefox shifting to fortnightly release cycles means RUM cohorts become smaller and faster-changing, requiring release-aware analysis and annotations to avoid misinterpreting performance shifts.
- Optimizing On Device Inference For Apple Silicon
The article explains how developers can optimize on-device inference performance on Apple Silicon chips by leveraging Core ML, Metal, and efficient model quantization.
- Compute that takes any shape - Vercel
Vercel's Fluid compute architecture dynamically assembles tailored machines for builds, sandboxes, and functions, enabling instant provisioning and efficient resource use.
- What every programmer should know about memory, Part 1 [LWN.net]
Ulrich Drepper’s LWN series introduces programmers to modern memory hardware, explaining DRAM, caches, NUMA, and how hardware limits affect software performance.
- How we cut 4,403 backend tests from 10 minutes to 33 seconds with Bun
EvryStay migrated 4,403 backend tests from Jest to Bun, optimized MongoDB usage and test parallelism, reducing full suite runtime from 10 minutes to 33 seconds on an M5 Pro.
- Fast unicode (UTF-8) validation with autovectorization
A branchless, autovectorized UTF-8 validation algorithm using a 4-byte lookbehind window achieves 10-80 GB/s, far outperforming branchy and DFA validators.
- There's no reason for software to be slow anymore
Modern hardware advances and efficient tooling eliminate any justification for sluggish software, arguing performance issues stem from avoidable developer choices.
- Saving 100 terabytes of memory by optimizing 1.1.1.1's DNS cache
Cloudflare cut over 100 terabytes of RAM used by its 1.1.1.1 DNS cache by redesigning cache layout and eviction policies without hurting query latency.
- Symmetries in boolean scans
The article shows that by exploiting symmetries of boolean scans, only three primitives (∧, <, ≠) need fast implementations to derive all others efficiently.
- Amdahl’s Law: The Speedup You Cannot Exceed – Infinite Limit
Amdahl's law shows that overall speedup is limited by the unchanged fraction of workload, with maximum speedup S_max = 1/(1−f) as component speedup → ∞.
- The Cloudflare Blog – Brought to you by EmDash
Cloudflare moved its blog to EmDash on Cloudflare Workers, added caching, redesigned the UI, and rolled out traffic gradually to boost performance and enable agent tools.
- There's no reason for software to be slow anymore
AI dramatically reduces the cost of software optimization, enabling workload-specific performance gains that were previously too expensive to pursue.
- The Mature Optimization Handbook
Carlos Bueno’s Mature Optimization Handbook argues that performance work should be measured, deferred until systems mature, and focused on the small critical fraction where gains outweigh costs.
- JP's Website · 2026-08-22 · Why aren't my two Cortex-A9 cores cache coherent?
On a Terasic DE0-Nano-SOC, two Cortex-A9 cores cannot see each other's memory writes despite enabled MMU, caches, and SCU, revealing a cache coherence failure.
- Fast and Hard Code
LLMs diminish the need to learn language specifics, letting developers choose languages like Rust and Zig for speed and size, and tackle complex low‑level projects without deep expertise.
- Critical CSS Generator - Kigo Studio
Kigo Studio’s Critical CSS Generator extracts above‑the‑fold styles, shows how to inline or defer them, and includes an HN discussion on its utility and concerns.
- Pitfalls of Benchmarking on Modern Systems
Benchmarking modern systems is unreliable due to JIT optimizations, OS scheduling, hardware variability, and environmental factors, requiring careful controls or many runs to understand true performance.
- Three ways to smuggle SQLite into Nix
The author demonstrates four methods—exec, importNative, giant Nix file, and WASM—to embed SQLite queries in Nix, comparing their speed and resource usage.
- One line of JavaScript disabled server rendering on 190 pages
A single window.innerWidth read during server render threw an error, causing Next.js to fall back to client-side rendering and produce soft 404s on ~190 pages.
- SQLite for Everything
SQLite can replace many specialized systems—search, document store, queue, cache, vector DB, etc.—by serving as a single-file, zero‑maintenance database for applications.
- Why you might want to build your WebApp in Canvas instead of HTML
The article argues that Canvas can be a better choice than HTML for web apps with complex spatial interfaces like zoomable workspaces, but warns it sacrifices accessibility and built-in browser features.
- Announcing TanStack Table V9
TanStack Table V9 introduces a tree-shakable architecture, improved performance with up to 86% less memory usage, and first-class support for ten framework adapters via TanStack Store.
- Octane — React's programming model, compiled
Octane compiles React‑style hooks, Suspense and actions ahead of time, removing the virtual DOM and hook rules while preserving familiar semantics.
- mostlyobvio.us — Curiosity reduced the heap size by 60%
By modifying OpenTelemetry's AWS SDK instrumentation to skip autoloaded services, the author cut Ruby heap usage from 163.8 MB to 67.1 MB, a ~60% reduction.
- Framework Benchmarks - Compare Frontend Frameworks
The article presents a nightly benchmark suite comparing bundle size, performance, and developer experience across major frontend frameworks to aid framework selection.
- Everyone should know SIMD
The article argues that programmers should learn SIMD techniques to improve performance in data-parallel workloads, covering basics, benefits, and practical examples.
- Do we still need build tools?
The article argues that while modern CSS and JS features reduce the need for many build tools, bundling and minification remain essential for larger projects.
- Sätteri
Sätteri combines a high-performance Rust Markdown/MDX engine with extensible JavaScript plugins to offer fast, customizable document processing for developers in web applications.
- An interactive visualization that follows a single HTTP request through its entire ~200ms life — DNS, TCP, TLS, the kernel, Node's event loop, Postgres, and back
The visualization walks through a single HTTP request's ~211 ms journey, showing DNS, TCP, TLS, kernel, Node event loop, Postgres, and rendering.
- lobste.rs is now running on SQLite
Lobsters successfully moved from MariaDB to SQLite, cutting CPU and memory use, halving VPS costs, and keeping the site responsive after migration.
- Model Routing Is Simple. Until It Isn’t.
IBM Research argues effective model routing is a systems optimization problem balancing cost, latency, and accuracy, not a simple classification task.
- How Good Is Jon Hamm at Playing Jon Hamm?
Jon Hamm's ability to parody himself on screen is evaluated as a rare skill in the tricky practice of casting celebrities as fictionalized versions of themselves.
- Reverse Engineering ChatGPT Web: How OpenAI Built for a Billion Users
OpenAI powers ChatGPT's web experience for a billion users with React Router 7 streaming SSR, Tailwind CSS, off‑the‑shelf components, and aggressive feature flagging.
- ADA Q&A: Inside the world of Cyberpunk 2077 - Discover - Apple Developer
CD PROJEKT RED discusses balancing visual fidelity and identity with performance scaling to bring Cyberpunk 2077 natively to Mac using Metal, MetalFX, and the Game Porting Toolkit.
- 14 value stocks of companies primed for rapid growth through 2028 - MarketWatch
MarketWatch identifies 14 value stocks from the Russell 1000 Value Index with high revenue growth estimates through 2028, noting value stocks tend to outperform growth during high inflation.
- Fintech Engineering Handbook
Hacker News commenters debate whether monetary values must always be stored as integers, with quants arguing floats suffice for risk modeling but transfers require exact integer precision.
- Autoresearch, Claude and Constrained Optimization
An experiment using Claude Code to autonomously optimize a file compression algorithm over 10 iterations, achieving competitive results against standard tools by iterating on an LZSS-based approach.
- Iterating faster with TypeScript 7
The VS Code team incrementally adopted TypeScript 7, a Go port of the compiler, achieving 4–7× speedups in builds and editor tooling.
- Nub — an all-in-one toolkit for Node.js
Nub is a TypeScript-first toolkit for Node.js that provides a faster npm/pnpm run, a pnpm-compatible package manager, and a Node version manager, with no lock-in.
- How OpenAI Delivers Low-Latency Voice AI for 900M Users
OpenAI splits WebRTC into a stateless relay and a stateful transceiver, using the ICE ufrag for routing to serve 900M voice AI users with low latency.
- You might not need… a service worker
Service workers are essential for offline support, push notifications, and background sync, but other use cases are often better solved with simpler alternatives like HTTP caching or server-side logic.
- I rewrote PostHog's SQL parser, 70x faster, while barely looking at the code
PostHog's engineer used parallel Claude Code sessions to rewrite their SQL parser, achieving a 70x speedup by fuzzing against the old ANTLR-based parser as an oracle.
Takes
Just to avoid some confusion: auto-compact does summarize. When it runs, your whole conversation is replaced by a short summary. It doesn't keep the last 1M tokens around. The ~967K is only when it runs on 1M models. Compacting itself is just one request that reads about as many tokens as the message you sent right before it, and it's mostly cache reads if your cache is still warm. What @rohit3a found is that waiting until 967K means every message before that point uses a lot of tokens, because each one includes your whole conversation so far. Most of it is read from the cache, which is much cheaper (so this is usually fine as long as your cache is warm), but it still counts toward your usage and adds up as your conversation grows. /autocompact 400k makes it summarize at 400K instead, so your messages never get that big.
@lydiahallie
Reminder that I don't think you should run agents on a Mac unless you absolutely have to. It will slow you down massively and is not worth it.
@theo
An early preview of experimental Bun + JSC with ahead-of-time compilation For Claude Code's CLI: 24% faster startup, 48% lower memory, 46% lower CPU, and nearly 2x larger binary size
@jarredsumner
A video explaining a handful of the tricks we use to optimize for memory within the Superlogical server: in-memory compression, moving file descriptors between event-driven and blocked threads dynamically, full terminal state binary snapshot/restore in microseconds, and more!
@mitchellh
We are open sourcing `cn`, a new engine for Tailwind class merging and conflict resolution. It is a drop-in replacement for tailwind-merge and clsx. It works with all frameworks, runs everywhere and is 30x faster. Brought to you by @aidenybai and me. https://github.com/shadcn-ui/cn
@shadcn
YOU, struggling with $83 MRR: rewrote it all in Next.js, SSR at the edge, prefetch on hover, 100 lighthouse score, 40ms TTFB from Bali to SF META employee, paid $500k / year 👇
@tibo_maker
My SEO setup so far: • sitemap.xml submitted and cleaned up • robots.txt configured • Google Search Console + Bing Webmaster connected • Meta titles and descriptions • Canonical issues fixed • Duplicate/redirect issues cleaned up • www → non-www 301 redirect fixed • Cloudflare DNS / SSL issue resolved • Internal links cleaned up • Structured data / JSON-LD added • Page speed + Core Web Vitals optimized • llms.txt + openapi.json added • Pillar pages + content clusters • Crawl depth under 4 + thin content check • Entity optimization • Quality backlinks What else am I missing?
@TeeDevh
Stagehand v4 has one mission: Destroy Playwright. Stagehand now runs INSIDE the browser, enabling the same speed as a local browser but at massive scale. If your agent uses the Playwright MCP, you'll get a 2x perf boost just by switching. http://stagehand.dev
@pk_iv
Fable one-shotted a Rust rewrite of the TerminalTextEffects Python library in 11M tokens. Startup time went from 87ms to 2ms and rendering speed is up by 9.6x. Now zero dependencies and a 3mb single exec 🤯 https://claude.ai/code/artifact/287825bc-7aad-4541-a7e7-fa4ba8d03612
@dhh
Fable just found a 15-30% memory efficiency improvement in Turbopack / Next.js, nearly autonomously. @tobi asked me today: what have been your “holy s***” moments with AI? My answer was: it’s every single week. And it’s accelerating. In fact, “WTFs/day” might just be my favorite metric for AI progress. It’s one thing to read benchmarks or stories online. It’s another to watch these machines pull engineering feats every day. 3 days ago? Sol helped us find novel vulnerabilities in some of the most audited code in the world. Today? Fable helps us ship this large optimization of a very complex Rust codebase. I just saw some results of work we’ve done to shrink binaries by 10-20x. List goes on.
@rauchg
Today we're announcing the completion of one of the largest engineering projects in the company's history: We rebuilt the X Android app from scratch It's faster, smoother and more reliable. But most of all: it will enable us to build new features at lightning speed.
@nikitabier
Today we're publicly launching Cloud Run sandboxes. Here, I start, execute, and stop 1,000 sandboxes in 5s with an average of 500ms latency:
@steren
Ghostty is now indisputably the fastest terminal emulator at IO throughput, by a very large margin. On ASCII, Unicode, and CSI tests, Ghostty is more than 2x (double!) faster than any other leading "fast" terminal. These changes are directly in libghostty, too, so everyone wins. `time cat 150MB_ascii.txt`: - Ghostty nightly: 575ms - Ghostty 1.3.2: 1.5sec - Alacritty: 1.2sec - Kitty: 1.7sec - Warp: 3.8sec - iTerm2, Terminal: stopped after 60s `time cat 150MB_unicode.txt` (mixed languages): - Ghostty nightly: 536ms - Ghostty 1.3.2: 1.22sec - Alacritty: 1.05s - Kitty: 1.35s - Warp: 3.4s - iTerm2, Terminal: stopped after 60s `DOOM-Fire-Zig` (an IO test): - Ghostty nightly: 842fps - Ghostty 1.3.2: 532fps - Kitty: 485fps - Alacritty: 593fps - Warp: 577fps - iTerm2, Terminal: 60fps (yes, 60) To quickly address the "cat speed doesn't matter" naysayers: this is a direct test of how many bytes/second you can push through a terminal. It doesn't cover just "read big file" but also "how much can a TUI do". The tests above test various shapes of inputs (plain ascii, unicode/wide chars, csi-heavy loads, etc.). IO throughput is incredibly important. Most of these improvements apply to libghostty-vt consumers too, so any libghostty-based terminals will instantly see huge throughput improvements by simply upgrading (ABI compatible). I'll cover the exact improvements in a blog post in the future. These results are the result of 6 separate optimizations.
@mitchellh
Mind boggling to me that I can make a thing faster and there's always people that ask "but why?" What kind of mentality is that? The pursuit of excellence does not need justification. Also, I find in so many cases, we can't know the impact of an improvement until we do it. For example, one I've talked about before: Ghostty's high IO throughput has enabled terminal program (emulator and TUI) fuzzing at a speed thats incomparably fast to prior solutions. This has resulted in upstream patches to resolve issues in popular projects like btop, tmux, and more. Speed enabled that anecdotally example that lifted the tides of adjacent communities that don't rely on Ghostty technology at all. I didn't predict this. Make things better because they can be better and let the results naturally play out.
@mitchellh
Sonnet 5 is here. It's worse than Opus 4.8 on nearly every benchmark... Does that mean it's useless? Absolutely not. Use it with Claude Code Dynamic Workflows! 1. /model set to Sonnet 5 2. /effort set to Ultracode 3. Any complex task will kick off a dynamic workflow This will only become more powerful when Fable is back. You'll use Fable 5 as the superintelligent advisor and Sonnet 5 as the fast and efficient implementer.
@daniel_mac8
literally this. basically just never use google fonts and you'll be miles ahead of everyone else.
@Shpigford