extra-benchmark 0.1.0 → 0.2.0

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.
package/README.md CHANGED
@@ -46,7 +46,7 @@ for await (const result of benchmark.run()) {
46
46
  ```ts
47
47
  interface IBenchmarkOptions {
48
48
  /* The number of times to warm up the benchmark test */
49
- warmUps?: number
49
+ warms?: number
50
50
 
51
51
  /* The number of times to run the benchmark test */
52
52
  runs?: number
@@ -54,12 +54,11 @@ interface IBenchmarkOptions {
54
54
 
55
55
  interface IBenchmarkCaseResult {
56
56
  name: string
57
- warmUps: number
57
+ warms: number
58
58
  runs: number
59
59
 
60
60
  operationsPerSecond: number
61
61
  operationsPerMillisecond: number
62
- operationsPerNanosecond: number
63
62
 
64
63
  /* Milliseconds */
65
64
  maxiumElapsedTime: bigint
@@ -81,14 +80,23 @@ class Benchmark {
81
80
  constructor(
82
81
  name: string
83
82
  , {
84
- warmUps: 100
83
+ warms: 100
85
84
  , runs: 100
86
85
  }: IBenchmarkOptions = {}
87
86
  )
88
87
 
89
88
  addCase(
90
89
  name: string
91
- , fn: () => Awaitable<() => Awaitable<void>>
90
+ , fn: () => Awaitable<
91
+ // iterate(): afterEach
92
+ | (() => Awaitable<(() => Awaitable<void>) | Falsy>)
93
+ | {
94
+ // iterate(): afterEach
95
+ iterate: () => Awaitable<(() => Awaitable<void>) | Falsy>
96
+ beforeEach?: () => Awaitable<void>
97
+ afterAll?: () => Awaitable<void>
98
+ }
99
+ >
92
100
  , options?: IBenchmarkResult
93
101
  ): void
94
102
 
@@ -1,18 +1,17 @@
1
1
  import { Awaitable } from '@blackglory/prelude';
2
2
  export interface IBenchmarkOptions {
3
- warmUps?: number;
3
+ warms?: number;
4
4
  runs?: number;
5
5
  }
6
6
  export interface IBenchmarkCaseResult {
7
7
  name: string;
8
- warmUps: number;
8
+ warms: number;
9
9
  runs: number;
10
10
  operationsPerSecond: number;
11
11
  operationsPerMillisecond: number;
12
- operationsPerNanosecond: number;
13
- maxiumElapsedTime: bigint;
14
- minimumElapsedTime: bigint;
15
- averageElapsedTime: bigint;
12
+ maxiumElapsedTime: number;
13
+ minimumElapsedTime: number;
14
+ averageElapsedTime: number;
16
15
  maximumMemoryIncrements: number;
17
16
  minimumMemoryIncrements: number;
18
17
  averageMemoryIncrements: number;
@@ -20,9 +19,13 @@ export interface IBenchmarkCaseResult {
20
19
  export declare class Benchmark {
21
20
  readonly name: string;
22
21
  private benchmarkCases;
23
- private warmUps;
22
+ private warms;
24
23
  private runs;
25
24
  constructor(name: string, options?: IBenchmarkOptions);
26
- addCase(name: string, fn: () => Awaitable<() => Awaitable<void>>, options?: IBenchmarkOptions): void;
25
+ addCase(name: string, fn: () => Awaitable<(() => Awaitable<void | (() => Awaitable<void>)>) | {
26
+ iterate: () => Awaitable<void | (() => void)>;
27
+ beforeEach?: () => Awaitable<void>;
28
+ afterAll?: () => Awaitable<void>;
29
+ }>, options?: IBenchmarkOptions): void;
27
30
  run(): AsyncIterable<IBenchmarkCaseResult>;
28
31
  }
package/lib/benchmark.js CHANGED
@@ -6,7 +6,7 @@ class Benchmark {
6
6
  constructor(name, options = {}) {
7
7
  this.name = name;
8
8
  this.benchmarkCases = [];
9
- this.warmUps = options.warmUps ?? 100;
9
+ this.warms = options.warms ?? 100;
10
10
  this.runs = options.runs ?? 100;
11
11
  }
12
12
  addCase(name, fn, options = {}) {
@@ -15,45 +15,37 @@ class Benchmark {
15
15
  async *run() {
16
16
  for (const benchmarkCase of this.benchmarkCases) {
17
17
  const { fn, name, options } = benchmarkCase;
18
- const iterate = await fn();
19
- const warmUps = options.warmUps ?? this.warmUps;
18
+ const result = await fn();
19
+ const iterate = (0, prelude_1.isFunction)(result) ? result : result.iterate;
20
+ const beforeEach = (0, prelude_1.isFunction)(result) ? prelude_1.pass : (result.beforeEach ?? prelude_1.pass);
21
+ const afterAll = (0, prelude_1.isFunction)(result) ? prelude_1.pass : (result.afterAll ?? prelude_1.pass);
22
+ const warms = options.warms ?? this.warms;
20
23
  const runs = options.runs ?? this.runs;
21
- for (let i = warmUps; i--;) {
22
- await iterate();
23
- }
24
- const samples = [];
25
- for (let i = runs; i--;) {
26
- const startRSS = process.memoryUsage().rss;
27
- const startTime = process.hrtime.bigint();
28
- await iterate();
29
- const endTime = process.hrtime.bigint();
30
- const elapsedTime = endTime - startTime;
31
- const endRSS = process.memoryUsage().rss;
32
- const memoryIncrements = endRSS - startRSS;
33
- samples.push({
34
- elapsedTime,
35
- memoryIncrements
36
- });
37
- }
24
+ await sample({
25
+ iterate,
26
+ beforeEach,
27
+ afterAll,
28
+ times: warms
29
+ });
30
+ const samples = await sample({
31
+ iterate,
32
+ beforeEach,
33
+ afterAll,
34
+ times: runs
35
+ });
38
36
  const elapsedTimes = samples.map(x => x.elapsedTime);
39
- const maxiumElapsedTime = elapsedTimes.reduce((max, cur) => cur > max ? cur : max);
40
- const minimumElapsedTime = elapsedTimes.reduce((min, cur) => cur > min ? min : cur);
41
- const totalElapsedTime = elapsedTimes.reduce((acc, cur) => acc + cur);
42
- const averageElapsedTime = totalElapsedTime / BigInt(runs);
43
- const { operationsPerNanosecond, operationsPerMillisecond, operationsPerSecond } = (0, prelude_1.go)(() => {
44
- if (totalElapsedTime <= Number.MAX_SAFE_INTEGER) {
45
- const operationsPerNanosecond = runs / Number(totalElapsedTime);
46
- const operationsPerMillisecond = runs / (Number(totalElapsedTime) / 1000000);
47
- const operationsPerSecond = runs / (Number(totalElapsedTime) / 1000000 / 1000);
48
- return { operationsPerSecond, operationsPerMillisecond, operationsPerNanosecond };
49
- }
50
- else {
51
- const operationsPerNanosecond = Number(BigInt(runs) / totalElapsedTime);
52
- const operationsPerMillisecond = runs / Number(totalElapsedTime / 1000000n);
53
- const operationsPerSecond = runs / (Number(totalElapsedTime / 1000000n) / 1000);
54
- return { operationsPerSecond, operationsPerMillisecond, operationsPerNanosecond };
55
- }
37
+ const maxiumElapsedTime = elapsedTimes.reduce((max, cur) => {
38
+ return cur > max ? cur : max;
39
+ });
40
+ const minimumElapsedTime = elapsedTimes.reduce((min, cur) => {
41
+ return cur > min ? min : cur;
56
42
  });
43
+ const totalElapsedTime = elapsedTimes.reduce((acc, cur) => {
44
+ return acc + cur;
45
+ });
46
+ const averageElapsedTime = totalElapsedTime / runs;
47
+ const operationsPerMillisecond = runs / totalElapsedTime;
48
+ const operationsPerSecond = runs / (totalElapsedTime / 1000);
57
49
  const memoryIncrments = samples.map(x => x.memoryIncrements);
58
50
  const maximumMemoryIncrements = memoryIncrments.reduce((max, cur) => {
59
51
  return cur > max ? cur : max;
@@ -66,11 +58,10 @@ class Benchmark {
66
58
  });
67
59
  yield {
68
60
  name,
69
- warmUps,
61
+ warms,
70
62
  runs,
71
63
  operationsPerSecond,
72
64
  operationsPerMillisecond,
73
- operationsPerNanosecond,
74
65
  maxiumElapsedTime,
75
66
  minimumElapsedTime,
76
67
  averageElapsedTime,
@@ -82,4 +73,23 @@ class Benchmark {
82
73
  }
83
74
  }
84
75
  exports.Benchmark = Benchmark;
76
+ async function sample({ iterate, beforeEach, afterAll, times }) {
77
+ const samples = [];
78
+ for (let i = times; i--;) {
79
+ await beforeEach();
80
+ const startRSS = process.memoryUsage().rss;
81
+ const startTime = performance.now();
82
+ const afterEach = await iterate();
83
+ const endTime = performance.now();
84
+ const endRSS = process.memoryUsage().rss;
85
+ if ((0, prelude_1.isFunction)(afterEach)) {
86
+ await afterEach();
87
+ }
88
+ const elapsedTime = endTime - startTime;
89
+ const memoryIncrements = endRSS - startRSS;
90
+ samples.push({ elapsedTime, memoryIncrements });
91
+ }
92
+ await afterAll();
93
+ return samples;
94
+ }
85
95
  //# sourceMappingURL=benchmark.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../src/benchmark.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"benchmark.js","sourceRoot":"","sources":["../src/benchmark.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "extra-benchmark",
3
- "version": "0.1.0",
3
+ "version": "0.2.0",
4
4
  "description": "Lightweight benchmarking library.",
5
5
  "keywords": [],
6
6
  "files": [
@@ -33,27 +33,27 @@
33
33
  }
34
34
  },
35
35
  "devDependencies": {
36
- "@blackglory/jest-matchers": "^0.3.1",
37
- "@commitlint/cli": "^17.0.3",
38
- "@commitlint/config-conventional": "^17.0.3",
39
- "@types/jest": "^27.4.1",
40
- "@types/node": "^18.7.13",
41
- "@typescript-eslint/eslint-plugin": "^5.35.1",
42
- "@typescript-eslint/parser": "^5.35.1",
43
- "eslint": "^8.22.0",
36
+ "@blackglory/jest-matchers": "^0.5.0",
37
+ "@commitlint/cli": "^17.3.0",
38
+ "@commitlint/config-conventional": "^17.3.0",
39
+ "@types/jest": "^29.2.3",
40
+ "@types/node": "16",
41
+ "@typescript-eslint/eslint-plugin": "^5.44.0",
42
+ "@typescript-eslint/parser": "^5.44.0",
43
+ "eslint": "^8.28.0",
44
44
  "husky": "^4.3.8",
45
- "iterable-operator": "^1.2.1",
46
- "jest": "^27.5.1",
45
+ "iterable-operator": "^2.5.0",
46
+ "jest": "^29.3.1",
47
47
  "npm-run-all": "^4.1.5",
48
48
  "return-style": "^1.0.0",
49
49
  "rimraf": "^3.0.2",
50
50
  "standard-version": "^9.5.0",
51
- "ts-jest": "^27.1.4",
51
+ "ts-jest": "^29.0.3",
52
52
  "tscpaths": "^0.0.9",
53
- "tslib": "^2.3.1",
54
- "typescript": "^4.8.2"
53
+ "tslib": "^2.4.1",
54
+ "typescript": "^4.9.3"
55
55
  },
56
56
  "dependencies": {
57
- "@blackglory/prelude": "^0.1.4"
57
+ "@blackglory/prelude": "^0.1.8"
58
58
  }
59
59
  }