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
I have been trying to use HermesSamplingProfiler for the release builds in order to get function execution flamechart. But for some reason , some of the JS function names are missing in the trace.
[sampling-profiler-trace-1.cpuprofile.txt](https://github.com/user-attachments/files/15525281/sampling-profiler-trace-1.cpuprofile.txt)
As you can see in the image that there is only App component is available in the trace. Nothing About Component1 in the trace and there are some empty blocks in the trace as well.
The things I have tried -:
Class components
Functional Components
Exporting components by default
Adding displayNames to components
Tried with Arrow function components as well
Disabling minification of js bundle.
Tried on nightly as well
React Native version: 0.74.1
OS: Android
Steps To Reproduce
Create a release build with the given repo.
Run the build and click on stopprofiling button on the screen.
A trace will be saved in the downloads folder.
open the trace in speedscope.com
The text was updated successfully, but these errors were encountered:
Hey @demon-sword, thanks for reporting this. It looks like JS functions are showing up in your trace. The blank frames likely represent unnamed JS functions.
It looks like the trace you uploaded has very little activity though. Of the 297 samples captured by the profiler, only 2 have anything actually running on the stack. There just isn't enough running for the profiler to pick it up. If you increase the amount of activity in the application, you should get a more complete trace.
As I mentioned in the code, there aren't any unnamed JS functions in my code. Therefore, ideally, there shouldn't be any blank frames. If React Native is invoking some unnamed functions internally, that's a different matter.
I have been trying to use HermesSamplingProfiler for the release builds in order to get function execution flamechart. But for some reason , some of the JS function names are missing in the trace.
Repro - https://github.com/demon-sword/sampleAppProfiling
This is a sample App which is using react-native-release-profiler(https://github.com/margelo/react-native-release-profiler) which internally uses HermesSamplingProfiler to generate the trace.
React Native version: 0.74.1
OS: Android
Steps To Reproduce
The text was updated successfully, but these errors were encountered: