View source | View content page | Page history | Printable version   

Projects:Add JavaScript Engine/QA

Contents

Performance

Performance testing for the new JS Engine and the new JS minifier.

Rhino JS engine

Rhino is the new JS engine that is being added by this project instead of Nashorn. Performance testing has been made to make sure it has no memory leaks and check that it works as expected.

Rhino performance on a load-test:

Heap and non-heap Memory

Rhino-load-test.png


For reference, this is the same load-test on the previous engine, Nashorn:

Nashorn-load-test.png

Garbage collection logs have also been analyzed to make sure there's no memory leak in Rhino and there are none so far.

In terms of speed evaluating JS, both rhino and nashorn are very similar.

Concurrency

Concurrency has been tested by executing JavaScript evaluation method over a time consuming JS method several times with different thread counts and counting the average time to finish execution. This has been done for both rhino and nashorn JS engines.

In conclusion, Rhino JS is faster than Nashorn when executing with multithreading, while Nashorn is a bit faster than Rhino JS when in single-thread mode.

JSMin JavaScript minifier

Performance testing has been done to check the compression level between yui-compressor(removed in this project) and JSMin(used for minifying after yui removal).

Retrieved from "http://wiki.openbravo.com/wiki/Projects:Add_JavaScript_Engine/QA"

This page has been accessed 430 times. This page was last modified on 3 November 2020, at 17:10. Content is available under Creative Commons Attribution-ShareAlike 2.5 Spain License.