1
- # How to Write and Run Benchmarks in Node.js Core
1
+ # How to write and run benchmarks in Node.js core
2
2
3
- ## Table of Contents
3
+ ## Table of contents
4
4
5
5
* [ Prerequisites] ( #prerequisites )
6
- * [ HTTP Benchmark Requirements ] ( #http-benchmark-requirements )
7
- * [ HTTPS Benchmark Requirements ] ( #https-benchmark-requirements )
8
- * [ HTTP/2 Benchmark Requirements ] ( #http2-benchmark-requirements )
9
- * [ Benchmark Analysis Requirements ] ( #benchmark-analysis-requirements )
6
+ * [ HTTP benchmark requirements ] ( #http-benchmark-requirements )
7
+ * [ HTTPS benchmark requirements ] ( #https-benchmark-requirements )
8
+ * [ HTTP/2 benchmark requirements ] ( #http2-benchmark-requirements )
9
+ * [ Benchmark analysis requirements ] ( #benchmark-analysis-requirements )
10
10
* [ Running benchmarks] ( #running-benchmarks )
11
11
* [ Running individual benchmarks] ( #running-individual-benchmarks )
12
12
* [ Running all benchmarks] ( #running-all-benchmarks )
13
13
* [ Filtering benchmarks] ( #filtering-benchmarks )
14
14
* [ Comparing Node.js versions] ( #comparing-nodejs-versions )
15
15
* [ Comparing parameters] ( #comparing-parameters )
16
- * [ Running Benchmarks on the CI] ( #running-benchmarks-on-the-ci )
16
+ * [ Running benchmarks on the CI] ( #running-benchmarks-on-the-ci )
17
17
* [ Creating a benchmark] ( #creating-a-benchmark )
18
18
* [ Basics of a benchmark] ( #basics-of-a-benchmark )
19
19
* [ Creating an HTTP benchmark] ( #creating-an-http-benchmark )
@@ -24,7 +24,7 @@ Basic Unix tools are required for some benchmarks.
24
24
[ Git for Windows] [ git-for-windows ] includes Git Bash and the necessary tools,
25
25
which need to be included in the global Windows ` PATH ` .
26
26
27
- ### HTTP Benchmark Requirements
27
+ ### HTTP benchmark requirements
28
28
29
29
Most of the HTTP benchmarks require a benchmarker to be installed. This can be
30
30
either [ ` wrk ` ] [ wrk ] or [ ` autocannon ` ] [ autocannon ] .
@@ -45,22 +45,22 @@ benchmarker to be used should be specified by providing it as an argument:
45
45
46
46
` node benchmark/http/simple.js benchmarker=autocannon `
47
47
48
- #### HTTPS Benchmark Requirements
48
+ #### HTTPS benchmark requirements
49
49
50
50
To run the ` https ` benchmarks, one of ` autocannon ` or ` wrk ` benchmarkers must
51
51
be used.
52
52
53
53
` node benchmark/https/simple.js benchmarker=autocannon `
54
54
55
- #### HTTP/2 Benchmark Requirements
55
+ #### HTTP/2 benchmark requirements
56
56
57
57
To run the ` http2 ` benchmarks, the ` h2load ` benchmarker must be used. The
58
58
` h2load ` tool is a component of the ` nghttp2 ` project and may be installed
59
59
from [ nghttp2.org] [ ] or built from source.
60
60
61
61
` node benchmark/http2/simple.js benchmarker=h2load `
62
62
63
- ### Benchmark Analysis Requirements
63
+ ### Benchmark analysis requirements
64
64
65
65
To analyze the results, ` R ` should be installed. Use one of the available
66
66
package managers or download it from < https://www.r-project.org/ > .
@@ -423,7 +423,7 @@ chunkLen encoding rate confidence.interval
423
423
424
424
![ compare tool boxplot] ( doc_img/scatter-plot.png )
425
425
426
- ### Running Benchmarks on the CI
426
+ ### Running benchmarks on the CI
427
427
428
428
To see the performance impact of a Pull Request by running benchmarks on
429
429
the CI, check out [ How to: Running core benchmarks on Node.js CI] [ benchmark-ci ] .
0 commit comments