Enhance civilization flow mechanics and adaptive quality control
- Implemented runtime-only adaptive quality controller to optimize simulation performance based on CPU time. - Added adaptive quality thresholds and recovery cycles to dynamically adjust simulation fidelity. - Introduced single-step solving method for civilization transitions to improve performance under high loads. - Updated benchmark scripts to include speed parameter for testing various simulation speeds. - Added tests for adaptive quality adjustments and their effects on civilization flow calculations. - Documented results of optimization attempts and their impact on performance metrics.
This commit is contained in:
@@ -0,0 +1,646 @@
|
||||
{
|
||||
"retained": false,
|
||||
"conclusion": "No measurable full-cycle improvement; implementation reverted",
|
||||
"delta_seconds": 0.2,
|
||||
"exact_state_differential": true,
|
||||
"input_sha256": {
|
||||
"all_objects_speed6": "44bee3b3753fa51615f766d8f800a10cc2b70c8e7fb4ea12b6e18da7f07a7d67",
|
||||
"many_objects_fragmented_stars_cycle": "1e95ef398923f26b912a305c84f9b3eb502d24cb14e8ae687a4becccf047324a"
|
||||
},
|
||||
"order": "before-after-after-before",
|
||||
"runs": [
|
||||
{
|
||||
"cycles": 20,
|
||||
"max_ms": 382.054,
|
||||
"mean_ms": 347.474,
|
||||
"min_ms": 291.952,
|
||||
"model": "before",
|
||||
"profile": {
|
||||
"assign_homes": [
|
||||
23851,
|
||||
80
|
||||
],
|
||||
"civilization_flow_capacity": [
|
||||
121403,
|
||||
20
|
||||
],
|
||||
"civilization_flow_colonies": [
|
||||
52415,
|
||||
20
|
||||
],
|
||||
"civilization_flow_finish": [
|
||||
135271,
|
||||
20
|
||||
],
|
||||
"civilization_flow_ledger": [
|
||||
880672,
|
||||
20
|
||||
],
|
||||
"civilization_flow_plan": [
|
||||
1718363,
|
||||
20
|
||||
],
|
||||
"civilization_operator_build": [
|
||||
61955,
|
||||
20
|
||||
],
|
||||
"civilization_operator_solve": [
|
||||
673740,
|
||||
860
|
||||
],
|
||||
"enforce_capacity": [
|
||||
316094,
|
||||
80
|
||||
],
|
||||
"generation_products": [
|
||||
190666,
|
||||
40
|
||||
],
|
||||
"generation_withdrawal": [
|
||||
545822,
|
||||
60
|
||||
],
|
||||
"generations": [
|
||||
2727124,
|
||||
20
|
||||
],
|
||||
"initialize": [
|
||||
113986,
|
||||
20
|
||||
],
|
||||
"newborn_batches": [
|
||||
121039,
|
||||
3016
|
||||
],
|
||||
"physical_amounts_build": [
|
||||
285729,
|
||||
200
|
||||
],
|
||||
"production": [
|
||||
373910,
|
||||
20
|
||||
],
|
||||
"trends": [
|
||||
358046,
|
||||
20
|
||||
]
|
||||
},
|
||||
"run": 1,
|
||||
"save": "all_objects_speed6"
|
||||
},
|
||||
{
|
||||
"cycles": 20,
|
||||
"max_ms": 382.156,
|
||||
"mean_ms": 349.53305,
|
||||
"min_ms": 297.266,
|
||||
"model": "after",
|
||||
"profile": {
|
||||
"assign_homes": [
|
||||
23877,
|
||||
80
|
||||
],
|
||||
"civilization_flow_capacity": [
|
||||
121854,
|
||||
20
|
||||
],
|
||||
"civilization_flow_colonies": [
|
||||
53021,
|
||||
20
|
||||
],
|
||||
"civilization_flow_finish": [
|
||||
137725,
|
||||
20
|
||||
],
|
||||
"civilization_flow_ledger": [
|
||||
883114,
|
||||
20
|
||||
],
|
||||
"civilization_flow_plan": [
|
||||
1733356,
|
||||
20
|
||||
],
|
||||
"civilization_operator_build": [
|
||||
62368,
|
||||
20
|
||||
],
|
||||
"civilization_operator_solve": [
|
||||
680005,
|
||||
860
|
||||
],
|
||||
"enforce_capacity": [
|
||||
319290,
|
||||
80
|
||||
],
|
||||
"generation_products": [
|
||||
192497,
|
||||
40
|
||||
],
|
||||
"generation_withdrawal": [
|
||||
548252,
|
||||
60
|
||||
],
|
||||
"generations": [
|
||||
2737148,
|
||||
20
|
||||
],
|
||||
"initialize": [
|
||||
115930,
|
||||
20
|
||||
],
|
||||
"newborn_batches": [
|
||||
121459,
|
||||
3016
|
||||
],
|
||||
"physical_amounts_build": [
|
||||
287621,
|
||||
200
|
||||
],
|
||||
"production": [
|
||||
376359,
|
||||
20
|
||||
],
|
||||
"trends": [
|
||||
359971,
|
||||
20
|
||||
]
|
||||
},
|
||||
"run": 1,
|
||||
"save": "all_objects_speed6"
|
||||
},
|
||||
{
|
||||
"cycles": 20,
|
||||
"max_ms": 387.438,
|
||||
"mean_ms": 350.1367,
|
||||
"min_ms": 298.254,
|
||||
"model": "after",
|
||||
"profile": {
|
||||
"assign_homes": [
|
||||
24181,
|
||||
80
|
||||
],
|
||||
"civilization_flow_capacity": [
|
||||
122008,
|
||||
20
|
||||
],
|
||||
"civilization_flow_colonies": [
|
||||
53315,
|
||||
20
|
||||
],
|
||||
"civilization_flow_finish": [
|
||||
137169,
|
||||
20
|
||||
],
|
||||
"civilization_flow_ledger": [
|
||||
885851,
|
||||
20
|
||||
],
|
||||
"civilization_flow_plan": [
|
||||
1736978,
|
||||
20
|
||||
],
|
||||
"civilization_operator_build": [
|
||||
62264,
|
||||
20
|
||||
],
|
||||
"civilization_operator_solve": [
|
||||
680485,
|
||||
860
|
||||
],
|
||||
"enforce_capacity": [
|
||||
319558,
|
||||
80
|
||||
],
|
||||
"generation_products": [
|
||||
193735,
|
||||
40
|
||||
],
|
||||
"generation_withdrawal": [
|
||||
547473,
|
||||
60
|
||||
],
|
||||
"generations": [
|
||||
2743162,
|
||||
20
|
||||
],
|
||||
"initialize": [
|
||||
115720,
|
||||
20
|
||||
],
|
||||
"newborn_batches": [
|
||||
121401,
|
||||
3016
|
||||
],
|
||||
"physical_amounts_build": [
|
||||
287832,
|
||||
200
|
||||
],
|
||||
"production": [
|
||||
376295,
|
||||
20
|
||||
],
|
||||
"trends": [
|
||||
360758,
|
||||
20
|
||||
]
|
||||
},
|
||||
"run": 2,
|
||||
"save": "all_objects_speed6"
|
||||
},
|
||||
{
|
||||
"cycles": 20,
|
||||
"max_ms": 391.136,
|
||||
"mean_ms": 353.55755,
|
||||
"min_ms": 295.752,
|
||||
"model": "before",
|
||||
"profile": {
|
||||
"assign_homes": [
|
||||
23999,
|
||||
80
|
||||
],
|
||||
"civilization_flow_capacity": [
|
||||
125136,
|
||||
20
|
||||
],
|
||||
"civilization_flow_colonies": [
|
||||
53681,
|
||||
20
|
||||
],
|
||||
"civilization_flow_finish": [
|
||||
137614,
|
||||
20
|
||||
],
|
||||
"civilization_flow_ledger": [
|
||||
893234,
|
||||
20
|
||||
],
|
||||
"civilization_flow_plan": [
|
||||
1749507,
|
||||
20
|
||||
],
|
||||
"civilization_operator_build": [
|
||||
63052,
|
||||
20
|
||||
],
|
||||
"civilization_operator_solve": [
|
||||
683642,
|
||||
860
|
||||
],
|
||||
"enforce_capacity": [
|
||||
319168,
|
||||
80
|
||||
],
|
||||
"generation_products": [
|
||||
193901,
|
||||
40
|
||||
],
|
||||
"generation_withdrawal": [
|
||||
550377,
|
||||
60
|
||||
],
|
||||
"generations": [
|
||||
2768999,
|
||||
20
|
||||
],
|
||||
"initialize": [
|
||||
115976,
|
||||
20
|
||||
],
|
||||
"newborn_batches": [
|
||||
122734,
|
||||
3016
|
||||
],
|
||||
"physical_amounts_build": [
|
||||
292064,
|
||||
200
|
||||
],
|
||||
"production": [
|
||||
382112,
|
||||
20
|
||||
],
|
||||
"trends": [
|
||||
363057,
|
||||
20
|
||||
]
|
||||
},
|
||||
"run": 2,
|
||||
"save": "all_objects_speed6"
|
||||
},
|
||||
{
|
||||
"cycles": 20,
|
||||
"max_ms": 418.952,
|
||||
"mean_ms": 402.88125,
|
||||
"min_ms": 362.784,
|
||||
"model": "before",
|
||||
"profile": {
|
||||
"assign_homes": [
|
||||
18182,
|
||||
60
|
||||
],
|
||||
"civilization_flow_capacity": [
|
||||
138911,
|
||||
20
|
||||
],
|
||||
"civilization_flow_colonies": [
|
||||
235353,
|
||||
20
|
||||
],
|
||||
"civilization_flow_finish": [
|
||||
139454,
|
||||
20
|
||||
],
|
||||
"civilization_flow_ledger": [
|
||||
1808094,
|
||||
20
|
||||
],
|
||||
"civilization_flow_plan": [
|
||||
1823967,
|
||||
20
|
||||
],
|
||||
"civilization_operator_build": [
|
||||
63710,
|
||||
20
|
||||
],
|
||||
"civilization_operator_solve": [
|
||||
684725,
|
||||
860
|
||||
],
|
||||
"enforce_capacity": [
|
||||
241433,
|
||||
60
|
||||
],
|
||||
"generation_products": [
|
||||
79394,
|
||||
20
|
||||
],
|
||||
"generation_withdrawal": [
|
||||
814774,
|
||||
40
|
||||
],
|
||||
"generations": [
|
||||
2390414,
|
||||
20
|
||||
],
|
||||
"initialize": [
|
||||
142892,
|
||||
20
|
||||
],
|
||||
"newborn_batches": [
|
||||
55241,
|
||||
1490
|
||||
],
|
||||
"physical_amounts_build": [
|
||||
359891,
|
||||
140
|
||||
],
|
||||
"production": [
|
||||
410388,
|
||||
20
|
||||
],
|
||||
"trends": [
|
||||
362721,
|
||||
20
|
||||
]
|
||||
},
|
||||
"run": 1,
|
||||
"save": "many_objects_fragmented_stars_cycle"
|
||||
},
|
||||
{
|
||||
"cycles": 20,
|
||||
"max_ms": 425.202,
|
||||
"mean_ms": 404.3497,
|
||||
"min_ms": 355.885,
|
||||
"model": "after",
|
||||
"profile": {
|
||||
"assign_homes": [
|
||||
18056,
|
||||
60
|
||||
],
|
||||
"civilization_flow_capacity": [
|
||||
139522,
|
||||
20
|
||||
],
|
||||
"civilization_flow_colonies": [
|
||||
236599,
|
||||
20
|
||||
],
|
||||
"civilization_flow_finish": [
|
||||
140701,
|
||||
20
|
||||
],
|
||||
"civilization_flow_ledger": [
|
||||
1809113,
|
||||
20
|
||||
],
|
||||
"civilization_flow_plan": [
|
||||
1824567,
|
||||
20
|
||||
],
|
||||
"civilization_operator_build": [
|
||||
63452,
|
||||
20
|
||||
],
|
||||
"civilization_operator_solve": [
|
||||
684152,
|
||||
860
|
||||
],
|
||||
"enforce_capacity": [
|
||||
242790,
|
||||
60
|
||||
],
|
||||
"generation_products": [
|
||||
80500,
|
||||
20
|
||||
],
|
||||
"generation_withdrawal": [
|
||||
817704,
|
||||
40
|
||||
],
|
||||
"generations": [
|
||||
2406807,
|
||||
20
|
||||
],
|
||||
"initialize": [
|
||||
143427,
|
||||
20
|
||||
],
|
||||
"newborn_batches": [
|
||||
55885,
|
||||
1490
|
||||
],
|
||||
"physical_amounts_build": [
|
||||
363175,
|
||||
140
|
||||
],
|
||||
"production": [
|
||||
412428,
|
||||
20
|
||||
],
|
||||
"trends": [
|
||||
365215,
|
||||
20
|
||||
]
|
||||
},
|
||||
"run": 1,
|
||||
"save": "many_objects_fragmented_stars_cycle"
|
||||
},
|
||||
{
|
||||
"cycles": 20,
|
||||
"max_ms": 418.858,
|
||||
"mean_ms": 404.4306,
|
||||
"min_ms": 357.106,
|
||||
"model": "after",
|
||||
"profile": {
|
||||
"assign_homes": [
|
||||
18133,
|
||||
60
|
||||
],
|
||||
"civilization_flow_capacity": [
|
||||
139021,
|
||||
20
|
||||
],
|
||||
"civilization_flow_colonies": [
|
||||
237100,
|
||||
20
|
||||
],
|
||||
"civilization_flow_finish": [
|
||||
139480,
|
||||
20
|
||||
],
|
||||
"civilization_flow_ledger": [
|
||||
1815717,
|
||||
20
|
||||
],
|
||||
"civilization_flow_plan": [
|
||||
1825515,
|
||||
20
|
||||
],
|
||||
"civilization_operator_build": [
|
||||
63298,
|
||||
20
|
||||
],
|
||||
"civilization_operator_solve": [
|
||||
685950,
|
||||
860
|
||||
],
|
||||
"enforce_capacity": [
|
||||
242932,
|
||||
60
|
||||
],
|
||||
"generation_products": [
|
||||
79477,
|
||||
20
|
||||
],
|
||||
"generation_withdrawal": [
|
||||
815781,
|
||||
40
|
||||
],
|
||||
"generations": [
|
||||
2400821,
|
||||
20
|
||||
],
|
||||
"initialize": [
|
||||
144101,
|
||||
20
|
||||
],
|
||||
"newborn_batches": [
|
||||
56140,
|
||||
1490
|
||||
],
|
||||
"physical_amounts_build": [
|
||||
362394,
|
||||
140
|
||||
],
|
||||
"production": [
|
||||
412986,
|
||||
20
|
||||
],
|
||||
"trends": [
|
||||
364511,
|
||||
20
|
||||
]
|
||||
},
|
||||
"run": 2,
|
||||
"save": "many_objects_fragmented_stars_cycle"
|
||||
},
|
||||
{
|
||||
"cycles": 20,
|
||||
"max_ms": 422.492,
|
||||
"mean_ms": 405.6284,
|
||||
"min_ms": 355.699,
|
||||
"model": "before",
|
||||
"profile": {
|
||||
"assign_homes": [
|
||||
18208,
|
||||
60
|
||||
],
|
||||
"civilization_flow_capacity": [
|
||||
139305,
|
||||
20
|
||||
],
|
||||
"civilization_flow_colonies": [
|
||||
236973,
|
||||
20
|
||||
],
|
||||
"civilization_flow_finish": [
|
||||
141048,
|
||||
20
|
||||
],
|
||||
"civilization_flow_ledger": [
|
||||
1818465,
|
||||
20
|
||||
],
|
||||
"civilization_flow_plan": [
|
||||
1832211,
|
||||
20
|
||||
],
|
||||
"civilization_operator_build": [
|
||||
63519,
|
||||
20
|
||||
],
|
||||
"civilization_operator_solve": [
|
||||
688184,
|
||||
860
|
||||
],
|
||||
"enforce_capacity": [
|
||||
243601,
|
||||
60
|
||||
],
|
||||
"generation_products": [
|
||||
79839,
|
||||
20
|
||||
],
|
||||
"generation_withdrawal": [
|
||||
822003,
|
||||
40
|
||||
],
|
||||
"generations": [
|
||||
2410757,
|
||||
20
|
||||
],
|
||||
"initialize": [
|
||||
144424,
|
||||
20
|
||||
],
|
||||
"newborn_batches": [
|
||||
55500,
|
||||
1490
|
||||
],
|
||||
"physical_amounts_build": [
|
||||
363454,
|
||||
140
|
||||
],
|
||||
"production": [
|
||||
412711,
|
||||
20
|
||||
],
|
||||
"trends": [
|
||||
367008,
|
||||
20
|
||||
]
|
||||
},
|
||||
"run": 2,
|
||||
"save": "many_objects_fragmented_stars_cycle"
|
||||
}
|
||||
],
|
||||
"speed": 6
|
||||
}
|
||||
Reference in New Issue
Block a user