MCPcopy Index your code
hub / github.com/efectn/go-orm-benchmarks

github.com/efectn/go-orm-benchmarks @v1.1.0

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.1.0 ↗ · + Follow
800 symbols 2,136 edges 58 files 473 documented · 59%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Go ORM Benchmarks

Go Reference

Advanced benchmarks for +10 Go ORMs. Originally forked from orm-benchmark.

ORMs

All package run in no-cache mode.

See go.mod for their latest versions.

Run

# install
go install github.com/efectn/go-orm-benchmarks@latest
# all
go-orm-benchmarks -orm=all
# portion
go-orm-benchmarks -orm=gorm
go-orm-benchmarks -orm=pg
go-orm-benchmarks -orm=bun
# ... and so on...

Note: Also, you can run ./run_benchmarks.sh and you can get output like results.md format.

Results

Look at results.md to see detailed benchmark results.

Note: All results are automatically generated by Github Actions. Benchmark results may sometimes be wrong.

License

go-orm-benchmarks is licensed under the terms of the MIT License (see LICENSE).

Extension points exported contracts — how you extend this code

ORMInterface (Interface)
(no doc) [21 implementers]
helper/suite.go
Committer (Interface)
Committer is the interface that wraps the Commit method. [2 implementers]
bench/ent/tx.go
ModelHook (FuncType)
ModelHook is the signature for custom Model hook methods
bench/sqlboiler/models.go
DBTX (Interface)
(no doc)
bench/sqlc/db/db.go
Rollbacker (Interface)
Rollbacker is the interface that wraps the Rollback method. [2 implementers]
bench/ent/tx.go
OrderFunc (FuncType)
OrderFunc applies an ordering on the sql selector. Deprecated: Use Asc/Desc functions or the package builders instead.
bench/ent/ent.go
AggregateFunc (FuncType)
AggregateFunc applies an aggregation step on the group-by traversal/selector.
bench/ent/ent.go
CommitFunc (FuncType)
The CommitFunc type is an adapter to allow the use of ordinary function as a Committer. If f is a function with the appr
bench/ent/tx.go

Core symbols most depended-on inside this repo

Error
called by 178
bench/ent/enttest/enttest.go
SetError
called by 175
helper/error.go
NewModel
called by 53
bench/models.go
Where
called by 38
bench/ent/model_query.go
Insert
called by 35
helper/suite.go
Exec
called by 35
bench/ent/tx.go
Close
called by 29
helper/suite.go
SetField
called by 21
bench/ent/mutation.go

Shape

Method 496
Function 204
Struct 75
FuncType 15
Interface 5
TypeAlias 5

Languages

Go100%

Modules by API surface

bench/ent/model/where.go89 symbols
bench/ent/mutation.go65 symbols
bench/ent/ent.go60 symbols
bench/sqlboiler/models.go59 symbols
bench/ent/model_query.go39 symbols
bench/ent/client.go37 symbols
bench/ent/model_update.go35 symbols
bench/ent/tx.go26 symbols
bench/models.go22 symbols
bench/ent/model_create.go21 symbols
bench/ent/hook/hook.go20 symbols
bench/reform/reform_models_reform.go17 symbols

Datastores touched

modelsCollection · 1 repos

For agents

$ claude mcp add go-orm-benchmarks \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact