@nestia/benchmark 0.2.0 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -36,7 +36,7 @@ var DynamicBenchmarWriter;
|
|
|
36
36
|
var format = function (value) {
|
|
37
37
|
return value === null ? "N/A" : (Math.floor(value * 100) / 100).toLocaleString();
|
|
38
38
|
};
|
|
39
|
-
var
|
|
39
|
+
var head = function () {
|
|
40
40
|
return [
|
|
41
41
|
"Type",
|
|
42
42
|
"Count",
|
|
@@ -49,7 +49,7 @@ var DynamicBenchmarWriter;
|
|
|
49
49
|
"\n" +
|
|
50
50
|
new Array(7).fill("----").join("|");
|
|
51
51
|
};
|
|
52
|
-
var
|
|
52
|
+
var row = function (title, s) {
|
|
53
53
|
return [
|
|
54
54
|
title,
|
|
55
55
|
s.count.toLocaleString(),
|
|
@@ -60,6 +60,9 @@ var DynamicBenchmarWriter;
|
|
|
60
60
|
format(s.maximum),
|
|
61
61
|
].join(" | ");
|
|
62
62
|
};
|
|
63
|
+
var line = function (getter) {
|
|
64
|
+
return "line [".concat(report.memories.map(function (m) { return Math.floor(getter(m.usage) / Math.pow(1024, 2)); }).join(", "), "]");
|
|
65
|
+
};
|
|
63
66
|
return __spreadArray(__spreadArray(__spreadArray([
|
|
64
67
|
"# Benchmark Report",
|
|
65
68
|
"> Generated by [`@nestia/benchmark`](https://github.com/samchon/nestia)",
|
|
@@ -78,26 +81,36 @@ var DynamicBenchmarWriter;
|
|
|
78
81
|
" - Complete: ".concat(report.completed_at),
|
|
79
82
|
" - Elapsed: ".concat((new Date(report.completed_at).getTime() - new Date(report.started_at).getTime()).toLocaleString(), " ms"),
|
|
80
83
|
"",
|
|
81
|
-
|
|
82
|
-
|
|
84
|
+
head(),
|
|
85
|
+
row("Total", report.statistics),
|
|
83
86
|
"",
|
|
84
87
|
"> Unit: milliseconds",
|
|
85
88
|
"",
|
|
86
|
-
"## Memory
|
|
89
|
+
"## Memory Consumptions",
|
|
87
90
|
"```mermaid",
|
|
88
91
|
"xychart-beta",
|
|
89
92
|
" x-axis \"Time (second)\"",
|
|
90
93
|
" y-axis \"Memory (MB)\"",
|
|
91
|
-
"
|
|
94
|
+
" ".concat(line(function (m) { return m.rss; })),
|
|
95
|
+
" ".concat(line(function (m) { return m.heapTotal; })),
|
|
96
|
+
" ".concat(line(function (m) { return m.heapUsed + m.external; })),
|
|
97
|
+
" ".concat(line(function (m) { return m.heapUsed; })),
|
|
92
98
|
"```",
|
|
93
99
|
"",
|
|
100
|
+
// `<p align="center">`,
|
|
101
|
+
"> - \uD83D\uDFE6 Resident Set Size",
|
|
102
|
+
"> - \uD83D\uDFE2 Heap Total",
|
|
103
|
+
"> - \uD83D\uDD34 Heap Used + External",
|
|
104
|
+
"> - \uD83D\uDFE1 Heap Used Only",
|
|
105
|
+
// "</p>",
|
|
106
|
+
"",
|
|
94
107
|
"## Endpoints",
|
|
95
|
-
|
|
108
|
+
head()
|
|
96
109
|
], __read(report.endpoints
|
|
97
110
|
.slice()
|
|
98
111
|
.sort(function (a, b) { var _a, _b; return ((_a = b.mean) !== null && _a !== void 0 ? _a : 0) - ((_b = a.mean) !== null && _b !== void 0 ? _b : 0); })
|
|
99
112
|
.map(function (endpoint) {
|
|
100
|
-
return
|
|
113
|
+
return row("".concat(endpoint.method, " ").concat(endpoint.path), endpoint);
|
|
101
114
|
})), false), [
|
|
102
115
|
"",
|
|
103
116
|
"> Unit: milliseconds",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DynamicBenchmarkReporter.js","sourceRoot":"","sources":["../../src/internal/DynamicBenchmarkReporter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,0CAAoB;AAIpB,IAAiB,qBAAqB,
|
|
1
|
+
{"version":3,"file":"DynamicBenchmarkReporter.js","sourceRoot":"","sources":["../../src/internal/DynamicBenchmarkReporter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -6,7 +6,7 @@ export namespace DynamicBenchmarWriter {
|
|
|
6
6
|
export const markdown = (report: DynamicBenchmarker.IReport): string => {
|
|
7
7
|
const format = (value: number | null) =>
|
|
8
8
|
value === null ? "N/A" : (Math.floor(value * 100) / 100).toLocaleString();
|
|
9
|
-
const
|
|
9
|
+
const head = () =>
|
|
10
10
|
[
|
|
11
11
|
"Type",
|
|
12
12
|
"Count",
|
|
@@ -18,10 +18,7 @@ export namespace DynamicBenchmarWriter {
|
|
|
18
18
|
].join(" | ") +
|
|
19
19
|
"\n" +
|
|
20
20
|
new Array(7).fill("----").join("|");
|
|
21
|
-
const
|
|
22
|
-
title: string,
|
|
23
|
-
s: DynamicBenchmarker.IReport.IStatistics,
|
|
24
|
-
) =>
|
|
21
|
+
const row = (title: string, s: DynamicBenchmarker.IReport.IStatistics) =>
|
|
25
22
|
[
|
|
26
23
|
title,
|
|
27
24
|
s.count.toLocaleString(),
|
|
@@ -31,6 +28,9 @@ export namespace DynamicBenchmarWriter {
|
|
|
31
28
|
format(s.minimum),
|
|
32
29
|
format(s.maximum),
|
|
33
30
|
].join(" | ");
|
|
31
|
+
const line = (getter: (m: NodeJS.MemoryUsage) => number): string =>
|
|
32
|
+
`line [${report.memories.map((m) => Math.floor(getter(m.usage) / 1024 ** 2)).join(", ")}]`;
|
|
33
|
+
|
|
34
34
|
return [
|
|
35
35
|
`# Benchmark Report`,
|
|
36
36
|
"> Generated by [`@nestia/benchmark`](https://github.com/samchon/nestia)",
|
|
@@ -49,26 +49,36 @@ export namespace DynamicBenchmarWriter {
|
|
|
49
49
|
` - Complete: ${report.completed_at}`,
|
|
50
50
|
` - Elapsed: ${(new Date(report.completed_at).getTime() - new Date(report.started_at).getTime()).toLocaleString()} ms`,
|
|
51
51
|
``,
|
|
52
|
-
|
|
53
|
-
|
|
52
|
+
head(),
|
|
53
|
+
row("Total", report.statistics),
|
|
54
54
|
"",
|
|
55
55
|
"> Unit: milliseconds",
|
|
56
56
|
"",
|
|
57
|
-
"## Memory
|
|
57
|
+
"## Memory Consumptions",
|
|
58
58
|
"```mermaid",
|
|
59
59
|
"xychart-beta",
|
|
60
60
|
` x-axis "Time (second)"`,
|
|
61
61
|
` y-axis "Memory (MB)"`,
|
|
62
|
-
`
|
|
62
|
+
` ${line((m) => m.rss)}`,
|
|
63
|
+
` ${line((m) => m.heapTotal)}`,
|
|
64
|
+
` ${line((m) => m.heapUsed + m.external)}`,
|
|
65
|
+
` ${line((m) => m.heapUsed)}`,
|
|
63
66
|
"```",
|
|
64
67
|
"",
|
|
68
|
+
// `<p align="center">`,
|
|
69
|
+
`> - 🟦 Resident Set Size`,
|
|
70
|
+
`> - 🟢 Heap Total`,
|
|
71
|
+
`> - 🔴 Heap Used + External`,
|
|
72
|
+
`> - 🟡 Heap Used Only`,
|
|
73
|
+
// "</p>",
|
|
74
|
+
"",
|
|
65
75
|
"## Endpoints",
|
|
66
|
-
|
|
76
|
+
head(),
|
|
67
77
|
...report.endpoints
|
|
68
78
|
.slice()
|
|
69
79
|
.sort((a, b) => (b.mean ?? 0) - (a.mean ?? 0))
|
|
70
80
|
.map((endpoint) =>
|
|
71
|
-
|
|
81
|
+
row(`${endpoint.method} ${endpoint.path}`, endpoint),
|
|
72
82
|
),
|
|
73
83
|
"",
|
|
74
84
|
"> Unit: milliseconds",
|