Skip to content

Commit f69021c

Browse files
committed
upgrade benchmark
1 parent 31dc55b commit f69021c

File tree

6 files changed

+53
-60
lines changed

6 files changed

+53
-60
lines changed

packages/argon2/benchmark/argon2.ts

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ bench
3232
console.assert(await nodeArgon2.verify(HASHED, PASSWORD))
3333
})
3434

35-
await bench.warmup()
3635
await bench.run()
3736

3837
console.table(bench.table())

packages/bcrypt/benchmark/bcrypt.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@ import openwall from '@cwasm/openwall-bcrypt'
33
import { hashSync, compare, genSaltSync } from 'bcrypt'
44
import bcryptjs from 'bcryptjs'
55
import { Bench } from 'tinybench'
6-
import chalk from 'chalk'
76

87
import { hashSync as napiHashSync, verifySync, genSaltSync as napiGenSaltSync } from '../binding.js'
98

109
const password = 'node-rust-password'
1110

12-
const syncHashSuite = new Bench()
11+
const syncHashSuite = new Bench({
12+
name: 'Hash benchmark',
13+
})
14+
1315
syncHashSuite
1416
.add('@node-rs/bcrypt', () => {
1517
napiHashSync(password, 10)
@@ -27,13 +29,13 @@ syncHashSuite
2729
openwall.hashSync(password, 10)
2830
})
2931

30-
await syncHashSuite.warmup()
3132
await syncHashSuite.run()
3233

33-
console.info(chalk.green('Hash benchmark'))
3434
console.table(syncHashSuite.table())
3535

36-
const verifySuite = new Bench()
36+
const verifySuite = new Bench({
37+
name: 'Verify benchmark`',
38+
})
3739
const hashed = napiHashSync(password, 12)
3840
verifySuite
3941
.add('@node-rs/bcrypt', () => {
@@ -46,13 +48,13 @@ verifySuite
4648
bcryptjs.compareSync(password, hashed)
4749
})
4850

49-
await verifySuite.warmup()
5051
await verifySuite.run()
5152

52-
console.info(chalk.green('Verify benchmark'))
5353
console.table(verifySuite.table())
5454

55-
const genSaltSuite = new Bench()
55+
const genSaltSuite = new Bench({
56+
name: 'GenSalt benchmark',
57+
})
5658
genSaltSuite
5759
.add('@node-rs/bcrypt', () => {
5860
napiGenSaltSync(12)
@@ -70,8 +72,6 @@ genSaltSuite
7072
openwall.genSaltSync(12)
7173
})
7274

73-
await genSaltSuite.warmup()
7475
await genSaltSuite.run()
7576

76-
console.info(chalk.green('GenSalt benchmark'))
7777
console.table(genSaltSuite.table())

packages/crc32/benchmark/crc32.ts

Lines changed: 16 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { Bench } from 'tinybench'
2-
import chalk from 'chalk'
32
import { crc32 as crc32Node } from 'crc'
43
import Sse4Crc32 from 'sse4_crc32'
54

@@ -26,66 +25,66 @@ const initialCrc32c = Sse4Crc32.calculate(TEST_BUFFER)
2625
console.assert(crc32(TEST_BUFFER) === initialCrc32)
2726
console.assert(crc32c(TEST_BUFFER) === initialCrc32c)
2827

29-
const suite = new Bench()
28+
const suite = new Bench({
29+
name: 'crc32c without initial crc',
30+
})
3031

31-
await suite
32+
suite
3233
.add('@node/rs crc32c', () => {
3334
crc32c(TEST_BUFFER)
3435
})
3536
.add('sse4_crc32', () => {
3637
Sse4Crc32.calculate(TEST_BUFFER)
3738
})
38-
.warmup()
3939

4040
await suite.run()
4141

42-
console.info(chalk.green('crc32c without initial crc'))
4342
console.table(suite.table())
4443

