Skip to content
Success

Changes

Summary

  1. Radically improve performance of the first EmploymentAgency tick during world gen (commit: 648ec82) (details)
Commit 648ec8246ff6ead8d3c6a6304aee5818e48e4ca8 by Geolykt
Radically improve performance of the first EmploymentAgency tick during world gen

This now brings down the time it takes for the first tick to a comfortable
60-70 seconds - for a 250 000 star galaxy. There is probably a fair bit that
can still be optimized (ideally we'd use the tinspin indices, but they require
a version of Java that isn't suitable for galimulator modding - yet).
The knn queries take the longest amount of time - perhaps there might be a few
tricks to pull out still; My guess is that we can/should make use of vertically
spliced SpatialQueryArrays, which should have an impact especially on gigantic
maps. That being said, this remains a theory so the final performance impact
of such a solution remains unmeasured.
(commit: 648ec82)
The file was modifiedbuild.gradle (diff)
The file was modifiedsrc/main/java/de/geolykt/faststar/intrinsics/SpatialQuery.java (diff)
The file was addedsrc/main/java/de/geolykt/faststar/intrinsics/NOPList.java
The file was addedsrc/main/java/de/geolykt/faststar/intrinsics/EmploymentAgencyExpress.java
The file was modifiedsrc/main/java/de/geolykt/faststar/mixin/SpaceMixins.java (diff)
The file was modifiedsrc/main/java/de/geolykt/faststar/mixin/FastEmploymentAgencyMixins.java (diff)
The file was modifiedsrc/main/java/de/geolykt/faststar/intrinsics/SpatialQueryArray.java (diff)
The file was modifiedsrc/main/resources/faststar.ras (diff)