Doctrine 3.6.2
doctrine/orm · mean 130 ms · 150 samples
- sqlite-file 130 ms
Mean time per scenario run with warmup runs excluded, sorted by runtime. Each framework does different work, so read these next to the features you need from an ORM.
doctrine/orm · mean 130 ms · 150 samples
cakephp/cakephp · mean 308 ms · 150 samples
cakephp/cakephp · mean 310 ms · 150 samples
phpfui/orm · mean 924 ms · 150 samples
php-patterns/activerecord · mean 1,614 ms · 150 samples
atlas/pdo · mean 2,151 ms · 150 samples
cycle/database · mean 2,157 ms · 150 samples
phpfui/orm · mean 2,230 ms · 150 samples
propel/propel · mean 2,231 ms · 150 samples
divergence/divergence · mean 2,285 ms · 150 samples
yiisoft/yii2 · mean 2,311 ms · 150 samples
gabordemooij/redbean · mean 2,347 ms · 150 samples
illuminate/database · mean 2,528 ms · 150 samples
Mean across every framework measured on each engine.
Mean across every framework and engine for each row shape.
Every framework runs the same scenarios. The row shape and the operation mix decide where each one spends its time.
Shows framework overhead with very little field-mapping noise, so identity-map, query builder, and per-record object cost dominate.
Wide records amplify hydration, casting, dirty-checking, and serialization overhead. Frameworks with expensive attribute normalization usually spread out here.
A near-floor for typed persistence. If an ORM is still slow here, the cost is usually framework machinery rather than payload complexity.
Decimal and floating-point mapping can trigger extra normalization work, especially on update verification and dirty-state comparison.
Fixed-length text stresses text field assignment without the variability of large blobs, so column-count and hydration strategy matter more than payload churn.
This is the closest to a real CRUD app payload. Variable strings and notes fields widen the gap between lightweight row mappers and heavier active-record layers.
Imported uploads from signed runners. Open a run for its machine and per-engine detail.
| Run | Host | Status | Samples | Runtime | Started |
|---|---|---|---|---|---|
| 20260928011232-b9eaed5b | kaijuPHP 8.5.11 | complete | 7,488of 8,320 runs | 2h 29m 1savg 1,194 ms | |
| 20260831062427-083dfb94 | eimuPHP 8.5.3 | complete | 144of 160 runs | 12.384savg 86.0 ms | |
| 20260329203643-74505162 | eimuPHP 8.5.3 | complete | 312of 312 runs | 39.501savg 127 ms |
| ID | Status | Runner | Runtime | File |
|---|---|---|---|---|
| #3 | processed | kaiju | 2h 29m 1savg 1,194 ms | results-20260928011232-b9eaed5b-default-20260928-011232.csv received |
| #2 | processed | eimu | 12.384savg 86.0 ms | results-20260831062427-083dfb94-v3-3-0-staged-sqlite-memory-20260831-062427.csv received |
| #1 | processed | runner-20260329222123 | 39.501savg 127 ms | results-20260329203643-74505162-default-20260329-203643.csv received |