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
Copy file name to clipboardExpand all lines: docs/source/backends/nxp/nxp-overview.md
+6-3Lines changed: 6 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,7 +11,7 @@ For up-to-date status about running ExecuTorch on Neutron backend please visit t
11
11
## Features
12
12
13
13
14
-
ExecuTorch v1.0 supports running machine learning models on selected NXP chips (for now only `i.MXRT700`).
14
+
ExecuTorch v1.2 supports running machine learning models on selected NXP chips (for now only `i.MXRT700`).
15
15
Among currently supported machine learning models are:
16
16
- Convolution-based neutral networks
17
17
- Full support for MobileNetV2 and CifarNet
@@ -24,10 +24,10 @@ Among currently supported machine learning models are:
24
24
25
25
-[MCUXpresso IDE](https://www.nxp.com/design/design-center/software/development-software/mcuxpresso-software-and-tools-/mcuxpresso-integrated-development-environment-ide:MCUXpresso-IDE) or [MCUXpresso Visual Studio Code extension](https://www.nxp.com/design/design-center/software/development-software/mcuxpresso-software-and-tools-/mcuxpresso-for-visual-studio-code:MCUXPRESSO-VSC)
Instead of manually installing requirements, except MCUXpresso IDE and SDK, you can use the setup script:
@@ -49,6 +49,9 @@ An example runtime application using the eIQ NSYS (eIQ Neutron Simulator) is ava
49
49
To learn how to run the converted model on the NXP hardware, use one of our example projects on using ExecuTorch runtime from MCUXpresso IDE example projects list.
50
50
For more finegrained tutorial, visit [this manual page](https://mcuxpresso.nxp.com/mcuxsdk/latest/html/middleware/eiq/executorch/docs/nxp/topics/example_applications.html).
51
51
52
+
For guideline how to update the eIQ Neutron Runtime on MCUXpresso SDK, follow the instructions from the eIQ Neutron SDK package `docs/NeutronSDKUserGuide.md` available
53
+
here https://www.nxp.com/design/design-center/software/eiq-ai-development-environment/eiq-toolkit-for-end-to-end-model-development-and-deployment:EIQ-TOOLKIT.
Copy file name to clipboardExpand all lines: docs/source/backends/nxp/nxp-partitioner.rst
+9-4Lines changed: 9 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,8 +6,10 @@ The Neutron partitioner API allows for configuration of the model delegation to
6
6
7
7
It has the following arguments:
8
8
9
-
* `compile_spec` - list of key-value pairs defining compilation:
10
-
* `custom_delegation_options` - custom options for specifying node delegation.
9
+
* `compile_spec` - list of key-value pairs defining compilation,
10
+
* `neutron_target_spec` - NeutronTargetSpec instance, initialized by SoC id, e.g. "imxrt700",
11
+
* `custom_delegation_options` - custom options for specifying node delegation,
12
+
* `preserve_ops` - list of aten operators to not be decomposed by ExecuTorch.
11
13
12
14
--------------------
13
15
Compile Spec Options
@@ -18,12 +20,15 @@ Following fields can be set:
18
20
* `config` - NXP platform defining the Neutron NPU configuration, e.g. "imxrt700".
19
21
* `extra_flags` - Extra flags for the Neutron compiler.
20
22
* `operators_not_to_delegate` - List of operators that will not be delegated.
23
+
* `use_neutron_for_format_conversion` - If True, let the eIQ Neutron NPU to handle conversion between channel-first (NCHW) and channel-last (NHWC) data formats. That is the Neutron backend will insert `Transpose` ops to ensure that the IO matches the executorch partition, which will be delegated to Neutron.
24
+
* `fetch_constants_to_sram`: If True, the Neutron Converter will insert microinstructions to prefetch weights from FLASH to SRAM. This should be used when the whole model does not fit into SRAM on Neutron-C devices, like i.MX RT700
25
+
* `dump_kernel_selection_code`: Whether Neutron converter dumps kernel selection code, which is used by the selective kernel registration, see :doc:`Neutron Firmware Kernel Selection support <nxp-kernel-selection.md>`.
21
26
22
27
-------------------------
23
28
Custom Delegation Options
24
29
-------------------------
25
30
By default the Neutron backend is defensive, what means it does not delegate operators which cannot be decided statically during partitioning. But as the model author you typically have insight into the model and so you can allow opportunistic delegation for some cases. For list of options, see
Operators are the building blocks of the ML model. See `IRs <https://docs.pytorch.org/docs/stable/torch.compiler_ir.html>`_ for more information on the PyTorch operator set.
33
38
34
39
This section lists the Edge operators supported by the Neutron backend.
35
-
For detailed constraints of the operators see the conditions in the ``is_supported_*`` functions in the `Node converters <https://github.com/pytorch/executorch/blob/release/1.0/backends/nxp/neutron_partitioner.py#L192>`_
40
+
For detailed constraints of the operators see the conditions in the ``is_supported_*`` functions in the `Node converters <https://github.com/pytorch/executorch/blob/release/1.2/backends/nxp/neutron_partitioner.py#L202>`_
aten.permute_copy.default,int8,static int8,"Only specific transpositions supported, see backends/nxp/backend/ir/converter/node_converters/ops_converters/permute_copy_converter.py"
0 commit comments