Live data from Hacker News

Hermes – A small JavaScript engine optimized for running React Native on Android

github.com

1–10 of 57 posts

Re: Hermes – A small JavaScript engine optimized for running React Native on Android

#3
post #2

They harp a lot on how fast it starts up - which sounds great - but I would like to have some solid numbers on what that startup time actually is on actual devices! I can't seem to find anything perusing around the GH page or the site

Here are some details on Hermes perf with sample code:

https://mobile.twitter.com/htormey/status/114935339023051980...

Here is a video comparing start times for a Hermes/non Hermes RN app:

https://mobile.twitter.com/nparashuram/status/11493502142154...

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.

Re: Hermes – A small JavaScript engine optimized for running React Native on Android

#4
post #3
post #2

They harp a lot on how fast it starts up - which sounds great - but I would like to have some solid numbers on what that startup time actually is on actual devices! I can't seem to find anything perusing around the GH page or the site

Here are some details on Hermes perf with sample code: https://mobile.twitter.com/htormey/status/114935339023051980... Here is a video comparing start times for a Hermes/non Hermes RN app: https://mobile.twitter.com/nparashuram/status/11493502142154... 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…

Thanks for the links!

Re: Hermes – A small JavaScript engine optimized for running React Native on Android

#5
post #2

They harp a lot on how fast it starts up - which sounds great - but I would like to have some solid numbers on what that startup time actually is on actual devices! I can't seem to find anything perusing around the GH page or the site

We have done some internal tests of Hermes on a RN experience within Microsoft Office on Android.

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.

Re: Hermes – A small JavaScript engine optimized for running React Native on Android

#6
I understand and accept the reality of path dependence.

At the same time, when I see projects like his, V8, HHVM, etc. I can't help but wonder where we could be if all of that engineering effort had gone into more carefully-designed languages.

Re: Hermes – A small JavaScript engine optimized for running React Native on Android

#7

I understand and accept the reality of path dependence. At the same time, when I see projects like his, V8, HHVM, etc. I can't help but wonder where we could be if all of that engineering effort had gone into more carefully-designed languages.

There's always skip http://www.skiplang.com/

> Skip is an experimental programming language developed at Facebook from 2015-2018.

Re: Hermes – A small JavaScript engine optimized for running React Native on Android

#8

I understand and accept the reality of path dependence. At the same time, when I see projects like his, V8, HHVM, etc. I can't help but wonder where we could be if all of that engineering effort had gone into more carefully-designed languages.

Every language involves tradeoffs. The initial JS tradeoffs were ok for the target audience and environments. A "carefully-designed language" in 2019 might hold up for 2019 use cases but we don't know whether the tradeoffs will make sense in 2029

Re: Hermes – A small JavaScript engine optimized for running React Native on Android

#9

I understand and accept the reality of path dependence. At the same time, when I see projects like his, V8, HHVM, etc. I can't help but wonder where we could be if all of that engineering effort had gone into more carefully-designed languages.

Every language involves tradeoffs. The initial JS tradeoffs were ok for the target audience and environments. A "carefully-designed language" in 2019 might hold up for 2019 use cases but we don't know whether the tradeoffs will make sense in 2029

Can't we be reasonably sure it will be better than a weekend spitball? (The most successful spitball of all time to give due credit)

Re: Hermes – A small JavaScript engine optimized for running React Native on Android

#10
post #5
post #2

They harp a lot on how fast it starts up - which sounds great - but I would like to have some solid numbers on what that startup time actually is on actual devices! I can't seem to find anything perusing around the GH page or the site

We have done some internal tests of Hermes on a RN experience within Microsoft Office on Android. 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 inte…

From your numbers:

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.

Post reply on HN