Skip to content

Commit 9af2250

Browse files
Commit from GitHub Actions (ORM Benchmark)
1 parent 356dc5f commit 9af2250

18 files changed

+478
-478
lines changed

bun.lockb

14.3 KB
Binary file not shown.

package.json

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"type": "module",
55
"devDependencies": {
66
"@pgtyped/cli": "^2.4.3",
7-
"@types/pg": "^8.15.4",
7+
"@types/pg": "^8.15.5",
88
"@types/pg-pool": "^2.0.6",
99
"bun-types": "latest"
1010
},
@@ -17,17 +17,17 @@
1717
"@mikro-orm/mysql": "^6.4.16",
1818
"@mikro-orm/postgresql": "^6.4.16",
1919
"@pgtyped/runtime": "^2.4.2",
20-
"@prisma/client": "^6.12.0",
21-
"drizzle-orm": "^0.44.3",
20+
"@prisma/client": "^6.13.0",
21+
"drizzle-orm": "^0.44.4",
2222
"knex": "^3.1.0",
23-
"kysely": "^0.28.3",
23+
"kysely": "^0.28.4",
2424
"mariadb": "^3.4.5",
2525
"mitata": "^1.0.34",
26-
"mysql2": "^3.14.2",
26+
"mysql2": "^3.14.3",
2727
"pg": "^8.16.3",
2828
"pg-pool": "^3.10.1",
2929
"postgres": "~3.4.7",
30-
"prisma": "^6.12.0",
30+
"prisma": "^6.13.0",
3131
"reflect-metadata": "^0.2.2",
3232
"sequelize": "^6.37.7",
3333
"ts-node": "^10.9.2",

results/bun-mysql-cpu-count.txt

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,43 @@
1-
clk: ~1.55 GHz
1+
clk: ~3.09 GHz
22
cpu: AMD EPYC 7763 64-Core Processor
33
runtime: bun 1.2.19 (x64-linux)
44

55
benchmark avg (min … max) p75 / p99 (min … top 1%)
66
------------------------------------------- -------------------------------
77
• MySQL
88
------------------------------------------- -------------------------------
9-
DrizzleORM 530.75 µs/iter 511.66 µs █
10-
(370.51 µs … 4.51 ms) 1.94 ms
11-
( 0.00 b … 7.38 mb) 31.84 kb ▅██▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
9+
DrizzleORM 530.70 µs/iter 528.31 µs █
10+
(374.44 µs … 2.53 ms) 1.97 ms ▃█▃
11+
( 0.00 b … 6.00 mb) 28.53 kb ███▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1212

13-
KnexJS 360.80 µs/iter 351.46 µs █
14-
(266.94 µs … 2.07 ms) 1.45 ms
15-
( 0.00 b … 256.00 kb) 2.41 kb ██▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
13+
KnexJS 354.67 µs/iter 346.09 µs █
14+
(270.02 µs … 2.00 ms) 1.44 ms
15+
( 0.00 b … 256.00 kb) 2.16 kb ██▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1616

17-
Kysely 319.26 µs/iter 313.31 µs █
18-
(245.77 µs … 1.80 ms) 1.35 ms
19-
( 0.00 b … 896.00 kb) 2.95 kb ██▆▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
17+
Kysely 309.73 µs/iter 307.56 µs █
18+
(251.31 µs … 1.43 ms) 1.16 ms
19+
( 0.00 b … 384.00 kb) 3.10 kb ██▇▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2020

21-
Mariadb 253.96 µs/iter 248.26 µs █
22-
(186.71 µs … 1.75 ms) 1.27 ms
23-
( 0.00 b … 256.00 kb) 1.40 kb ██▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
21+
Mariadb 248.32 µs/iter 246.40 µs █
22+
(182.54 µs … 1.96 ms) 1.08 ms
23+
( 0.00 b … 384.00 kb) 1.38 kb ▅█▇▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2424

