Commit Graph

89 Commits

Author SHA1 Message Date
Asriel Camora 1386f9150c Fix concurrency deadlock
I'm stupid and forgot it divided the number of iterations by 8, no wonder it was so fast lmao
2023-07-07 13:01:17 +02:00
Asriel Camora d5a8288439 Merge solver code with static interface
- Breaks backwards compat solver code with last version. Concurrent broke backwards compat because of race conditions with rng, but single is now broken too, despite it being 2x faster (!!!!)
- Literally twice as fast as Rust now in single thread
- Concurrent doesn't work yet, deadlocks somewhere..?
2023-07-07 10:26:59 +02:00
Asriel Camora 2894867195 Smaller minor optimizations 2023-07-06 19:45:59 +02:00
Asriel Camora 1f5da66bc6 Remove deadlock issue, use raw segmented array types 2023-07-05 11:00:15 +02:00
Asriel Camora 4d96fd173f Some multithreaded fixes, deadlocks due to List reads during adds 2023-07-04 17:19:55 +02:00
Asriel Camora 75553de490 Rudamentary locked multithreading
2x faster, but 8x threads.. not very good yet
2023-07-04 09:25:32 +02:00
Asriel Camora e46d1b20fa Use rqrt in child score calculation
Changes sqrt -> rsqrt and div->mul. Reduces latency by 23 -> 8 cycles.
2023-07-04 08:36:41 +02:00
Asriel Camora 76853e2f0d Begin implementing async 2023-07-04 08:42:02 +03:00
Asriel Camora 4b90ded2bb Minor optimizations 2023-07-04 07:40:34 +02:00
Asriel Camora c8aa6818c7 Float CAS intrinsics & move BMI2 intrinsic 2023-07-04 07:29:35 +02:00
Asriel Camora 2e9d1e899e Decoupled simulator instance from solver
multithread soon, but holy crap multithreaded tree stuff is annoying
2023-07-04 00:02:19 +03:00
Asriel Camora ec596f400d Clean up solver code a bit 2023-07-03 18:38:59 +03:00
Asriel Camora 37950b557e Cancellable solving, re-added solving randomization 2023-06-29 01:46:21 -07:00
Asriel Camora 866e30a5bc Simulator changes 2023-06-25 01:01:47 -07:00
Asriel Camora c1caa46838 Minor changes 2023-06-23 00:19:32 -07:00
Asriel Camora 0de1faa112 Add benchmarks 2023-06-21 20:44:13 -07:00
Asriel Camora dba76e319c Fancy simd horizontal max 2023-06-21 16:12:44 -07:00
Asriel Camora 5faaa02f1a Remove threadlocal dependence 2023-06-21 13:20:05 -07:00
Asriel Camora 0f2267dabf Re enable random actions 2023-06-21 11:42:22 -07:00
Asriel Camora f3445f3cb9 Customizable solver config, remove simulator emplace/displace methods 2023-06-21 10:38:08 -07:00
Asriel Camora 11b4b7f6d9 Remove all unncessesary data instantiations 2023-06-21 10:07:16 -07:00
Asriel Camora 1dda7496e9 Remove unused NodeData instantiations 2023-06-21 09:40:37 -07:00
Asriel Camora 270963dd4a Stop using Arena type since everything can be GC'd easily 2023-06-21 09:12:45 -07:00
Asriel Camora 5189ef5d74 last optimization stuff i promise 2023-06-21 07:52:21 -07:00
Asriel Camora 52ad8a4cb0 even more minor optimizations, use random now 2023-06-21 07:36:43 -07:00
Asriel Camora 0b2b80d6b5 More minor optimizations 2023-06-21 06:16:57 -07:00
Asriel Camora fc0ffc11f3 Minor optimizations 2023-06-21 05:58:08 -07:00
Asriel Camora b7393b5c65 Improve simd code 2023-06-20 22:38:26 -07:00
Asriel Camora 47c9339d56 Replace ActionHistory with persistent ActionStatuses 2023-06-20 22:37:59 -07:00
Asriel Camora cdd4f5923e Precompute base progress/quality increases 2023-06-20 17:07:16 -07:00
Asriel Camora 1d0d4cf8ce Vectorize evaluation 2023-06-19 17:02:09 -07:00
Asriel Camora 05ead22448 Some analyzer code style changes 2023-06-19 10:03:57 -07:00
Asriel Camora 6d61e022b6 Fixed ActionSet behavior
IndexOf might be killing the performance though..
2023-06-19 08:52:25 -07:00
Asriel Camora 5edec27977 some changes 2023-06-19 08:15:39 -07:00
Asriel Camora e546ff2dcd Use ActionSet instead of a List 2023-06-18 12:35:32 -07:00
Asriel Camora a6ab098890 Speed up Rust's max_by implementation 2023-06-18 12:28:53 -07:00
Asriel Camora 5e19ed1449 Remove crafty implementation bug behavior 2023-06-18 12:24:36 -07:00
Asriel Camora bae48844b5 fix to be identical to crafty, remove debugs 2023-06-18 03:50:48 -07:00
Asriel Camora e190368d62 Big changes 2
- Split into several projects
- All dalamud/lumina deps are in the plugin
- Crafty/craftingway sim implemented!
- optimizations to follow
2023-06-17 08:50:46 -07:00