45-
const suite2 = new Bench()
44+
const suite2 = new Bench({
45+
name: 'crc32c with initial crc',
46+
})
4647

47-
await suite2
48+
suite2
4849
.add('@node/rs crc32c', () => {
4950
crc32c(TEST_BUFFER, initialCrc32c)
5051
})
5152
.add('sse4_crc32', () => {
5253
Sse4Crc32.calculate(TEST_BUFFER, initialCrc32c)
5354
})
54-
.warmup()
5555

5656
await suite2.run()
5757

58-
console.info(chalk.green('crc32c with initial crc'))
5958
console.table(suite2.table())
6059

61-
const suite3 = new Bench()
60+
const suite3 = new Bench({
61+
name: 'crc32 without initial crc',
62+
})
6263

63-
await suite3
64+
suite3
6465
.add('@node/rs crc32', () => {
6566
crc32(TEST_BUFFER)
6667
})
6768
.add('Node crc', () => {
6869
crc32Node(TEST_BUFFER)
6970
})
70-
.warmup()
7171

7272
await suite3.run()
7373

74-
console.info(chalk.green('crc32 without initial crc'))
7574
console.table(suite3.table())
7675

77-
const suite4 = new Bench()
76+
const suite4 = new Bench({
77+
name: 'crc32 with initial crc',
78+
})
7879

79-
await suite4
80+
suite4
8081
.add('@node/rs crc32', () => {
8182
crc32(TEST_BUFFER, initialCrc32)
8283
})
8384
.add('Node crc32', () => {
8485
crc32Node(TEST_BUFFER, initialCrc32)
8586
})
86-
.warmup()
8787

8888
await suite4.run()
8989

90-
console.info(chalk.green('crc32 with initial crc'))
9190
console.table(suite4.table())

packages/jieba/benchmark/jieba.ts

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import { join } from 'node:path'
33
import { fileURLToPath } from 'node:url'
44

55
import { Bench } from 'tinybench'
6-
import chalk from 'chalk'
76
import nodejieba from 'nodejieba'
87

98
import { Jieba } from '../index.js'
@@ -32,16 +31,15 @@ async function createBench(
3231
napi: () => any[],
3332
jieba: () => any[],
3433
) {
35-
const suite = new Bench()
34+
const suite = new Bench({
35+
name: suitename,
36+
})
3637
console.assert(transform(napi()) === transform(jieba()))
3738

3839
suite.add('@node-rs/jieba', napi).add('nodejieba', jieba)
3940

40-
await suite.warmup()
41-
4241
await suite.run()
4342

44-
console.info(chalk.green(`Benchmark ${suitename} result`))
4543
console.table(suite.table())
4644
}
4745

packages/jsonwebtoken/benchmark/jsonwebtoken.ts

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { Bench } from 'tinybench'
2-
import chalk from 'chalk'
32
import nodeJsonwebtoken, { type PrivateKey, type Secret, type PublicKey, type GetPublicKeyOrSecret } from 'jsonwebtoken'
43

54
import { sign, verify, verifySync, signSync } from '../index.js'
@@ -43,9 +42,11 @@ const jwtClaims = {
4342
}
4443
const token = nodeJwtSignSync(jwtClaims, secretKey)
4544

46-
const suite = new Bench()
45+
const suite = new Bench({
46+
name: 'Sign token',
47+
})
4748

48-
await suite
49+
suite
4950
.add('@node-rs/jsonwebtoken', async () => {
5051
await sign(jwtClaims, secretKey)
5152
})
@@ -58,15 +59,15 @@ await suite
5859
.add('jsonwebtoken sync', () => {
5960
nodeJwtSignSync(jwtClaims, secretKey)
6061
})
61-
.warmup()
6262

6363
await suite.run()
64-
console.info(chalk.green('Sign token'))
6564
console.table(suite.table())
6665

67-
const verifySuite = new Bench()
66+
const verifySuite = new Bench({
67+
name: 'Verify token',
68+
})
6869

