Commit Graph

40 Commits

Author SHA1 Message Date
Asriel Camora 9a75542e4b Tweak byregot scoring system, add bonuses to config 2023-07-13 12:27:45 +02:00
Asriel Camora 7787ae32d5 Combo actions for better macro quality 2023-07-13 12:08:17 +02:00
Asriel Camora 49b84e966e Keep iterating until a completed craft is found or is impossible 2023-07-10 21:00:57 +02:00
Asriel Camora a9541e2e1d Add furcated actions (better results than single thread & faster!) 2023-07-09 08:59:39 +02:00
Asriel Camora 2e2db97ca7 More heuristic improvements 2023-07-08 14:38:35 +02:00
Asriel Camora 636501ab86 Remove all concurrency code
Muddled the code too much, and only gave a marginal performance improvement in the grand scheme of things. Other ways to parallelize MCTS will be nicer to implement and could yield better results.
2023-07-07 20:17:35 +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 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 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 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