feat: added configurable num of threads for xnnpack to fix android performance#534
Merged
feat: added configurable num of threads for xnnpack to fix android performance#534
Conversation
added 4 commits
August 22, 2025 10:52
This reverts commit 20f1260.
24b8943 to
7f8c7f1
Compare
msluszniak
reviewed
Aug 25, 2025
msluszniak
reviewed
Aug 25, 2025
chmjkb
requested changes
Aug 26, 2025
Comment on lines
+4
to
+9
| <dict> | ||
| <key>com.apple.developer.kernel.increased-debugging-memory-limit</key> | ||
| <true/> | ||
| <key>com.apple.developer.kernel.increased-memory-limit</key> | ||
| <true/> | ||
| </dict> |
Collaborator
There was a problem hiding this comment.
I'm wondering if we truly need this, the app works without this. And XCode won't let me run the app when this is specified.
Comment on lines
+45
to
+46
| if(CMAKE_SYSTEM_PROCESSOR MATCHES "aarch64") | ||
| target_compile_definitions(react-native-executorch PRIVATE ARCH_ARM64) |
Collaborator
There was a problem hiding this comment.
Why not use
if(ANDROID_ABI STREQUAL "arm64-v8a") instead, as it is done in the following?
added 2 commits
August 27, 2025 12:39
chmjkb
approved these changes
Aug 27, 2025
mkopcins
added a commit
that referenced
this pull request
Sep 2, 2025
…rformance (#534) ## Description After migrating llms to cpp architecture we saw significant drop in performance (up to 10x slower). After debugging the main culprit turned out to be the number of threads spawned for xnnpack threadpool, which defaulted to the number of cores (the underlying reason is still unknown). ### Introduces a breaking change? - [x] Yes - migrating back to cpp architecture for llms - [ ] No ### Type of change - [x] Bug fix (change which fixes an issue) - [x] New feature (change which adds functionality) - [ ] Documentation update (improves or adds clarity to existing documentation) - [ ] Other (chores, tests, code style improvements etc.) ### Tested on - [x] iOS - [x] Android ### Testing instructions <!-- Provide step-by-step instructions on how to test your changes. Include setup details if necessary. --> ### Screenshots <!-- Add screenshots here, if applicable --> ### Related issues <!-- Link related issues here using #issue-number --> ### Checklist - [ ] I have performed a self-review of my code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have updated the documentation accordingly - [ ] My changes generate no new warnings ### Additional notes <!-- Include any additional information, assumptions, or context that reviewers might need to understand this PR. --> --------- Co-authored-by: Mateusz Kopciński <mateusz.kopcinski@swmansnion.com>
KnextKoder
pushed a commit
to Synkhiv/react-native-executorch
that referenced
this pull request
Nov 7, 2025
…rformance (software-mansion#534) ## Description After migrating llms to cpp architecture we saw significant drop in performance (up to 10x slower). After debugging the main culprit turned out to be the number of threads spawned for xnnpack threadpool, which defaulted to the number of cores (the underlying reason is still unknown). ### Introduces a breaking change? - [x] Yes - migrating back to cpp architecture for llms - [ ] No ### Type of change - [x] Bug fix (change which fixes an issue) - [x] New feature (change which adds functionality) - [ ] Documentation update (improves or adds clarity to existing documentation) - [ ] Other (chores, tests, code style improvements etc.) ### Tested on - [x] iOS - [x] Android ### Testing instructions <!-- Provide step-by-step instructions on how to test your changes. Include setup details if necessary. --> ### Screenshots <!-- Add screenshots here, if applicable --> ### Related issues <!-- Link related issues here using #issue-number --> ### Checklist - [ ] I have performed a self-review of my code - [ ] I have commented my code, particularly in hard-to-understand areas - [ ] I have updated the documentation accordingly - [ ] My changes generate no new warnings ### Additional notes <!-- Include any additional information, assumptions, or context that reviewers might need to understand this PR. --> --------- Co-authored-by: Mateusz Kopciński <mateusz.kopcinski@swmansnion.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
After migrating llms to cpp architecture we saw significant drop in performance (up to 10x slower). After debugging the main culprit turned out to be the number of threads spawned for xnnpack threadpool, which defaulted to the number of cores (the underlying reason is still unknown).
Introduces a breaking change?
Type of change
Tested on
Testing instructions
Screenshots
Related issues
Checklist
Additional notes