Asriel Camora
1da2acc5c5
Finish crafting log helper window
2023-10-10 18:38:01 -07:00
Asriel Camora
9a924c8049
Ignore if semaphore is used after task is cancelled
2023-10-10 18:18:22 -07:00
Asriel Camora
f8f876d5f4
Implement macro scoring and suggesting
2023-10-10 01:40:52 -07:00
Asriel Camora
7327a1a844
Add MaxThreadCount default
2023-10-10 00:39:38 -07:00
Asriel Camora
bdabbbdafa
API9 updates
2023-10-10 00:39:23 -07:00
Asriel Camora
6bfff06ac4
Implement max thread count setting using semaphores
2023-10-02 23:02:11 -07:00
Asriel Camora
42a1bc1117
Use TPL when solving with all algorithms
2023-10-02 22:28:12 -07:00
Asriel Camora
c0f579f23b
Split solver into MCTS and algorithms
2023-10-02 13:07:06 -07:00
Asriel Camora
e6081f5e60
Remove crafty namespace from solver
2023-10-02 12:16:43 -07:00
Asriel Camora
cfb5c53f3b
Make crafting log ui nicer, remove redundant code
2023-10-02 12:16:01 -07:00
Asriel Camora
08c5324b34
Code formatting fixes
2023-07-23 06:05:04 +04:00
Asriel Camora
c344815e50
Moved algorithm into SolverConfig, multi configuration support
2023-07-23 02:28:18 +04:00
Asriel Camora
8c73796b75
Solver token handling fixes, formatting tweaks
2023-07-21 15:51:52 +04:00
Asriel Camora
cb9dcb358f
Yet more ui tweaks
2023-07-16 00:09:37 +04:00
Asriel Camora
1cc83ca959
Minor ui tweaks
2023-07-16 00:01:19 +04:00
Asriel Camora
23dd60bb34
Make combo actions much more clear
2023-07-14 23:45:07 +04:00
Asriel Camora
9a245aa9ad
Minor solver refactoring
2023-07-13 21:22:39 +02:00
Asriel Camora
df72386f19
Fix edge case exceptions when input simulation is invalid
2023-07-13 13:02:39 +02:00
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
436858e65c
Optimizations/improve action gen
2023-07-07 20:23:27 +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
3ab50d389e
Fix concurrency, add forked simulations
2023-07-07 18:13:27 +02:00
Asriel Camora
7d8fc9ff8f
Remove extra stackallocs
2023-07-07 16:35:22 +02:00
Asriel Camora
e4d9e3a52e
Offload node score buffers
2023-07-07 15:45:42 +02:00
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