Skip to content

Conversation

psiddh
Copy link
Contributor

@psiddh psiddh commented Oct 1, 2025

Summary

[PLEASE REMOVE] See CONTRIBUTING.md's Pull Requests for ExecuTorch PR guidelines.

[PLEASE REMOVE] If this PR closes an issue, please add a Fixes #<issue-id> line.

[PLEASE REMOVE] If this PR introduces a fix or feature that should be the upcoming release notes, please add a "Release notes: " label. For a list of available release notes labels, check out CONTRIBUTING.md's Pull Requests.

Test plan

[PLEASE REMOVE] How did you test this PR? Please write down any manual commands you used and note down tests that you have written if applicable.

@psiddh psiddh requested a review from mergennachin as a code owner October 1, 2025 10:36
Copy link

pytorch-bot bot commented Oct 1, 2025

🔗 Helpful Links

🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/14720

Note: Links to docs will display an error until the docs builds have been completed.

❌ 2 New Failures, 18 Pending

As of commit 7743abb with merge base d4d24ec (image):

NEW FAILURES - The following jobs have failed:

This comment was automatically generated by Dr. CI and updates every 15 minutes.

@meta-cla meta-cla bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Oct 1, 2025
Copy link

github-actions bot commented Oct 1, 2025

This PR needs a release notes: label

If your change should be included in the release notes (i.e. would users of this library care about this change?), please use a label starting with release notes:. This helps us keep track and include your important work in the next release notes.

To add a label, you can comment to pytorchbot, for example
@pytorchbot label "release notes: none"

For more information, see
https://github.com/pytorch/pytorch/wiki/PyTorch-AutoLabel-Bot#why-categorize-for-release-notes-and-how-does-it-work.

Copy link
Contributor

@mergennachin mergennachin left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See inline, thanks @psiddh for doing this

### Documentation Navigation
#### Introduction

#### Getting Started
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't like this is called "Getting Started"

Can we change to something like "Background", "Introduction", "Design and Architecture"?

- [Troubleshooting](using-executorch-troubleshooting)
- [Architecture & Components](getting-started-architecture)
- [Core Concepts](concepts)
- [Building from Source](using-executorch-building-from-source)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we have a section called

"Quick Start" that contains only a few sections

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

Comment on lines 35 to 39
#### Fundamentals
- [Model Export & Lowering](using-executorch-export)
- [Runtime Architecture](runtime-overview)
- [Memory Management](compiler-memory-planning)
- [Performance Concepts](runtime-profiling)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is a bit out of place. I'd say dissolve this section

  • I'd say move "Model Export & Lowering" to "Quick Start"
  • Runtime Architecture to the top section called (either "Background", "Introduction", "Design and Architecture").
  • Memory management and profiling can be in be either in Runtime or Advanced Topics.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agree abt this section! The last two are already part of Advanced Topics, Removed this section completely

- [CoreML (NPU/GPU - recommended)](backends-coreml)
- [MPS (GPU)](backends-mps)
- [XNNPACK (CPU)](backends-xnnpack)
- [Vulkan (GPU)](backends-vulkan)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is Vulkan available on iOS??

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy - paste error, removed

