Appearance
Population performance reference results
These measurements are the first published Mass Forge simulation baseline. Each report was produced by the packaged Run-MassForgeBenchmarks.ps1 workflow with five measured iterations after one warm-up, the default 10k/100k/1M populations, NullRHI, and exact per-entity result validation.
Reference machine and conditions
- Windows 11, OS build reported by Unreal as
10.0.26200.1.256.64bit. - Intel Core i9-14900K, 24 physical cores and 32 logical cores.
- 102,747,594,752 bytes of physical memory reported by Unreal.
- Development Editor commandlet in a disposable host project, immediately after strict Editor, Development Game, and Shipping Game package builds.
- Actorless Mass simulation only. No rendering, VAT, navigation, representation, project AI, or gameplay outside the measured Mass Forge path.
The implementation under measurement is the benchmark/high-volume-effects source shipped with these reports. The raw CSV metadata records exact engine versions and timestamps. Future comparisons must also record the plugin commit because timings can change independently of the public plugin version.
Published results
Times are milliseconds. Payload and observed physical delta are MiB. Queued mean/worst is mailbox submission plus built-in processor execution.
| Engine | Entities | Payload | Observed delta | Create | Direct mean | Direct worst | Queued mean | Queued worst |
|---|---|---|---|---|---|---|---|---|
| UE 5.6.1 | 10,000 | 3.82 | 6.05 | 1.551 | 0.322 | 0.331 | 0.374 | 0.379 |
| UE 5.6.1 | 100,000 | 38.15 | 41.30 | 11.710 | 3.312 | 3.486 | 3.887 | 3.933 |
| UE 5.6.1 | 1,000,000 | 381.47 | 402.65 | 169.607 | 34.464 | 37.072 | 43.464 | 47.039 |
| UE 5.7.1 | 10,000 | 3.82 | 6.11 | 1.527 | 0.420 | 0.852 | 0.362 | 0.374 |
| UE 5.7.1 | 100,000 | 38.15 | 41.41 | 10.856 | 3.145 | 3.147 | 3.603 | 3.641 |
| UE 5.7.1 | 1,000,000 | 381.47 | 401.57 | 116.537 | 33.935 | 34.953 | 39.011 | 39.845 |
| UE 5.8.2 | 10,000 | 3.82 | 5.93 | 1.462 | 0.313 | 0.318 | 0.368 | 0.377 |
| UE 5.8.2 | 100,000 | 38.15 | 42.96 | 11.099 | 3.157 | 3.196 | 3.689 | 3.704 |
| UE 5.8.2 | 1,000,000 | 381.47 | 402.52 | 115.527 | 32.698 | 34.584 | 38.166 | 38.503 |
Every row passed. The deterministic payload is about 400 bytes per entity for Vital, Combat, Support, and the high-volume mailbox in this benchmark archetype, plus one 2,388-byte shared compiled-effect table. The observed delta includes Mass chunk and allocator overhead and is not a replacement for the deterministic fragment-capacity report.
At one million entities, the serial compiled pass costs roughly 33–34 ms mean on this machine and therefore does not fit a 60 Hz frame if every entity receives an effect every frame. That is a useful capacity boundary, not a failure: real projects should distribute effect work, use Mass LOD/significance, and measure their actual archetypes and presentation workload. The 100k path remained below 4 ms mean and worst in all three engine runs.
The UE 5.7 10k direct worst sample is an isolated outlier relative to its mean and the other engines. It is retained rather than edited out; longer runs are appropriate when setting a production budget.
Raw reports
See the benchmark guide for reproduction, interpretation, and the explicit rendering/worker-thread boundary.