69-
await verifySuite
70+
verifySuite
7071
.add('@node-rs/jsonwebtoken', async () => {
7172
await verify(token, secretKey)
7273
})
@@ -79,8 +80,6 @@ await verifySuite
7980
.add('jsonwebtoken sync', () => {
8081
nodeJwtVerifySync(token, secretKey)
8182
})
82-
.warmup()
8383

8484
await verifySuite.run()
85-
console.info(chalk.green('Verify token'))
8685
console.table(verifySuite.table())

packages/xxhash/benchmark/xxhash.ts

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import { join } from 'node:path'
33
import { fileURLToPath } from 'node:url'
44

55
import { Bench } from 'tinybench'
6-
import chalk from 'chalk'
76
// @ts-expect-error
87
import createWasmHasher from 'webpack/lib/util/hash/xxhash64.js'
98
// @ts-expect-error
@@ -16,9 +15,11 @@ const FX = readFileSync(join(fileURLToPath(import.meta.url), '..', '..', '..', '
1615

1716
const wasmHasher = createWasmHasher()
1817

19-
const suite = new Bench()
18+
const suite = new Bench({
19+
name: 'xxh32 without initial seed',
20+
})
2021

21-
await suite
22+
suite
2223
.add('@node-rs/xxhash h32', () => {
2324
xxh32(FX, 0)
2425
})
@@ -28,32 +29,31 @@ await suite
2829
.add('xxhashjs h32', () => {
2930
xxhashjs.h32(FX, 0).toNumber()
3031
})
31-
.warmup()
32-
33-
console.info(chalk.green('xxh32 without initial seed'))
3432

3533
await suite.run()
3634
console.table(suite.table())
3735

38-
const multiStepSuite = new Bench()
36+
const multiStepSuite = new Bench({
37+
name: 'xxh32 without initial seed multi step',
38+
})
3939

40-
await multiStepSuite
40+
multiStepSuite
4141
.add('@node-rs/xxhash h32', () => {
4242
new Xxh32().update(FX).digest()
4343
})
4444
.add('xxhashjs h32', () => {
4545
xxhashjs.h32().update(FX).digest().toNumber()
4646
})
47-
.warmup()
4847

4948
await multiStepSuite.run()
5049

51-
console.info(chalk.green('xxh32 without initial seed multi step'))
5250
console.table(multiStepSuite.table())
5351

54-
const xx64Suite = new Bench()
52+
const xx64Suite = new Bench({
53+
name: 'xxh64 without initial seed',
54+
})
5555

56-
await xx64Suite
56+
xx64Suite
5757
.add('@node-rs/xxhash 64', () => {
5858
xxh64(FX).toString(16)
5959
})
@@ -67,16 +67,16 @@ await xx64Suite
6767
.add('xxhashjs h64', () => {
6868
xxhashjs.h64(FX, 0).toString(16)
6969
})
70-
.warmup()
7170

7271
await xx64Suite.run()
7372

74-
console.info(chalk.green('xxh64 without initial seed'))
7573
console.table(xx64Suite.table())
7674

77-
const multiStepSuite64 = new Bench()
75+
const multiStepSuite64 = new Bench({
76+
name: 'xxh64 without initial seed multi step',
77+
})
7878

79-
await multiStepSuite64
79+
multiStepSuite64
8080
.add('@node-rs/xxhash 64', () => {
8181
new Xxh64().update(FX).digest().toString(16)
8282
})
@@ -87,9 +87,7 @@ await multiStepSuite64
8787
.add('xxhashjs h64', () => {
8888
xxhashjs.h64(0).update(FX).digest().toString(16)
8989
})
90-
.warmup()
9190

9291
await multiStepSuite64.run()
9392

94-
console.info(chalk.green('xxh64 without initial seed multi step'))
9593
console.table(multiStepSuite64.table())

0 commit comments

Comments
 (0)