25-
MikroORM 476.17 µs/iter 595.37 µs
26-
(28.78 µs … 3.19 ms) 2.22 ms █ ██
27-
( 0.00 b … 896.00 kb) 13.11 kb █▁▁██▃▂▁▁▁▁▁▁▁▁▁▁▁
25+
MikroORM 497.63 µs/iter 608.30 µs
26+
(29.14 µs … 3.07 ms) 2.40 ms █ ██
27+
( 0.00 b … 768.00 kb) 13.14 kb █▁▁██▃▂▁▁▁▁▁▁▁▁▁▁▁
2828

29-
MySQL2 273.18 µs/iter 268.28 µs █
30-
(205.91 µs … 1.73 ms) 1.36 ms
31-
( 0.00 b … 256.00 kb) 1.19 kb ██▄▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
29+
MySQL2 261.65 µs/iter 262.22 µs █
30+
(201.59 µs … 1.31 ms) 1.11 ms
31+
( 0.00 b … 128.00 kb) 0.98 kb ███▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3232

33-
Prisma 578.55 µs/iter 557.28 µs █
34-
(468.43 µs … 1.99 ms) 1.72 ms █
35-
( 0.00 b … 256.00 kb) 2.97 kb ██▆▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
33+
Prisma 543.16 µs/iter 527.48 µs █
34+
(464.20 µs … 1.65 ms) 1.38 ms █
35+
( 0.00 b … 804.00 kb) 3.02 kb ▇█▅▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3636

37-
Sequelize 490.66 µs/iter 480.68 µs █
38-
(352.75 µs … 2.91 ms) 1.82 ms ▂█▃
39-
( 0.00 b … 640.00 kb) 14.23 kb ███▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
37+
Sequelize 506.10 µs/iter 494.91 µs █
38+
(355.11 µs … 2.65 ms) 2.04 ms ▄█▂
39+
( 0.00 b … 640.00 kb) 10.29 kb ███▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
4040

41-
TypeORM 448.30 µs/iter 436.15 µs █
42-
(323.01 µs … 2.65 ms) 1.80 ms
43-
( 0.00 b … 768.00 kb) 8.33 kb ███▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
41+
TypeORM 445.73 µs/iter 434.52 µs █
42+
(320.50 µs … 2.23 ms) 1.85 ms
43+
( 0.00 b … 640.00 kb) 5.76 kb ███▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁

results/bun-mysql-default.txt

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,43 @@
1-
clk: ~1.70 GHz
1+
clk: ~2.37 GHz
22
cpu: AMD EPYC 7763 64-Core Processor
33
runtime: bun 1.2.19 (x64-linux)
44

55
benchmark avg (min … max) p75 / p99 (min … top 1%)
66
------------------------------------------- -------------------------------
77
• MySQL
88
------------------------------------------- -------------------------------
9-
DrizzleORM 534.45 µs/iter 529.47 µs █
10-
(367.61 µs … 3.89 ms) 1.91 ms █▃
11-
( 0.00 b … 6.75 mb) 32.00 kb ▇██▅▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
9+
DrizzleORM 516.76 µs/iter 501.83 µs █
10+
(364.31 µs … 3.97 ms) 1.77 ms █▃
11+
( 0.00 b … 3.00 mb) 28.07 kb ▅██▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1212

13-
KnexJS 375.73 µs/iter 363.07 µs █
14-
(270.76 µs … 2.42 ms) 1.73 ms
15-
( 0.00 b … 256.00 kb) 2.57 kb ██▆▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
13+
KnexJS 347.28 µs/iter 344.06 µs █
14+
(262.55 µs … 1.94 ms) 1.29 ms
15+
( 0.00 b … 256.00 kb) 2.25 kb ███▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1616

17-
Kysely 321.56 µs/iter 311.62 µs
18-
(253.97 µs … 1.95 ms) 1.42 ms ██
19-
( 0.00 b … 512.00 kb) 2.40 kb ██▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
17+
Kysely 308.58 µs/iter 307.51 µs
18+
(250.87 µs … 1.46 ms) 1.16 ms ██
19+
( 0.00 b … 384.00 kb) 2.79 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2020

