Currently we use V8 with bytecode caching on Android, since it provided better startup performance than the JSC engine that normally ships within RN. So the baseline is likely already faster than stock RN.
V8 runtime Memory Impact: 30MB
Hermes runtime memory impact: 21.5MB
V8 time to interaction: 1.4s
Hermes time to interaction: 1.1s
We have done similar experiments on a full react-native-windows application, replacing the Chakra JS engine (also already with bytecode so faster than stock RN) with Hermes and had app boot time on a low end device go from 3.8s to 3.1s.
1. runtime memory reduction: ~25%
2. Boot time reduction: 20%
3. Time to interaction reduction: 20%
For apps with significant boot times, and runtime memory consumption, this is valuable.
This assumes that the reductions are purely proportional to the total and not (at least partially) fixed.
Here is a video comparing start times for a Hermes/non Hermes RN app:
I’m currently at Chain React in Portland and they just gave a talk on Hermes. I tweeted a few screenshots that show other perf numbers/technical details for those who are interested.