Skip to content

Audit performance of master with V8 5.4 #8793

Description

@targos

As the new buffer benchmark in #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?

Activity

  1. added
    v8 engineIssues and PRs related to the V8 dependency.
    benchmarkIssues and PRs related to Node.js benchmarks and benchmarking infrastructure.
    performanceIssues and PRs related to the performance of Node.js.
    on Sep 26, 2016
  2. ofrobots commented on Sep 26, 2016

    @ofrobots
    Contributor

    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/

  3. fhinkel commented on Sep 28, 2016

    @fhinkel
    Contributor

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

  4. lpinca commented on Oct 3, 2016

    @lpinca
    Member

    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.

  5. targos commented on Oct 3, 2016

    @targos
    MemberAuthor

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

  6. lpinca commented on Oct 3, 2016

    @lpinca
    Member

    I'll try to investigate a bit.

  7. lpinca commented on Oct 3, 2016

    @lpinca
    Member

    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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    benchmarkIssues and PRs related to Node.js benchmarks and benchmarking infrastructure.performanceIssues and PRs related to the performance of Node.js.v8 engineIssues and PRs related to the V8 dependency.

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions