Node: Audit performance of master with V8 5.4

Created on 26 Sep 2016  路  6Comments  路  Source: nodejs/node

As the new buffer benchmark in https://github.com/nodejs/node/pull/8738 showed, it is possible that the update to V8 5.4 introduced regressions in the performance of node core.

@nodejs/benchmarking do we have comparable results of the existing benchmarks between V8 5.1 and 5.4? Do some of them show a possible drop of performance?

V8 Engine benchmark performance

Most helpful comment

I'm a noob. The perf drop was caused by a binary addon not recompiled for the new version. There isn't a noticeable difference in the above-mentioned benchmark.

All 6 comments

The nightly performance runs should already be tracking V8 5.4 on master since it landed last week.

My quick reading is:

  • Startup time is better
  • Startup footprint is unchanged
  • Require: unchanged
  • AcmeAir throughput is improved
  • AcmeAir latency is improved
  • AcmeAir footprint unchanged.

EDIT: link: https://benchmarking.nodejs.org/

I agree, I don't see a regression on the benchmarking site.

I've seen a significant performance drop when running this low quality benchmark on ws repo.

node 6.7.0:

Generating 500 MiB of test data...
10000 roundtrips of 64 B binary data:   1.5s    414.78 KiB/s
5000 roundtrips of 16 KiB binary data:  1.2s    65.31 MiB/s
1000 roundtrips of 128 KiB binary data: 1s  120.87 MiB/s
100 roundtrips of 1 MiB binary data:    0.7s    140.55 MiB/s
1 roundtrips of 500 MiB binary data:    3.4s    147.93 MiB/s
10000 roundtrips of 64 B text data: 1.7s    369.63 KiB/s
5000 roundtrips of 16 KiB text data:    2.3s    33.98 MiB/s
1000 roundtrips of 128 KiB text data:   2.6s    48.55 MiB/s
100 roundtrips of 1 MiB text data:  2.6s    38.25 MiB/s

node master:

Generating 500 MiB of test data...
10000 roundtrips of 64 B binary data:   1.4s    439.37 KiB/s
5000 roundtrips of 16 KiB binary data:  1.8s    42.9 MiB/s
1000 roundtrips of 128 KiB binary data: 1.9s    64.29 MiB/s
100 roundtrips of 1 MiB binary data:    1.7s    60.07 MiB/s
1 roundtrips of 500 MiB binary data:    8.4s    59.24 MiB/s
10000 roundtrips of 64 B text data: 1.4s    434.88 KiB/s
5000 roundtrips of 16 KiB text data:    2s  40.06 MiB/s
1000 roundtrips of 128 KiB text data:   2.3s    55.35 MiB/s
100 roundtrips of 1 MiB text data:  2.1s    47.57 MiB/s

but it's an external library so I don't know if it's relevant.

@lpinca It could be relevant. Depends if the regression is in core / V8 or in the library.

I'll try to investigate a bit.

I'm a noob. The perf drop was caused by a binary addon not recompiled for the new version. There isn't a noticeable difference in the above-mentioned benchmark.

Was this page helpful?
0 / 5 - 0 ratings