- [XNNPACK (CPU)](backends-xnnpack)
- [Vulkan (GPU)](backends-vulkan)
```
- [Working with LLMs - iOS Examples](https://github.com/meta-pytorch/executorch-examples/tree/main/mv3/apple/ExecuTorchDemo)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should point to LLM, not mv3

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

- [C++ Runtime Integration](using-executorch-cpp)
- **Microcontrollers**
- [Cadence Xtensa Backend](backends-cadence)
- [ARM Ethos-U NPU Backend](backends-arm-ethos-u)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also Include this tutorial somewhere tutorial-arm-ethos-u.html https://docs.pytorch.org/executorch/1.0/tutorial-arm-ethos-u.html

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On clicking backends-arm-ethos-u --> User would be able to discover [Arm Ethos-U Backend Tutorial]

(or) are you suggesting that Arm Ethos-U Backend Tutorial should be surfaced at the top

- [Qualcomm AI Engine (NPU)](backends-qualcomm)
- [MediaTek (NPU)](backends-mediatek)
- [Samsung Exynos (NPU)](backends-samsung-exynos)
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added - ARM VGF Backend
On clicking this top link, it should take users to next page where [tutorial-arm-vgf.html] will be discovered.

Would this work ?

# Android

## Quick Start & Integration
[Getting started with ExecuTorch on Android](using-executorch-android)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

@psiddh psiddh Oct 1, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I need to look into it further.


### Documentation Navigation
#### Introduction

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you want to list out all items individually?

How about we just list top-level categories?

I know that it predates you... I really don't like that we have a documentation sitemap on this page to begin with, we used to have something else before.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Screenshot 2025-10-02 at 12 40 42 AM This is what I was thinking about too . Is this what you are thinking too roughly ? On the main landing page, we will have like 8 - 9 main sections / top categories ? I will put up another iteration of changes, just wanted to make sure

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@psiddh

Yeah, top categories seems like a better as opposed to maintaining yet another site-map there with individual pages.

## Available Backends

### CPU Backends
- [XNNPACK Backend](backends-xnnpack) - Optimized CPU inference
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@abhinaykukkadapu
Copy link
Contributor

Sid, Thanks for the initiative to revamp the doc structure, couple of UX related comments:

  • Inconsistent sub sections in the landing page, there are collapsible sections on the top and only sub bullets in the bottom, not sure what you think about it.
Screenshot 2025-10-01 at 8 59 57 AM
  • Fundamentals section has "Learn More" hyperlinks, where as other pages just have direct hyperlinks to the heading
Screenshot 2025-10-01 at 9 03 36 AM

@GregoryComer
Copy link
Member

Thanks! Here's my initial thoughts. I know you're iterating on a bunch of things, so feel free to ignore any of these that aren't relevant or if it's already planned.

  • The top nav bar seems to flow better on smaller screens (like my M1) with single-word titles. What do you think about changing maybe to Intro, Fundamentals, Android, iOS, Desktop, Embedded, Backends, LLMs?
    (live)
image (pr) image
  • What do you think about folding the Using ExecuTorch on Android/iOS/etc. into the top-level Android pages, rather having them just as links? We can refactor out if they are too long. You might be planning this already, but basically have each landing page be a standalone quick start for that platform.
  • Thoughts on having a dedicated top-level section for model preparation/export? I saw you discussed changing the fundamentals section above. Maybe it could be converted into a model export section. Though under quick start might be good.
  • What about having a dedicated Installation page under Intro / Getting Started? I don't necessarily have a strong opinion on this, but I think it might be nice to split the current getting started into install and model prep.
  • Move C++ APIs docs from Laptop/Desktop to API section? We can link it from the relevant platforms.
  • Many style guides for docs recommend avoiding first person, including use of "Our" or "We". Should we try to adhere to that?

Overall, I like the platform-first layout. I saw there were a bunch of existing changes that you discussed with Mergen above, so I'm excited to see what the next revision will look like. I think we should focus on fleshing out the non-platform specific sections, getting started and model preparation.

@mergennachin
Copy link
Contributor

Hi @psiddh

I am walking through the website via this link preview https://doc-previews.s3.us-east-1.amazonaws.com/pytorch/executorch/14720/index.html (the link commented by the bot was old -- so I looked at the log of "build (buck2) / Build doc" and found this link)

  • In the "Quick Start" category that contains "Getting Started", "Model Export & Lowering", "Building from Source" -- when you click on any of them pages, there's no left nav.

  • In the "Android" section landing page, "Quick Start & Integration" on the page and "Using ExecuTorch on Android" on the left nav, there's a title mismatch. Once you click on "Quick Start & Integration", it doesn't contain the left nav anymore.

  • "Integrating a Backend Delegate into ExecuTorch" (https://doc-previews.s3.us-east-1.amazonaws.com/pytorch/executorch/14720/backend-delegates-integration.html) shouldn't be in Embedded section

@mergennachin
Copy link
Contributor

By the way, "https://docs-preview.pytorch.org/pytorch/executorch/14720/index.html" was still showing old cached result

Here's the trick I found

Ad ?v=1 (or anything), which forces to fetch new content

https://docs-preview.pytorch.org/pytorch/executorch/14720/index.html?v=1

Follow these guides in order to get started with ExecuTorch:

- **1. {doc}`getting-started`** - Initial Setup: Set up your development environment and run your first ExecuTorch example.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.


## Prerequisites

- Python 3.8+
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually it's 3.10-3.12

## Prerequisites

- Python 3.8+
- PyTorch 2.0+
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

PyTorch 2.9+ (it installs as depedency, so probably no need to explicitly mention). Otherwise, we have to book keep everytime

- [CoreML (recommended)](backends-coreml)
- [MPS (Apple Silicon)](backends-mps)
- [XNNPACK (CPU)](backends-xnnpack)
- [Vulkan (GPU)](backends-vulkan)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it available natively on MacOS

@@ -0,0 +1,19 @@
(desktop-section)=
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we can merging this landing page (desktop-section) and (platforms-desktop.md) page?

@@ -0,0 +1,20 @@
(embedded-section)=
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And this page embedded-section.md and platforms-embedded.md pages

### Microcontrollers
- [Cadence Xtensa Backend](backends-cadence)
- [ARM Ethos-U NPU Backend](backends-arm-ethos-u)
- [Custom Backend Development](backend-delegates-integration)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why we have this section?

embedded-cadence
embedded-arm-ethos-u
embedded-nxp
backend-delegates-integration
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

backend-delegates-integration in embedded doesn't make sense. bring to "Backend Overview" section

@mergennachin
Copy link
Contributor

Thank you @psiddh

Looks great

**🚀 Story 2**
*One line for Story 2*

[Click to read the complete details →](https://engineering.fb.com/2024/01/executorch-llama-mobile)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you create a standalone landing page, so that I can start populating?

We can still keep the Story 1, Story 2 etc

@psiddh psiddh force-pushed the docs branch 2 times, most recently from b7a03d0 to 117d2db Compare October 6, 2025 18:58

## Learn More

- [XNNPACK (Mobile CPU)](backends-xnnpack)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- [XNNPACK (Mobile CPU)](backends-xnnpack)
- [XNNPACK (CPU)](backends-xnnpack)


## Learn More

- [XNNPACK (Mobile CPU)](backends-xnnpack)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Embed the links in the table?

Comment on lines 23 to 33
| XNNPACK | All | CPU | General-purpose, fallback |
| Core ML | iOS, macOS | NPU/GPU | Apple devices, high performance |
| Metal Performance Shaders (MPS) | iOS, macOS | GPU | Apple GPU acceleration |
| Vulkan | Android | GPU | Android GPU acceleration |
| Qualcomm NPU | Android | NPU | Qualcomm SoCs |
| MediaTek NPU | Android | NPU | MediaTek SoCs |
| ARM Ethos-U | Embedded | NPU | ARM MCUs |
| ARM VGF | Android | NPU | ARM platforms |
| OpenVINO | Embedded | CPU/GPU/NPU | Intel SoCs |
| NXP NPU | Embedded | NPU | NXP SoCs |
| Cadence DSP | Embedded | DSP | DSP-optimized workloads |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nit: remove NPU, DSP suffix from the first row?


---

## 🎯 Recent Wins & Success Stories
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
## 🎯 Recent Wins & Success Stories
## 🎯 Wins & Success Stories


---

### Documentation Sections
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Drop this title

@psiddh
Copy link
Contributor Author

psiddh commented Oct 6, 2025

@digantdesai Addressed all your comments

@psiddh psiddh requested a review from larryliu0820 October 6, 2025 20:03
@psiddh psiddh merged commit 270873f into pytorch:main Oct 6, 2025
128 of 130 checks passed
@psiddh
Copy link
Contributor Author

psiddh commented Oct 6, 2025

@pytorchbot cherry-pick --onto release/1.0 -c docs

pytorchbot pushed a commit that referenced this pull request Oct 6, 2025
### Summary
[PLEASE REMOVE] See [CONTRIBUTING.md's Pull
Requests](https://github.com/pytorch/executorch/blob/main/CONTRIBUTING.md#pull-requests)
for ExecuTorch PR guidelines.

[PLEASE REMOVE] If this PR closes an issue, please add a `Fixes
#<issue-id>` line.

[PLEASE REMOVE] If this PR introduces a fix or feature that should be
the upcoming release notes, please add a "Release notes: <area>" label.
For a list of available release notes labels, check out
[CONTRIBUTING.md's Pull
Requests](https://github.com/pytorch/executorch/blob/main/CONTRIBUTING.md#pull-requests).

### Test plan
[PLEASE REMOVE] How did you test this PR? Please write down any manual
commands you used and note down tests that you have written if
applicable.

(cherry picked from commit 270873f)
@pytorchbot
Copy link
Collaborator

Cherry picking #14720

The cherry pick PR is at #14830 The following tracker issues are updated:

Details for Dev Infra team Raised by workflow job

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants