diff options
| author | Sebastiano Tronto <sebastiano@tronto.net> | 2022-02-25 17:20:30 +0100 |
|---|---|---|
| committer | Sebastiano Tronto <sebastiano@tronto.net> | 2022-02-25 17:20:30 +0100 |
| commit | 06c3b9610b7694db34ee91312d8f3aa2196d7d62 (patch) | |
| tree | 8fe16806bdf9729de8f125ce12100ad58b431a2a /TODO.md | |
| parent | 1485cc87c248e1f56367774ebd4819a97116abcc (diff) | |
| download | nissy-06c3b9610b7694db34ee91312d8f3aa2196d7d62.tar.gz nissy-06c3b9610b7694db34ee91312d8f3aa2196d7d62.zip | |
Added cleanup command
Diffstat (limited to '')
| -rw-r--r-- | TODO.md | 16 |
1 files changed, 11 insertions, 5 deletions
| @@ -62,14 +62,18 @@ including e.g. solutions that were not shown because -c) | |||
| 62 | ## Technical stuff | 62 | ## Technical stuff |
| 63 | 63 | ||
| 64 | ### Memory management | 64 | ### Memory management |
| 65 | * free pruning table after solve is done? if so, I need to add another way | 65 | * free pruning table after solve is done? if I do this I need to deafault to a |
| 66 | of doing batch solving (I don't want to re-load the tables every time); | 66 | small table for < 8 moves solutions or smth |
| 67 | for example I could add the possibility of reading scrambles from file, | 67 | * improve multi-threading when solving multiple scrambles |
| 68 | and execute the same solve command to every line; also improve multi-threading: | ||
| 69 | I can just solve one scramble per thread, it's better because there is no lock. | ||
| 70 | * alternative: just add a command "free" to free up memory; it is not | 68 | * alternative: just add a command "free" to free up memory; it is not |
| 71 | user friendly (who wants to manage memory manually?) but on the other hand | 69 | user friendly (who wants to manage memory manually?) but on the other hand |
| 72 | it will only be used by the few who have less than 4(?) Gb of ram. | 70 | it will only be used by the few who have less than 4(?) Gb of ram. |
| 71 | * nissy -M maxmem option for running with at most maxmem memory; if exceeded | ||
| 72 | when loading a pruning table, return failure (or make every solve command | ||
| 73 | use tiny tables instead?); if maxmem is very 600Mb or | ||
| 74 | less do not use invtables (the performance loss is minimal anyway). If the | ||
| 75 | limit is really tiny, do not use mtables or ttables (but this would be | ||
| 76 | very slow and probably nobody will ever use it) | ||
| 73 | * Check if memory is enough for loading pruning tables; if not, abort | 77 | * Check if memory is enough for loading pruning tables; if not, abort |
| 74 | * For optimal solver: choose largest that fits in memory between nxopt and light | 78 | * For optimal solver: choose largest that fits in memory between nxopt and light |
| 75 | 79 | ||
| @@ -93,3 +97,5 @@ including e.g. solutions that were not shown because -c) | |||
| 93 | than when called directly, to avoid nasty problems with threading | 97 | than when called directly, to avoid nasty problems with threading |
| 94 | * unniss and inverse_alg work differently (one in place, the other makes | 98 | * unniss and inverse_alg work differently (one in place, the other makes |
| 95 | a copy and returns) changing inverse_alg seems the best option. | 99 | a copy and returns) changing inverse_alg seems the best option. |
| 100 | * parse command args: one function per arg type, then each command has | ||
| 101 | a list of options that it accepts (as a string) | ||
