Commit Graph

428 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 75306ca020 Minor optimization 2023-07-04 10:33:10 +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 14ced2df98 changed name so ci/cd can be happy 2023-06-29 14:28:02 -07:00
Asriel Camora 2cb2b8783c Fix readme 2023-06-29 13:43:51 -07:00
Asriel Camora 6b4d6d65a8 Remove unnecessary command 2023-06-29 13:42:04 -07:00
Asriel Camora 4158c2c929 Add license and other stuff 2023-06-29 13:33:16 -07:00
Asriel Camora 7ff65a5bbf Add config and temporary icon 2023-06-29 13:28:55 -07:00
Asriel Camora 5205497946 Add settings window 2023-06-29 13:11:18 -07:00
Asriel Camora d982a9b8c5 Simulator changes
- Progress bar tooltips in crafting log
- Disable modifying actions when generating
- Better bottom button layout
- Saving/save new, etc
2023-06-29 12:47:32 -07:00
Asriel Camora 9481f67cf3 Flesh out crafting log window 2023-06-29 12:46:17 -07:00
Asriel Camora 84d63ae4d7 Add macro wait times 2023-06-29 12:45:58 -07:00
Asriel Camora 6b04abdef4 Split simulation window, add solving, buttons, etc 2023-06-29 01:49:15 -07:00
Asriel Camora 875659e496 Added simulator ToString impls (similar to records) 2023-06-29 01:47:01 -07:00
Asriel Camora 37950b557e Cancellable solving, re-added solving randomization 2023-06-29 01:46:21 -07:00
Asriel Camora 1370957fc7 Finish effects and actions display w/ wrapping 2023-06-27 22:25:15 -07:00
Asriel Camora 98dae0c2c5 Big UI changes, drag and drop works
todo:
- action history doesnt wrap
- macro saving + suggestion/solving
- show macros in craftinglog window (still untested)
2023-06-27 02:54:34 -07:00
Asriel Camora ef12bf8351 Revamp UI and all sortsa stuff 2023-06-25 01:02:00 -07:00
Asriel Camora 866e30a5bc Simulator changes 2023-06-25 01:01:47 -07:00
Asriel Camora 62efffa3e7 starting new crafting log ui 2023-06-23 03:39:27 -07:00
Asriel Camora a5d1b18840 UI changes and stuff 2023-06-23 03:02:33 -07:00
Asriel Camora 37156c7f33 Add manipulation action flag and starting quality field 2023-06-23 03:02:03 -07:00
Asriel Camora de2feb2b34 Add mini window next to crafting hud when recipe is shown 2023-06-23 00:20:07 -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