The benchmark runs each experiment with a subset of parameter sets of the session 1, in order to check how long the entire experiments will take.
PureCoinFlipping
is used because it seems that PureCoinFlipping
is the slowest queue type based on the previous experiment results.
Regardless of the queue type, the number of session 1 parameter sets of each experiment is shown in the table below.
Experiment | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
# paramsets | 96 | |||||
(=446) | 288 | |||||
(=446*3) | 96 | |||||
(=446) | 288 | |||||
(=446*3) | 54 | |||||
(=336) | 162 | |||||
(=336*3) |
<aside> ⚠️ The following results doesn’t include the time of calculation of ordering coefficients because it takes too long when the lengths of message sequences are very long. It would be better to run all experiments with just dumping all raw results, and calculate coefficients later as a separate process. I will try to optimize the calculation that I implemented. The current complexity is $n^n$ in the worst case, where $n$ is the length of sequence.
</aside>
The benchmark runs all experiments with the lightest parameter set of the session 1, which is the first parameter set, in order to check if the result is as intended.
Experiment | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
Paramset | ||||||
Duration | 0s | 0s | 0s | 0s | 20s | 20s |
# iterations | 1 | 1 | 1 | 1 | 10 | 10 |
Iteration | ||||||
Duration | 0s | 0s | 0s | 0s | 2s | 2s |
<aside> ⚠️ All benchmark results below are based on the previous experiment 6 setting (before revised), which was quite heavier than the current setting. For more accurate estimations, please see the progress tracking document.
</aside>
The benchmark runs all experiments with the heaviest parameter set of the session 1, which is the last parameter set, in order to see the upper bound of experiment duration of a single parameter set.
Experiment | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
Paramset | ||||||
Duration | 3s | 216s | ||||
(3m36s) | 659s | |||||
(10m59s) | 1462s | |||||
(24m22s) | 3h | 50h | ||||
# iterations | 1 | 1 | 1 | 1 | 10 | 10 |
Iteration | ||||||
Duration | 3s | 216s | ||||
(3m36s) | 659s | |||||
(10m59s) | 1462s | |||||
(24m22s) | 16s~40m | ~10h |
If all experiments are run sequentially,
Experiment | 1 | 2 | 3 | 4 | 5 | 6 |
---|---|---|---|---|---|---|
Experiment Duration | ||||||
upper bound | ||||||
per queue type | 288s | 18h | ||||
18h | 117h | 162h | 8100h |
The total duration is
$$ d=\frac{|Q|S}{|C|} $$
, where $|Q|$ is the number of queuing types, $S$ is the sum of the duration of each experiment (written in the table above), and $|C|$ is the number of available CPU cores.
If $|Q|=6, |C|=46$, the total duration is