21-
Mariadb 257.24 µs/iter 251.91 µs █
22-
(187.44 µs … 2.61 ms) 1.27 ms
23-
( 0.00 b … 256.00 kb) 1.74 kb ██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
21+
Mariadb 261.47 µs/iter 256.39 µs █
22+
(191.49 µs … 1.81 ms) 1.22 ms
23+
( 0.00 b … 256.00 kb) 1.82 kb ██▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2424

25-
MikroORM 465.37 µs/iter 578.10 µs
26-
(28.43 µs … 3.00 ms) 2.12 ms █
27-
( 0.00 b … 768.00 kb) 12.19 kb █▂▁▁███▄▂▁▁▁▁▁▁▁▁▁▁▁▁
25+
MikroORM 486.50 µs/iter 600.02 µs █▃
26+
(29.90 µs … 3.73 ms) 2.31 ms █
27+
( 0.00 b … 1.75 mb) 14.13 kb █▂▁▁██▆▃▂▁▁▁▁▁▁▁▁▁▁▁▁
2828

29-
MySQL2 273.86 µs/iter 266.91 µs █
30-
(206.68 µs … 1.84 ms) 1.34 ms ██
31-
( 0.00 b … 256.00 kb) 1.09 kb ██▄▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
29+
MySQL2 264.44 µs/iter 257.11 µs █
30+
(208.53 µs … 1.42 ms) 1.19 ms ██
31+
( 0.00 b … 128.00 kb) 965.34 b ██▄▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3232

33-
Prisma 568.26 µs/iter 551.36 µs █
34-
(460.83 µs … 1.83 ms) 1.59 ms
35-
( 0.00 b … 896.00 kb) 3.46 kb ▆██▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
33+
Prisma 567.46 µs/iter 545.78 µs █
34+
(472.54 µs … 2.00 ms) 1.63 ms
35+
( 0.00 b … 896.00 kb) 3.56 kb ██▅▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3636

37-
Sequelize 484.94 µs/iter 475.20 µs █
38-
(350.26 µs … 2.18 ms) 1.87 ms
39-
( 0.00 b … 768.00 kb) 15.01 kb ███▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
37+
Sequelize 508.24 µs/iter 485.28 µs █
38+
(363.83 µs … 2.59 ms) 1.96 ms
39+
( 0.00 b … 768.00 kb) 11.23 kb ██▇▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
4040

41-
TypeORM 449.86 µs/iter 439.11 µs █
42-
(331.33 µs … 2.42 ms) 1.80 ms ▅█
43-
( 0.00 b … 384.00 kb) 7.55 kb ███▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
41+
TypeORM 449.36 µs/iter 442.71 µs █
42+
(326.01 µs … 2.15 ms) 1.72 ms ▂█▂
43+
( 0.00 b … 384.00 kb) 7.18 kb ███▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁

results/bun-mysql-max.txt

Lines changed: 28 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,43 @@
1-
clk: ~2.18 GHz
1+
clk: ~1.60 GHz
22
cpu: AMD EPYC 7763 64-Core Processor
33
runtime: bun 1.2.19 (x64-linux)
44

55
benchmark avg (min … max) p75 / p99 (min … top 1%)
66
------------------------------------------- -------------------------------
77
• MySQL
88
------------------------------------------- -------------------------------
9-
DrizzleORM 568.57 µs/iter 553.74 µs █
10-
(370.99 µs … 3.57 ms) 2.29 ms █
11-
( 0.00 b … 2.00 mb) 32.49 kb ▅██▄▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
9+
DrizzleORM 579.90 µs/iter 576.37 µs █
10+
(358.25 µs … 3.85 ms) 2.00 ms ██▂
11+
( 0.00 b … 3.13 mb) 36.47 kb ▃███▃▂▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1212

