aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--benchmarks/benchmarks.md86
-rw-r--r--tools/301_solve_file/solve_file.c2
2 files changed, 20 insertions, 68 deletions
diff --git a/benchmarks/benchmarks.md b/benchmarks/benchmarks.md
index abecc85..8170892 100644
--- a/benchmarks/benchmarks.md
+++ b/benchmarks/benchmarks.md
@@ -38,12 +38,12 @@ may be particularly inaccurate, because writing the solution (together
38with some log messages) to standard output may take a significant portion 38with some log messages) to standard output may take a significant portion
39of the time, depending on the terminal emulator used and other factors. 39of the time, depending on the terminal emulator used and other factors.
40 40
41We ran two different tests: finding a single optimal solution and finding 41The main test we performed was finding a single optimal solution, and we
42*all* optimal solution. Both problems involve an exhaustive search at 42compared the results with vcube. This test was run in a single-thread
43depth `n-1`, but the second also involves and exhaustive search at depth 43configuration and in two multithread configurations (with 4 and 16
44`n`. Comparisons with vcube are only done in the first case, because 44threads). We also ran a test on finding *all* optimal solutions which,
45vcube's current configuration does not allow for finding multiple 45as far as I know, is a use case not supported by vcube; this latter test
46solutions, as far as I am aware. 46was only run on 16 threads.
47 47
48Since the size of the pruning table used by the solver is of utmost 48Since the size of the pruning table used by the solver is of utmost
49importance, we include two statistics: time per cube and time per cube 49importance, we include two statistics: time per cube and time per cube
@@ -167,81 +167,33 @@ Time per cube adjusted for tables size (in seconds \* GiB, lower is better).
167(a) vcube cannot parallelize on a single scramble, the results for the 167(a) vcube cannot parallelize on a single scramble, the results for the
168Superflip are going to be the same as in the single thread case. 168Superflip are going to be the same as in the single thread case.
169 169
170## All optimal solutions (TODO) 170## All optimal solutions
171 171
172Average time for finding all optimal solutions. 172Average time for finding all optimal solutions.
173 173
174### Single thread
175
176Time per cube (in seconds, lower is better).
177
178| Solver | Size |17 moves|18 moves|19 moves|20 moves|
179|:---------|:-------|-------:|-------:|-------:|-------:|
180|H48 h11 k2|56.1GiB | | | | |
181|H48 h10 k2|28.1GiB | | | | |
182|H48 h9 k2 |14.1GiB | | | | |
183|H48 h8 k2 | 7.1GiB | | | | |
184|H48 h7 k2 | 3.6GiB | | | | |
185|H48 h6 k2 | 1.8GiB | | | | |
186
187Time per cube adjusted for tables size (in seconds \* GiB, lower is better).
188
189| Solver | Size |17 moves|18 moves|19 moves|20 moves|
190|:---------|:-------|-------:|-------:|-------:|-------:|
191|H48 h11 k2|56.1GiB | | | | |
192|H48 h10 k2|28.1GiB | | | | |
193|H48 h9 k2 |14.1GiB | | | | |
194|H48 h8 k2 | 7.1GiB | | | | |
195|H48 h7 k2 | 3.6GiB | | | | |
196|H48 h6 k2 | 1.8GiB | | | | |
197
198### Multithread (4 threads)
199
200Time per cube (in seconds, lower is better).
201
202| Solver | Size |17 moves|18 moves|19 moves|20 moves|
203|:---------|:-------|-------:|-------:|-------:|-------:|
204|H48 h11 k2|56.1GiB | | | | |
205|H48 h10 k2|28.1GiB | | | | |
206|H48 h9 k2 |14.1GiB | | | | |
207|H48 h8 k2 | 7.1GiB | | | | |
208|H48 h7 k2 | 3.6GiB | | | | |
209|H48 h6 k2 | 1.8GiB | | | | |
210
211Time per cube adjusted for tables size (in seconds \* GiB, lower is better).
212
213| Solver | Size |17 moves|18 moves|19 moves|20 moves|
214|:---------|:-------|-------:|-------:|-------:|-------:|
215|H48 h11 k2|56.1GiB | | | | |
216|H48 h10 k2|28.1GiB | | | | |
217|H48 h9 k2 |14.1GiB | | | | |
218|H48 h8 k2 | 7.1GiB | | | | |
219|H48 h7 k2 | 3.6GiB | | | | |
220|H48 h6 k2 | 1.8GiB | | | | |
221
222### Multithread (16 threads) 174### Multithread (16 threads)
223 175
224Time per cube (in seconds, lower is better). 176Time per cube (in seconds, lower is better).
225 177
226| Solver | Size |17 moves|18 moves|19 moves|20 moves| 178| Solver | Size |17 moves|18 moves|19 moves|20 moves|
227|:---------|:-------|-------:|-------:|-------:|-------:| 179|:---------|:-------|-------:|-------:|-------:|-------:|
228|H48 h11 k2|56.1GiB | | | | | 180|H48 h11 k2|56.1GiB | 0.05 | 0.50 | 4.24 | 19.75 |
229|H48 h10 k2|28.1GiB | | | | | 181|H48 h10 k2|28.1GiB | 0.08 | 0.88 | 6.94 | |
230|H48 h9 k2 |14.1GiB | | | | | 182|H48 h9 k2 |14.1GiB | 0.13 | 1.39 | 13.50 | |
231|H48 h8 k2 | 7.1GiB | | | | | 183|H48 h8 k2 | 7.1GiB | 0.25 | 2.85 | | |
232|H48 h7 k2 | 3.6GiB | | | | | 184|H48 h7 k2 | 3.6GiB | 0.36 | 4.24 | | |
233|H48 h6 k2 | 1.8GiB | | | | | 185|H48 h6 k2 | 1.8GiB | 0.69 | 8.20 | | |
234 186
235Time per cube adjusted for tables size (in seconds \* GiB, lower is better). 187Time per cube adjusted for tables size (in seconds \* GiB, lower is better).
236 188
237| Solver | Size |17 moves|18 moves|19 moves|20 moves| 189| Solver | Size |17 moves|18 moves|19 moves|20 moves|
238|:---------|:-------|-------:|-------:|-------:|-------:| 190|:---------|:-------|-------:|-------:|-------:|-------:|
239|H48 h11 k2|56.1GiB | | | | | 191|H48 h11 k2|56.1GiB | 2.81 | 28.05 | 237.86 |1107.98 |
240|H48 h10 k2|28.1GiB | | | | | 192|H48 h10 k2|28.1GiB | 2.25 | 24.73 | 195.01 | |
241|H48 h9 k2 |14.1GiB | | | | | 193|H48 h9 k2 |14.1GiB | 1.83 | 19.60 | 190.35 | |
242|H48 h8 k2 | 7.1GiB | | | | | 194|H48 h8 k2 | 7.1GiB | 1.77 | 20.24 | | |
243|H48 h7 k2 | 3.6GiB | | | | | 195|H48 h7 k2 | 3.6GiB | 1.30 | 15.26 | | |
244|H48 h6 k2 | 1.8GiB | | | | | 196|H48 h6 k2 | 1.8GiB | 1.24 | 14.76 | | |
245 197
246## Other notes 198## Other notes
247 199
diff --git a/tools/301_solve_file/solve_file.c b/tools/301_solve_file/solve_file.c
index 2fc3a98..a1277e3 100644
--- a/tools/301_solve_file/solve_file.c
+++ b/tools/301_solve_file/solve_file.c
@@ -1,6 +1,6 @@
1#include "../tool.h" 1#include "../tool.h"
2 2
3#define SOL_BUFFER_LEN 1000 3#define SOL_BUFFER_LEN 100000
4#define MAX_SCR 10000 4#define MAX_SCR 10000
5#define MAX_SCR_LEN 250 5#define MAX_SCR_LEN 250
6 6

Generated with cgit - Back to sebastiano.tronto.net