SSoverlay improvements and tweaks (#32371)

* Overlay per-type cost logging.

Overlays will now log how long each type took to process.

Changed up how overlays was done to account for the fact its a queue and not a processor. (it was using almost none of the processing subsystem framework)

Made the overlay loop faster by making it not cut the list until the end.

Added a simple generic benchmark stat tracking system.

I don't know how much overhead this adds to overlays. i may put it behind testing or something, but i do want to test this on the serbers to get some stats.

* Removes flush() as it was creating race conditions

* Use ref

* text2file

* Atoms added as an overlay will have their pending overlays compiled before being converted to an appearance
This commit is contained in:
Kyle Spier-Swenson
2017-11-10 11:25:29 -08:00
committed by CitadelStationBot
parent 70e9eeb8fd
commit 2d8fc6de61
12 changed files with 121 additions and 47 deletions
-2
View File
@@ -281,8 +281,6 @@ SUBSYSTEM_DEF(ticker)
collect_minds()
equip_characters()
SSoverlays.Flush() //Flush the majority of the shit
GLOB.data_core.manifest()
transfer_characters() //transfer keys to the new mobs