Welcome to the ExecuTorch Documentation#

ExecuTorch is PyTorch’s open source export and runtime stack for running AI locally on phones, wearables, laptops, browsers, embedded systems, and microcontrollers.

Note

Match the documentation version to your installed ExecuTorch release using the version selector. Examples on the main site may require a nightly package or a source checkout.

Start here#

Run your first model

Install ExecuTorch, export MobileNet V2 to XNNPACK, and execute the resulting .pte program on the host.

Getting Started with ExecuTorch
Choose a path

Route to the right guide by model, workload, target platform, experience level, or role.

Find Your Path

Why ExecuTorch#

  • PyTorch-native deployment: Capture models with torch.export, lower them for a chosen target, and retain PyTorch program metadata for debugging.

  • Target-specific acceleration: Delegate supported graph regions to CPU, GPU, NPU, and DSP backends; unpartitioned regions run with the kernels included in the runtime.

  • A portable, right-sized runtime: Integrate .pte programs through C++, Python, Java/Kotlin, Objective-C/Swift, or JavaScript, and include only the operators and backends the application needs.


Proven on real products#

Billions of people

Production features across Instagram, WhatsApp, Messenger, and Facebook run on-device with ExecuTorch.

Read the Meta engineering story →

Shipping voice transcription

LM Studio uses ExecuTorch and Parakeet TDT for local transcription on macOS and Windows.

Read the production case study →

Up to 2× CPU throughput

Liquid AI reports the gain against selected similarly sized models, plus lower memory use, on its tested laptop and mobile CPUs.

Read Liquid AI’s case study →

Explore all deployments, integrations, and showcases →


Browse documentation#

Core concepts

Architecture, export and runtime concepts, and the .pte program format.

Intro
Export a model

Capture, lower, quantize, and validate a PyTorch model for a chosen target.

Model Export and Lowering
Advanced optimization

Quantization, memory planning, custom operators, passes, and backends.

Advanced
Deploy by platform

Android, iOS, desktop, and embedded integration guides.

Edge
Choose a backend

Compare CPU, GPU, NPU, and DSP acceleration paths for target hardware.

Backends
Work with LLMs

Export, optimize, and deploy text and multimodal generation models.

LLMs
Runtime and LLM APIs

Find C++, Python, Java/Kotlin, Objective-C/Swift, and JavaScript APIs.

API
Optimize and debug

Profile execution and inspect programs with ETDump, ETRecord, and numeric debugging.

Tools
Get help and contribute

Troubleshooting, FAQs, issue reporting, and contribution guidance.

Support