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