13-
KnexJS 366.36 µs/iter 346.02 µs █
14-
(266.93 µs … 2.77 ms) 1.55 ms
15-
( 0.00 b … 768.00 kb) 4.25 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
13+
KnexJS 359.47 µs/iter 345.38 µs █
14+
(268.02 µs … 3.25 ms) 1.33 ms
15+
( 0.00 b … 640.00 kb) 4.25 kb ██▇▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
1616

17-
Kysely 324.59 µs/iter 313.38 µs
18-
(251.37 µs … 1.77 ms) 1.45 ms
19-
( 0.00 b … 256.00 kb) 2.42 kb ██▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
17+
Kysely 319.14 µs/iter 312.95 µs
18+
(255.63 µs … 1.84 ms) 1.27 ms
19+
( 0.00 b … 512.00 kb) 3.06 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
2020

21-
Mariadb 315.74 µs/iter 278.69 µs
22-
(207.21 µs … 2.09 ms) 1.58 ms
23-
( 0.00 b … 256.00 kb) 4.82 kb ██▁▁▁▂▁▁▁▁▁▁▁▁▁▁▁▁▁
21+
Mariadb 331.29 µs/iter 287.94 µs
22+
(220.32 µs … 2.62 ms) 1.66 ms
23+
( 0.00 b … 384.00 kb) 4.93 kb ██▁▁▁▂▁▁▁▁▁▁▁▁▁▁▁▁▁
2424

25-
MikroORM 482.24 µs/iter 585.93 µs
26-
(29.31 µs … 2.63 ms) 2.32 ms █ █
27-
( 0.00 b … 768.00 kb) 10.34 kb █▂▁▁██▆▃▂▁▁▁▁▁▁▁▁▁▁▁▁
25+
MikroORM 505.61 µs/iter 625.96 µs
26+
(28.75 µs … 3.22 ms) 2.52 ms █ █
27+
( 0.00 b … 768.00 kb) 11.22 kb █▂▁▃██▅▃▁▁▁▁▁▁▁▁▁▁▁▁▁
2828

29-
MySQL2 278.47 µs/iter 271.72 µs █
30-
(207.63 µs … 1.78 ms) 1.43 ms
31-
( 0.00 b … 256.00 kb) 900.84 b ██▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
29+
MySQL2 268.72 µs/iter 266.54 µs █
30+
(206.44 µs … 1.53 ms) 1.19 ms
31+
( 0.00 b … 256.00 kb) 1.17 kb ██▆▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3232

33-
Prisma 577.80 µs/iter 564.40 µs █
34-
(462.89 µs … 1.95 ms) 1.63 ms █
35-
( 0.00 b … 896.00 kb) 3.74 kb ▅██▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
33+
Prisma 550.54 µs/iter 533.72 µs █
34+
(463.74 µs … 1.79 ms) 1.45 ms █
35+
( 0.00 b … 712.00 kb) 3.63 kb ▇█▆▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
3636

37-
Sequelize 498.30 µs/iter 478.51 µs █
38-
(361.16 µs … 2.46 ms) 1.90 ms ▃█
39-
( 0.00 b … 640.00 kb) 13.13 kb ██▇▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
37+
Sequelize 483.57 µs/iter 473.36 µs █
38+
(346.00 µs … 2.50 ms) 1.67 ms █▂
39+
( 0.00 b … 768.00 kb) 16.05 kb ▇██▄▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
4040

41-
TypeORM 447.62 µs/iter 431.84 µs █
42-
(324.16 µs … 2.29 ms) 1.78 ms █
43-
( 0.00 b … 512.00 kb) 7.46 kb ██▇▃▂▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
41+
TypeORM 444.36 µs/iter 430.25 µs █
42+
(325.27 µs … 2.39 ms) 1.64 ms █
43+
( 0.00 b … 768.00 kb) 7.65 kb ▇██▃▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁

0 commit comments

Comments
 (0)