diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 22 |
1 files changed, 18 insertions, 4 deletions
| @@ -2,18 +2,32 @@ | |||
| 2 | 2 | ||
| 3 | Work in progress. | 3 | Work in progress. |
| 4 | 4 | ||
| 5 | TODO: | 5 | ## Running tests |
| 6 | |||
| 7 | ``` | ||
| 8 | $ ./configure.sh # Run 'TYPE=AVX2 ./configure.sh' to use AVX2 instead | ||
| 9 | $ make test | ||
| 10 | ``` | ||
| 11 | |||
| 12 | ## TODO: | ||
| 13 | |||
| 14 | ### AVX2 | ||
| 15 | |||
| 16 | * static `solvedcube` and co don't work, turn into functions? | ||
| 17 | * implement missing stuff (moves, transform) | ||
| 18 | * optimize things that use _base functions | ||
| 19 | |||
| 20 | ### More features | ||
| 6 | 21 | ||
| 7 | * AVX2 compile-time switch | ||
| 8 | * coordinates: co, eo, epsep, cpsep_sym, cocpsep_sym, cphtr_sym, cocphtr_sym | 22 | * coordinates: co, eo, epsep, cpsep_sym, cocpsep_sym, cphtr_sym, cocphtr_sym |
| 9 | * pruning tables (1 bit per entry + fallback) | 23 | * pruning tables (1 bit per entry + fallback) |
| 10 | * solve.c | 24 | * solve.c |
| 11 | 25 | ||
| 12 | Optimizations: | 26 | ### Optimizations: |
| 13 | 27 | ||
| 14 | * multi-move (up to 4/5 moves at once) | 28 | * multi-move (up to 4/5 moves at once) |
| 15 | 29 | ||
| 16 | Things I need to learn: | 30 | ### Things I need to learn: |
| 17 | 31 | ||
| 18 | * Use AVX2 instructions, in particular | 32 | * Use AVX2 instructions, in particular |
| 19 | [_mm256_shuffle_epi8](https://www.intel.com/content/www/us/en/docs/cpp-compiler/developer-guide-reference/2021-10/mm256-shuffle-epi8.html)) | 33 | [_mm256_shuffle_epi8](https://www.intel.com/content/www/us/en/docs/cpp-compiler/developer-guide-reference/2021-10/mm256-shuffle-epi8.html)) |
