Open yamsellem opened 9 years ago
It looks like this was caused by an across the board performance drop in node 0.12.
Apparently this is caused by them picking up some performance-degrading changes in V8 without the subsequent fixes.
I don't know what you could do here except for downgrading node, waiting for a release with a more recent V8 build, or switch to io.js maybe? (https://raygun.io/blog/2015/05/performance-showdown-node-js-vs-io-js-v2-0-0/)
We've been reviewing our code for the big jump to 0.12 and we've not found any global performance drop. Several things may seem slower (accessing or assigning object for instance) but this is more related to micro benchmark (in the cases we've found so far). On the other hand, there is some real performance boost as well.
Creating objects and arrays seems more expensive (in heavy algorithm mainly), but it seems that manipulating data is faster than ever.
I'm sorry that I cannot be more precise on a recipe to boost an algorithm for 0.12, I don't know any. It seems that a lot of libraries are not affected be this shift, but, for the others (uglify has a similar issue) solutions remain to be found.
We've found a performance drop in our production code when migrating to node 0.12. Here is a benchmark that reproduces it (based on the readme sample):
On node 0.10.24 (tested on 0.10.39 with similar results)
On node 0.12.6 (tested on 0.12.0 with similar results)
Any idea on the matter?