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
Adds react-native-release-profiler to dev settings. Trace file will be saved to downloads folder and can be loaded into https://www.speedscope.app/ to explore.
Type of change
Tests
Screenshot / Video
Simulator.Screen.Recording.-.iPhone.15.Pro.-.2024-02-05.at.14.14.31.mp4
For example when adding the price widget calls to
crypto_sign_verify_detached()
are taking anywhere from 100ms to 1000ms withsodium-react-native
module replacement disabled, afterwards down to 2-20ms.before:
profile-9A7AB7F4-7AD7-4FB7-B5AD-9841D2CC791C-75503-00000DFFFC6FE561-converted.json
after:
profile-02DB5297-3A2F-483B-881F-2915BF047A72-88677-00000E1065B2BCB6-converted.json
For the simulator these commands will pull the file to host:
iOS:
npx react-native-release-profiler --local <path to profile>
Android:
npx react-native-release-profiler --fromDownload --appId <your appId>