graal + node.js: how does it work?

Jaroslav Tulach jaroslav.tulach at oracle.com
Wed Jan 3 06:38:19 UTC 2018


Thanks a lot for your measurements, Adam!

On sobota 23. prosince 2017 16:21:25 CET Adam McMahon wrote:
> Jaroslav and group,
> 
> I had a chance to run some tests running node.js on the JVM using the
> Vert.x library. I call this project node.v (node running on vert.x).
> Included are some benchmarks of my approach vs graal-node and native node.
> 
> *[1] node.v*
> 
> Project is found at https://github.com/AdamMcM/node.v 

> Here are some benchmarks.
> 
> *[2a] HelloWorld. *
> https://github.com/AdamMcM/node.v/blob/master/helloTest.js
> 10 concurrent clients, Node.v is the fastest, with graal-native the
> slowest. *Node.v x3* indictes that 3 instnces of vert.x were used. This is
> similar to node’s cluster module, but does not require any change to the
> script, just adding “-–instances 3” to the command line, it will
> automatically scale to 3 event loops. No other code changes are necessary.
> 
> numbers are in requests per second
> 
> node.v x3:  14182          (long jvm warmup: 100k requests)
> node.v : 10103               (long jvm warmup)
> node9:  8172
> node-graal-jvm: 5065       (long jvm warmup)
> node-graal-native: 4101
> 
> [2a] FileTest https://github.com/AdamMcM/node.v/blob/master/fileTest.js
> Read a small file, 36 bytes, and send it back to the client 10 times using
> chunked encoding.
> 
> Node9 3593
> node.v x3: 3354 (after long warm up)
> node.v : 1900 (after long warm up)
> node-graal-native: 228
> node-graal-jvm: 228

Very interesting results. Looks like our group has some performance to improve 
in 2018.

Happy new year!
-jt




More information about the graal-dev mailing list