You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
To use from Android, ExecuTorch provides Java API bindings and Android platform integration, available as a AAR file. The ExecuTorch C++ APIs can also be used from Android native.
4
+
5
+
## Installation
6
+
7
+
TODO Instructions on downloading the pre-built AAR. Replace with Maven/Gradle package management when available.
8
+
9
+
### Building from Source
10
+
11
+
TODO Instructions on re-creating and customizing the Android AAR.
12
+
13
+
## Android Backends
14
+
15
+
TODO Describe commonly used backends, including XNN, Vulkan, and NPUs.
16
+
17
+
## Runtime Integration
18
+
19
+
TODO Code sample in Java
20
+
21
+
## Next Steps
22
+
23
+
TODO Link to Java API reference and other relevant material
ExecuTorch supports both iOS and macOS via Objective-C, Swift, and C++. ExecuTorch also provides backends to leverage Core ML and Metal Performance Shaders (MPS) for hardware-accelerated execution on Apple platforms.
4
+
5
+
## Integration
4
6
5
7
The ExecuTorch Runtime for iOS and macOS is distributed as a collection of prebuilt [.xcframework](https://developer.apple.com/documentation/xcode/creating-a-multi-platform-binary-framework-bundle) binary targets. These targets are compatible with both iOS and macOS devices and simulators and are available in both release and debug modes:
6
8
@@ -17,8 +19,6 @@ Link your binary with the ExecuTorch runtime and any backends or kernels used by
17
19
18
20
**Note:** To access logs, link against the Debug build of the ExecuTorch runtime, i.e., the `executorch_debug` framework. For optimal performance, always link against the Release version of the deliverables (those without the `_debug` suffix), which have all logging overhead removed.
19
21
20
-
## Integration
21
-
22
22
### Swift Package Manager
23
23
24
24
The prebuilt ExecuTorch runtime, backend, and kernels are available as a [Swift PM](https://www.swift.org/documentation/package-manager/) package.
@@ -84,9 +84,9 @@ swift package resolve
84
84
swift build
85
85
```
86
86
87
-
### Local Build
87
+
### Building from Source
88
88
89
-
Another way to integrate the ExecuTorch runtime is to build the necessary components from sources locally and link against them. This route is more involved but certainly doable.
89
+
Another way to integrate the ExecuTorch runtime is to build the necessary components from sources locally and link against them. This is useful when customizing the runtime.
90
90
91
91
1. Install [Xcode](https://developer.apple.com/xcode/resources/) 15+ and Command Line Tools:
92
92
@@ -195,7 +195,7 @@ import ExecuTorch
195
195
196
196
### Logging
197
197
198
-
We provide extra APIs for logging in Objective-C and Swift as a lightweight wrapper of the internal ExecuTorch machinery. To use it, just import the main framework header in Objective-C. Then use the `ExecuTorchLog` interface (or the `Log` class in Swift) to subscribe your own implementation of the `ExecuTorchLogSink` protocol (or `LogSink` in Swift) to listen to log events.
198
+
ExecuTorch provides extra APIs for logging in Objective-C and Swift as a lightweight wrapper of the internal ExecuTorch machinery. To use it, just import the main framework header in Objective-C. Then use the `ExecuTorchLog` interface (or the `Log` class in Swift) to subscribe your own implementation of the `ExecuTorchLogSink` protocol (or `LogSink` in Swift) to listen to log events.
0 commit comments