Skip to content

benchmark: disable concurrent recompilation+sweeping? #11683

@bnoordhuis

Description

@bnoordhuis

I've noticed that many benchmarks have lots of variance unless you pass --noconcurrent_sweeping --noconcurrent_recompilation which forces V8 to run the mark-sweep GC phase and the optimizing compiler on the main thread.

Does it make sense to run with those flags by default? Considerations:

  1. It makes the benchmarks more reliable.
  2. It's not representative of how node is normally run.
  3. Micro-benchmarks aren't representative of normal use either.
  4. Is the variance indicative of problems with V8's thread pool?

(I'd say the answer to 4. is no, variable latency is practically a given with thread pools, but I haven't extensively tested what impact different values for --v8-pool-size=... have.)

cc @nodejs/benchmarking

Metadata

Metadata

Assignees

No one assigned

    Labels

    benchmarkIssues and PRs related to the benchmark subsystem.discussIssues opened for discussions and feedbacks.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions