---
title: "Performance"
description: "817 posts about Performance, summarised, each linking to the original."
---

# Performance
> 817 posts about Performance, summarised, each linking to the original.

## Articles

### [\`LeRobotDataset:v3.0\`: Bringing large-scale datasets to \`lerobot\`](https://yomu.fyi/post/lerobotdataset-v3-0-bringing-large-scale-datasets-to-lerobot.md)
- Company: [Hugging Face](https://yomu.fyi/company/hugging-face.md)
- Author: Francesco Capuano, Michel Aractingi, Quentin Lhoest, Caroline Pascal, Pepijn Kooijmans, Jade Choghari, Remi Cadene, Simon  Alibert, Adil Zouitine, Martino Russi, Steven Palma
- Published: Sep 16, 2025
- Type: Announcement

LeRobotDataset:v3.0 is a new release for lerobot, Hugging Face’s robotics library, addressing file-system limitations encountered when LeRobotDataset:v2 stored one episode per file at million-episode scale. Version 3 packs multiple episodes into shared Parquet and MP4 files, while relational JSON and chunked episode metadata identify episode boundaries and locate the corresponding tabular and visual data. The format separates tabular data, visual data, and metadata; it stores low-dimensional readings in Apache Parquet, concatenates camera frames into MP4 videos, and supports native temporal windowing through delta\_timestamps. It also introduces StreamingLeRobotDataset for processing batches from the Hugging Face Hub without downloading the full dataset locally, and provides a one-line conversion utility for datasets in the LeRobotDataset format. The release is planned for lerobot-v0.4.0 and is presented as a step toward datasets with millions of episodes.


### [Introducing the Palmyra-mini family: Powerful, lightweight, and ready to reason!](https://yomu.fyi/post/introducing-the-palmyra-mini-family-powerful-lightweight-and-ready-to.md)
- Company: [Hugging Face](https://yomu.fyi/company/hugging-face.md)
- Author: Rakshith, Tom Peres
- Published: Sep 11, 2025
- Type: Announcement

WRITER released three open models in the Palmyra-mini family ranging between 1.5B and 1.7B parameters, designed for efficient inference and specialized reasoning tasks. Built on the Qwen architecture, the release includes the standard palmyra-mini base model alongside two Chain of Thought variants, palmyra-mini-thinking-a and palmyra-mini-thinking-b. In benchmark evaluations, palmyra-mini achieved 52.6% on Big Bench Hard, while palmyra-mini-thinking-a reached 82.87% on GSM8K and palmyra-mini-thinking-b reached 92.5% on AMC23. For palmyra-mini-thinking-b, applying reinforcement learning fine-tuning to an OpenReasoning-Nemotron-1.5B base improved single-shot pass@1 accuracy while reducing sampling diversity and majority@64 performance. The models are available in GGUF and MLX-BF16 quantizations and support inference engines including vLLM, SGLang, TRTLLM, and TGI.


### [Tricks from OpenAI gpt-oss YOU 🫵 can use with transformers](https://yomu.fyi/post/tricks-from-openai-gpt-oss-you-can-use-with-transformers.md)
- Company: [Hugging Face](https://yomu.fyi/company/hugging-face.md)
- Author: Aritra Roy Gosthipaty, Sergio Paniego, Vaibhav Srivastav, Pedro Cuenca, Arthur Zucker, Nathan Habib, Cyril Vallez
- Published: Sep 11, 2025
- Type: Announcement

To support OpenAI's GPT-OSS series of models, the transformers library introduced several performance upgrades that apply across supported architectures. The release integrates zero-build custom kernels downloadable directly from the Hub, reducing external dependency bloat and compilation friction for operations like Liger RMSNorm and MegaBlocks MoE. Native support for MXFP4 quantization groups vector elements into 32-value blocks with shared scales, allowing GPT-OSS 20B to fit in roughly 16 GB of VRAM and GPT-OSS 120B in roughly 80 GB. In addition, transformers incorporates Flash Attention 3 with attention sinks, continuous batching via the generate\_batch API for experimentation, and automatic memory pre-allocation to speed up model loading on GPUs.


### [Migrating to React Native's New Architecture](https://yomu.fyi/post/migrating-to-react-native-s-new-architecture.md)
- Company: [Shopify](https://yomu.fyi/company/shopify.md)
- Author: 2023-10-18
- Published: Sep 5, 2025
- Type: Explainer

Shopify successfully migrated two largest apps, Shopify Mobile and Shopify Point of Sale, to React Native’s New Architecture while continuing weekly releases for millions of merchants. The strategy prioritized minimal code changes, dual-architecture compatibility, and performance and stability parity, with TopHat generating both architecture builds for every pull request. The team upgraded React Native first, updated or removed incompatible dependencies, and changed only native modules that failed under the new architecture rather than migrating all 40-plus modules to TurboModules. Migration issues included state batching, UIManager-related blank screens, shadow-tree manipulation, view flattening, and main-thread legacy module initialization; the reported outcome was maintained development velocity with no feature-development disruption, followed by planned optimization work.


### [1.5x faster MoE training with custom MXFP8 kernels](https://yomu.fyi/post/1-5x-faster-moe-training-with-custom-mxfp8-kernels.md)
- Company: [Cursor](https://yomu.fyi/company/cursor.md)
- Author: Stuart Sul
- Published: Aug 29, 2025
- Type: Benchmark

An upgrade from Hopper H100s to Blackwell B200s exposed the Mixture-of-Experts (MoE) layer, implemented with MegaBlocks, as a major training bottleneck: it consumed nearly 53% of forward-pass time and 27% of backward-pass time. The team rewrote the layer at the GPU-kernel level using CUDA, PTX, and some ThunderKittens, while moving from BF16 to microscaled FP8 (MXFP8) with nearly zero loss in training quality. The implementation addresses Blackwell-specific tensor memory constraints and quantization overhead, including custom MXFP8 quantization that sustains more than 6.2 TB/s and emits scale matrices directly compatible with tcgen05.mma. On an internal model, MoE execution became 3.5x faster in both passes, producing a 1.5x end-to-end speedup on Blackwell and 2x versus the original Hopper setup, measured in tokens per second per GPU.


### [Build Better Agents With MorphLLM](https://yomu.fyi/post/build-better-agents-with-morphllm.md)
- Company: [Fly.io](https://yomu.fyi/company/fly-io.md)
- Published: Aug 25, 2025
- Type: Problem & solution

The post addresses a bottleneck in AI agents that write or edit code: correcting a small change can trigger a full-file rewrite, consuming tokens and causing formatting failures, silent omissions, and unreliable results. MorphLLM’s Morph Fast Apply is presented as a semantic, structure-aware edit merge tool: an agent emits small edit\_file snippets with //...existing code... placeholders, while the Apply API merges them against the codebase context before the edited file is written back. The post reports over 4,500 tokens per second, 98% accuracy in about six seconds per file, and about four seconds for files up to 9k tokens, compared with 35 seconds and 86% accuracy for traditional search-and-replace with error corrections. It also states that MorphLLM is API-compatible with OpenAI, Vercel AI SDK, MCP, and OpenRouter, and can run in the cloud, self-hosted, or on-premises.


### [Automation, Squared](https://yomu.fyi/post/automation-squared.md)
- Company: [Ramp](https://yomu.fyi/company/ramp.md)
- Author: Hunter Pruett
- Published: Aug 12, 2025
- Type: Explainer

The article presents “second-order automation,” in which one agent designs reusable workflows for another agent to execute. Its spreadsheet system pairs an “architect” that watches a screen recording, generates detailed prompts, identifies required files and context, with a “doer” that searches workbooks and performs the instructions. The design addresses first-order automation’s dependence on users to supply precise prompts and fresh context for every task, which limits scalability. On an approximately 50-task SpreadsheetBench subset, the spreadsheet agent reached 49.5% accuracy on soft-restriction tasks versus OpenAI’s 45.5%, and 32.5% on hard-restriction tasks versus GPT-4o’s 13.4%; some one-to-two-hour tasks finished in under 10 minutes. The article concludes that recorded workflows can let non-technical users create reusable automations with little additional input, although architect performance has not yet been formally benchmarked.


### [From Intern Project to Production: How I Shipped the Draw Tool for Canva's Present Mode](https://yomu.fyi/post/from-intern-project-to-production-how-i-shipped-the-draw-tool-for-canv.md)
- Company: [Canva](https://yomu.fyi/company/canva.md)
- Author: Edwina Adisusila
- Published: Aug 6, 2025
- Type: Problem & solution

Canva engineers developed and shipped a real-time drawing tool for presentation mode after user feedback highlighted it as a highly requested feature. Integrating the existing editor-bound draw functionality into presentations required resolving tight package coupling, dual-window scaling mismatches, and performance regressions. To overcome architectural boundaries, core draw logic was extracted into a shared common package using interface abstractions. Coordinate normalization resolved positioning and scaling differences across presenter and audience views, while code-splitting deferred loading the core engine until activation. As a result, presentation load time regression dropped from 7% to 0.24%, and the feature reached over 470,000 monthly active users in production.


### [FlashList v2: A ground-up rewrite for React Native's New Architecture](https://yomu.fyi/post/flashlist-v2-a-ground-up-rewrite-for-react-native-s-new-architecture.md)
- Company: [Shopify](https://yomu.fyi/company/shopify.md)
- Author: 2023-10-18
- Published: Jul 31, 2025
- Type: Announcement

FlashList v2 is a ground-up rewrite of the React Native list component, aimed at removing v1’s dependence on item-size estimates, native layout corrections, and imprecise scrolling. Built for React Native’s New Architecture, it uses synchronous layout measurements to correct positions before paint and eliminates the need for native code. Its algorithm combines progressive rendering, predictions updated by item type, and rapid corrections, while adaptive rendering responds to scroll velocity, direction, and device performance. The new scrolling system progressively refines target positions for precise scrollToIndex operations, and horizontal lists can contain resizable items and coordinate with parent lists. The release also adds scroll-position maintenance, improved masonry support, recycle-pool controls, helper hooks, and better web support; benchmarks report up to 50% less blank area while scrolling than v1 on the new architecture.


### [How we built it: Jurisdiction resolution for Stripe Tax](https://yomu.fyi/post/how-we-built-it-jurisdiction-resolution-for-stripe-tax.md)
- Company: [Stripe](https://yomu.fyi/company/stripe.md)
- Author: Erich Rentz
- Published: Jul 10, 2025
- Type: Explainer

Stripe Tax’s jurisdiction resolution system (JRS) determines which US taxing jurisdictions apply to a transaction, a difficult task because more than 16,000 combinations of rates and rules depend on intricate, changing boundaries. Its offline geographic information system cleans and standardizes boundary data, overlays states, counties, cities, and districts, and generates time-aware Stripe places of taxation (SPOTs), while the online system matches an address to the relevant SPOT. To reduce point-in-polygon latency, JRS indexes nested bounding boxes in a balanced R-tree rebuilt with the Sort-Tile-Recursive algorithm, narrowing candidates before applying the final polygon calculation; disjoint SPOTs are split and smaller boxes prioritized. Most states achieve address matching in a few milliseconds, with 95th-percentile latency below 10 milliseconds except South Carolina, while historical SPOT data creates an ongoing memory challenge.


### [Remixing Shopify's Admin: How We Made It 30% Faster and AI-Ready](https://yomu.fyi/post/remixing-shopify-s-admin-how-we-made-it-30-faster-and-ai-ready.md)
- Company: [Shopify](https://yomu.fyi/company/shopify.md)
- Author: 2023-10-18
- Published: Jun 30, 2025
- Type: Problem & solution

Shopify rebuilt its Admin architecture to address inconsistent loading, duplicate requests, and fragmented route knowledge across a TypeScript codebase serving 67 million daily page views. With 101 teams contributing about 350 pull requests daily and the codebase containing 3,184,248 lines of TypeScript, the work adopted Remix with Vite and SPA mode. Typed route manifests, globbed by Vite, now define metadata and a single source of truth for 1,017 routes, while Remix loaders start data fetching before large component bundles finish loading. Idle-time prefetching warms the Apollo cache, and persistent IndexDB storage helps frequently visited pages load between sessions. The changes delivered a 30% improvement in perceived load times, standardized transitions, and created an architecture in which Remix actions and zod schemas let Sidekick discover forms, validate inputs, and submit tasks without loading unnecessary JavaScript.


### [The Future of React Native Graphics: WebGPU, Skia, and Beyond](https://yomu.fyi/post/the-future-of-react-native-graphics-webgpu-skia-and-beyond.md)
- Company: [Shopify](https://yomu.fyi/company/shopify.md)
- Author: 2023-10-18
- Published: Jun 20, 2025
- Type: Announcement

React Native WebGPU and React Native Skia are presented as a graphics stack for advanced 2D, 3D, and general-purpose GPU workloads in native applications. The work uses Skia Graphite with Dawn, Google’s open-source WebGPU implementation, to replace separate OpenGL and Metal backend implementations with a unified architecture, while enabling Three.js, React Three Fiber, TensorFlow.js, and compute shaders. Three.js Shading Language lets the same shaders target WebGPU and WebGL, and Shopify’s Black Friday globe prototypes run natively with identical results to the web version. Architectural changes in React Native Skia moved from a mutable SkiaDOM to an immutable fabric reconciler, producing reported animation gains of up to 50% on iOS and nearly 200% on Android, plus 98% of reported Android crashes fixed. Graphite remains experimental, but adds dedicated-thread canvases and bidirectional 2D/3D composition, while Skia also supports macOS, tvOS, and headless Node.js rendering.


### [Resilient Import Maps - Better Theme Development and Beyond](https://yomu.fyi/post/resilient-import-maps-better-theme-development-and-beyond.md)
- Company: [Shopify](https://yomu.fyi/company/shopify.md)
- Author: 2023-10-18
- Published: May 28, 2025
- Type: Problem & solution

Shopify found that JavaScript modules and import maps failed in themes and App Blocks when modules loaded before a map, or when multiple maps collided. These restrictions reflected the requirement that module resolution remain stable, but real pages assembled by themes, apps, Shopify, and extensions could not reliably guarantee ordering or a single map. Working with web-platform contributors, Shopify proposed a reconciliation mechanism with one global import map, a resolved module set, and merging rules that preserve existing resolutions and drop conflicting or unsafe additions. The change reached the HTML specification and shipped in Chromium and WebKit; Chrome supports it from version 133 and Safari from 18.4. Shopify also uses es-modules-shim support for browsers without native support, while Firefox support is hoped for.


### [How On-Device AI Models Find Your Best Tinder Profile Photos](https://yomu.fyi/post/how-on-device-ai-models-find-your-best-tinder-profile-photos.md)
- Company: [Tinder](https://yomu.fyi/company/tinder.md)
- Author: Tinder
- Published: Apr 28, 2025
- Type: Problem & solution

Tinder developed an on-device AI Photo Selector to recommend compelling profile photos directly from a user's camera roll without exposing private assets. To establish a reference face, the system extracts facial landmarks via Apple's Vision framework and normalizes the crop using affine transformations. To prevent funnel drop-offs from mandatory selfies, the architecture includes a fallback mechanism that detects a single recognizable face in existing profile photos. Processing workflows execute concurrently across thousands of local assets while downloading and initializing TensorFlow Lite models in parallel using Combine. A dedicated analytics queue synchronizes operation counts with DispatchGroup to ensure accurate metric capture before the global rollout.


### [Mobile Bridge: Making WebViews Feel Native](https://yomu.fyi/post/mobile-bridge-making-webviews-feel-native.md)
- Company: [Shopify](https://yomu.fyi/company/shopify.md)
- Author: 2023-10-18
- Published: Apr 25, 2025
- Type: Problem & solution

Shopify’s mobile app has about 600 screens, but building every non-critical screen natively or in React Native was costly and slowed development, while conventional WebViews felt slow, disconnected, and out of place. Mobile Bridge addresses this hybrid-app problem with native iOS and Android modules that preload, authenticate, cache, and reuse WebViews, reducing P75 load time from 6 seconds to 1.4 seconds, including network latency and rendering. Built on @remote-ui/rpc, the framework uses JavaScript, CSS, Polaris overrides, title and action APIs, TransportableView, snapshots, and native modal transitions to preserve state and align web screens with native navigation and appearance. WebViews can also invoke native features such as date pickers, barcode scanning, and Add to Wallet; Shopify says the standalone library is being adopted across other products while critical features remain native or React Native.


### [Optimizing Stripe API performance in Lambda with caching strategies](https://yomu.fyi/post/optimizing-stripe-api-performance-in-lambda-with-caching-strategies.md)
- Company: [Stripe](https://yomu.fyi/company/stripe.md)
- Author: James Beswick
- Published: Apr 21, 2025
- Type: Problem & solution

The post addresses performance, cost, latency, and rate-limiting challenges that arise when applications make high-volume requests to Stripe's API from AWS Lambda. It presents a two-level cache using ElastiCache for Redis as the first layer and DynamoDB as the durable second layer, with Lambda coordinating cache reads, Stripe retrieval, and writes. On a miss, the function checks Redis, then DynamoDB, fetches the customer from Stripe if necessary, and stores the response in both layers with one-hour Redis and 24-hour DynamoDB TTLs. The DynamoDB design uses composite keys, a GSI for cache-type and timestamp queries, TTL cleanup, and environment-specific capacity settings; the post also discusses Redis connection pooling, Lambda sizing, capacity planning, cost control, monitoring, and webhook-based invalidation.


### [Evaluating performance impact of removing Redis-cache from a Scylla-backed service](https://yomu.fyi/post/evaluating-performance-impact-of-removing-redis-cache-from-a-scylla-ba.md)
- Company: [Grab](https://yomu.fyi/company/grab.md)
- Author: Md Riyadh
- Published: Apr 11, 2025
- Type: Problem & solution

A Rust service at Grab serves tens of thousands of peak QPS for batched count requests, using Scylla, Redis, and MySQL counter configurations. Its 15-minute cache-key truncation and five-minute TTL caused cache-hit declines and recurring Scylla QPS spikes at the end of each quarter-hour, when recent-data requests generated new keys. The experiment progressively disabled Redis, while a daily major compaction job was added to Scylla nodes; the service continued combining minutely, hourly, and daily tables for range calculations. With Redis fully decommissioned, Scylla cache hits rose from about 30% to 70% of reads, cache misses stayed about the same despite doubled traffic, peak CPU moved from roughly 50% to 52%, and overall service performance was maintained while eliminating a component responsible for about 25% of service cost.


### [Scaling Nextdoor’s Datastores: Part 2](https://yomu.fyi/post/scaling-nextdoor-s-datastores-part-2.md)
- Company: [Nextdoor](https://yomu.fyi/company/nextdoor.md)
- Author: Tushar Singla
- Published: Mar 19, 2025
- Type: Problem & solution

Nextdoor encountered scaling issues after adding read replicas when product engineers were initially tasked with deciding whether to route queries to the primary or replica databases. As business logic grew and gained abstraction layers, engineers struggled to track read-after-write consistency constraints across the call stack. To avoid replication lag race conditions, engineers routinely wrapped logic in database transactions, unintentionally directing all queries to the primary node and eroding read replica benefits over several years. The Core-Services team resolved this by injecting custom tracking logic into their Django ORM layer to monitor table writes during web requests and automate routing. They further optimized the system using a timing-based approach that restored replica read eligibility after the p99.9 replication lag elapsed.


### [How the Tinder iOS App reduced the size of our localizations by 95% using Emerge](https://yomu.fyi/post/how-the-tinder-ios-app-reduced-the-size-of-our-localizations-by-95-usi.md)
- Company: [Tinder](https://yomu.fyi/company/tinder.md)
- Author: Tinder
- Published: Feb 26, 2025
- Type: Problem & solution

Supporting over 50 languages across numerous statically linked targets led to a substantial build size footprint in Tinder's iOS application. Because Apple's code signing mandates a minimum 4KB per file, shipping dozens of localized files per target inflated the final application package. Tinder addressed this by stripping comments and whitespace, merging localized strings into a single file per language via custom Bazel rules and Aspects, and compressing the strings using Emerge's SmallStrings tool into LZFSE files. The runtime decompresses these files dynamically through existing code-generated string accessors. Consequently, Tinder reduced download size by 10.7MB and install size by 51.3MB with no impact on developer workflows.


### [Sharing Tinder’s latest contributions to the open source community](https://yomu.fyi/post/sharing-tinder-s-latest-contributions-to-the-open-source-community.md)
- Company: [Tinder](https://yomu.fyi/company/tinder.md)
- Author: Tinder
- Published: Jan 29, 2025
- Type: Announcement

Tinder open-sourced several iOS development repositories, including Layout, Nodes Architecture Framework, and CombineUI, to share the engineering patterns supporting its iPhone application. As the app expanded across diverse device profiles and scale, engineering teams faced reliability, consistency, and memory challenges under their legacy architecture. In response, Tinder developed Nodes, a plugin-based architecture framework using compile-time dependency injection and lifecycle hooks that enforce complete memory release upon feature dismissal. For interface construction, Tinder created Layout, a domain-specific Auto Layout wrapper offering declarative syntax for UIKit views to eliminate storyboard merge conflicts while preserving native capabilities. The resulting stack enables isolated testing of business logic, native reactive event binding, and incremental adoption of SwiftUI across the codebase.


[Newer posts](https://yomu.fyi/topic/performance/page/27.md) · [Older posts](https://yomu.fyi/topic/performance/page/29.md)
