aboutsummaryrefslogtreecommitdiff
path: root/measurements
diff options
context:
space:
mode:
authorGravatar jadep <jade.philipoom@gmail.com>2017-11-16 14:02:02 -0500
committerGravatar jadep <jade.philipoom@gmail.com>2017-11-16 14:02:02 -0500
commita7cbc1fe6f1f01a877dec0f638f0345fe27804a7 (patch)
treee8ae904e9a4e60a2f6720ed5ceefa2c3a9c5820f /measurements
parente3c4cb2c094b3cddf1b6f4c7da7ff5a8f4a9c283 (diff)
change how input data is gathered and tweak tables
Diffstat (limited to 'measurements')
-rw-r--r--measurements/gather_results.sh2
-rw-r--r--measurements/results-by-field-aggregate32.txt295
-rw-r--r--measurements/results-by-field-aggregate64.txt573
-rw-r--r--measurements/tolatex.py66
4 files changed, 890 insertions, 46 deletions
diff --git a/measurements/gather_results.sh b/measurements/gather_results.sh
new file mode 100644
index 000000000..8b6b0ca98
--- /dev/null
+++ b/measurements/gather_results.sh
@@ -0,0 +1,2 @@
+cat 2017-11-16/measurements-krait.txt | grep -v "^#" | grep -o "[a-z0-9]*_2e.*_.*/[a-z]*\s.*" | sed "s/_[0-9]*limbs\//\t/g" | sed "s/montgomery[0-9][0-9]_\(.*\)fibe/\1fiat_montgomery/g" | sed "s/montgomery[0-9][0-9]_\(.*\)gmp/\1gmp/g" | sed "s/solinas[0-9][0-9]_\(.*\)fibe/\1fiat_solinas/g" | sed "s/gmp\([a-z]*\)\s*\([0-9]\)/gmp\1\t\2/g" | sed "s/fiat_\([a-z]*\)\s*\([0-9]\)/fiat_\1\t\2/g" > results-by-field-aggregate32.txt
+cat 2017-11-16/measurements-haswell.txt | grep -v "^#" | grep -o "[a-z0-9]*_2e.*_.*/[a-z]*\s.*" | sed "s/_[0-9]*limbs\//\t/g" | sed "s/montgomery[0-9][0-9]_\(.*\)fibe/\1fiat_montgomery/g" | sed "s/montgomery[0-9][0-9]_\(.*\)gmp/\1gmp/g" | sed "s/solinas[0-9][0-9]_\(.*\)fibe/\1fiat_solinas/g" | sed "s/gmp\([a-z]*\)\s*\([0-9]\)/gmp\1\t\2/g" | sed "s/fiat_\([a-z]*\)\s*\([0-9]\)/fiat_\1\t\2/g" > results-by-field-aggregate64.txt
diff --git a/measurements/results-by-field-aggregate32.txt b/measurements/results-by-field-aggregate32.txt
new file mode 100644
index 000000000..dd12f226e
--- /dev/null
+++ b/measurements/results-by-field-aggregate32.txt
@@ -0,0 +1,295 @@
+2e127m1 fiat_solinas 0.30
+2e127m1 fiat_solinas 0.41
+2e127m1 fiat_montgomery 1.19
+2e127m1 gmpvar 3.23
+2e127m1 gmpsec 2.86
+2e129m25 fiat_solinas 0.35
+2e129m25 fiat_solinas 0.46
+2e129m25 fiat_montgomery 1.70
+2e129m25 gmpvar 3.77
+2e129m25 gmpsec 3.38
+2e130m5 fiat_solinas 0.44
+2e130m5 fiat_solinas 0.49
+2e130m5 fiat_montgomery 1.87
+2e130m5 gmpvar 3.79
+2e130m5 gmpsec 3.56
+2e137m13 fiat_solinas 0.48
+2e137m13 fiat_montgomery 2.06
+2e137m13 gmpvar 3.78
+2e137m13 gmpsec 3.41
+2e140m27 fiat_solinas 0.51
+2e140m27 fiat_solinas 0.58
+2e140m27 fiat_montgomery 1.98
+2e140m27 gmpvar 3.77
+2e140m27 gmpsec 3.43
+2e141m9 fiat_solinas 0.51
+2e141m9 fiat_solinas 0.59
+2e141m9 fiat_montgomery 2.00
+2e141m9 gmpvar 3.81
+2e141m9 gmpsec 3.43
+2e150m5 fiat_solinas 0.49
+2e150m5 fiat_solinas 0.59
+2e150m5 fiat_montgomery 1.99
+2e150m5 gmpvar 3.80
+2e150m5 gmpsec 3.38
+2e150m3 fiat_solinas 0.42
+2e150m3 fiat_solinas 0.57
+2e150m3 fiat_montgomery 2.00
+2e150m3 gmpvar 3.79
+2e150m3 gmpsec 3.56
+2e152m17 fiat_solinas 0.50
+2e152m17 fiat_solinas 0.62
+2e152m17 fiat_montgomery 1.96
+2e152m17 gmpvar 3.82
+2e152m17 gmpsec 3.40
+2e158m15 fiat_solinas 0.52
+2e158m15 fiat_solinas 0.64
+2e158m15 fiat_montgomery 2.04
+2e158m15 gmpvar 3.77
+2e158m15 gmpsec 3.40
+2e165m25 fiat_solinas 0.59
+2e165m25 fiat_solinas 0.73
+2e165m25 fiat_montgomery 2.46
+2e165m25 gmpvar 4.45
+2e165m25 gmpsec 4.02
+2e166m5 fiat_solinas 0.61
+2e166m5 fiat_montgomery 2.43
+2e166m5 gmpvar 4.43
+2e166m5 gmpsec 4.02
+2e171m19 fiat_solinas 0.57
+2e171m19 fiat_solinas 0.75
+2e171m19 fiat_montgomery 2.68
+2e171m19 gmpvar 4.51
+2e171m19 gmpsec 4.04
+2e174m17 fiat_solinas 0.58
+2e174m17 fiat_solinas 0.77
+2e174m17 fiat_montgomery 2.63
+2e174m17 gmpvar 4.39
+2e174m17 gmpsec 4.03
+2e174m3 fiat_solinas 0.61
+2e174m3 fiat_solinas 0.71
+2e174m3 fiat_montgomery 2.62
+2e174m3 gmpvar 4.40
+2e174m3 gmpsec 4.02
+2e189m25 fiat_solinas 0.70
+2e189m25 fiat_montgomery 2.65
+2e189m25 gmpvar 4.40
+2e189m25 gmpsec 4.05
+2e190m11 fiat_solinas 0.71
+2e190m11 fiat_montgomery 2.64
+2e190m11 gmpvar 4.42
+2e190m11 gmpsec 4.10
+2e191m19 fiat_solinas 0.66
+2e191m19 fiat_solinas 0.86
+2e191m19 fiat_montgomery 2.69
+2e191m19 gmpvar 4.40
+2e191m19 gmpsec 4.03
+2e194m33 fiat_solinas 0.75
+2e194m33 fiat_solinas 0.94
+2e194m33 gmpvar 4.94
+2e194m33 gmpsec 4.66
+2e196m15 fiat_solinas 0.77
+2e196m15 fiat_solinas 0.91
+2e196m15 gmpvar 4.94
+2e196m15 gmpsec 4.64
+2e198m17 fiat_solinas 0.76
+2e198m17 fiat_solinas 0.89
+2e198m17 gmpvar 4.97
+2e198m17 gmpsec 4.72
+2e206m5 fiat_solinas 0.76
+2e206m5 fiat_solinas 0.83
+2e206m5 gmpvar 4.91
+2e206m5 gmpsec 4.62
+2e212m29 fiat_solinas 0.86
+2e212m29 gmpvar 4.91
+2e212m29 gmpsec 4.68
+2e213m3 fiat_solinas 0.70
+2e213m3 fiat_solinas 0.84
+2e213m3 gmpvar 4.94
+2e213m3 gmpsec 4.68
+2e221m3 fiat_solinas 0.80
+2e221m3 gmpvar 4.92
+2e221m3 gmpsec 4.68
+2e222m117 fiat_solinas 1.03
+2e222m117 fiat_solinas 0.87
+2e222m117 gmpvar 4.87
+2e222m117 gmpsec 4.72
+2e226m5 fiat_solinas 1.02
+2e226m5 fiat_solinas 0.87
+2e226m5 gmpvar 5.65
+2e226m5 gmpsec 5.25
+2e230m27 fiat_solinas 1.00
+2e230m27 fiat_solinas 0.83
+2e230m27 gmpvar 5.71
+2e230m27 gmpsec 5.29
+2e235m15 fiat_solinas 1.09
+2e235m15 fiat_solinas 0.90
+2e235m15 gmpvar 5.69
+2e235m15 gmpsec 5.31
+2e243m9 fiat_solinas 1.07
+2e243m9 fiat_solinas 0.86
+2e243m9 gmpvar 5.62
+2e243m9 gmpsec 5.29
+2e251m9 fiat_solinas 1.12
+2e251m9 fiat_solinas 1.18
+2e251m9 gmpvar 5.65
+2e251m9 gmpsec 5.30
+2e255m765 fiat_solinas 1.43
+2e255m765 fiat_solinas 1.61
+2e255m765 gmpvar 5.71
+2e255m765 gmpsec 5.27
+2e255m19 fiat_solinas 1.01
+2e255m19 fiat_solinas 1.14
+2e255m19 gmpvar 5.70
+2e255m19 gmpsec 5.25
+2e256m189 fiat_solinas 1.20
+2e256m189 fiat_solinas 1.52
+2e256m189 gmpvar 5.49
+2e256m189 gmpsec 4.71
+2e266m3 fiat_solinas 1.01
+2e266m3 fiat_solinas 1.11
+2e266m3 gmpvar 6.32
+2e266m3 gmpsec 6.10
+2e285m9 fiat_solinas 1.13
+2e285m9 fiat_solinas 1.49
+2e285m9 gmpvar 6.34
+2e285m9 gmpsec 6.13
+2e291m19 fiat_solinas 1.33
+2e291m19 gmpvar 6.98
+2e291m19 gmpsec 6.94
+2e321m9 fiat_solinas 1.72
+2e321m9 gmpvar 7.66
+2e321m9 gmpsec 7.60
+2e336m17 fiat_solinas 1.67
+2e336m17 fiat_solinas 1.83
+2e336m17 gmpvar 7.74
+2e336m17 gmpsec 7.64
+2e336m3 fiat_solinas 1.59
+2e336m3 gmpvar 7.69
+2e336m3 gmpsec 7.58
+2e338m15 fiat_solinas 1.70
+2e338m15 fiat_solinas 1.96
+2e338m15 gmpvar 7.67
+2e338m15 gmpsec 7.66
+2e369m25 fiat_solinas 2.44
+2e369m25 fiat_solinas 2.74
+2e369m25 gmpvar 9.03
+2e369m25 gmpsec 8.41
+2e379m19 fiat_solinas 2.47
+2e379m19 fiat_solinas 3.04
+2e379m19 gmpvar 9.25
+2e379m19 gmpsec 8.44
+2e382m105 fiat_solinas 2.66
+2e382m105 fiat_solinas 4.05
+2e382m105 gmpvar 9.04
+2e382m105 gmpsec 8.41
+2e383m421 fiat_solinas 4.19
+2e383m421 fiat_solinas 3.58
+2e383m421 gmpvar 9.11
+2e383m421 gmpsec 8.45
+2e383m187 fiat_solinas 2.63
+2e383m187 fiat_solinas 4.14
+2e383m187 gmpvar 9.11
+2e383m187 gmpsec 8.44
+2e383m31 fiat_solinas 2.60
+2e383m31 gmpvar 9.13
+2e383m31 gmpsec 8.47
+2e384m317 fiat_solinas 3.95
+2e384m317 fiat_solinas 4.18
+2e384m317 gmpvar 8.82
+2e384m317 gmpsec 7.62
+2e389m21 fiat_solinas 2.89
+2e389m21 gmpvar 9.93
+2e389m21 gmpsec 9.41
+2e401m31 fiat_solinas 2.85
+2e401m31 fiat_solinas 4.17
+2e401m31 gmpvar 9.92
+2e401m31 gmpsec 9.35
+2e413m21 fiat_solinas 3.53
+2e413m21 gmpvar 9.93
+2e413m21 gmpsec 9.48
+2e414m17 fiat_solinas 3.72
+2e414m17 gmpvar 9.86
+2e414m17 gmpsec 9.40
+2e444m17 fiat_solinas 3.70
+2e444m17 gmpvar 10.89
+2e444m17 gmpsec 10.31
+2e452m3 fiat_solinas 3.76
+2e452m3 fiat_solinas 3.23
+2e452m3 gmpvar 11.63
+2e452m3 gmpsec 11.33
+2e468m17 fiat_solinas 3.20
+2e468m17 fiat_solinas 5.38
+2e468m17 gmpvar 11.63
+2e468m17 gmpsec 11.37
+2e488m17 fiat_solinas 7.99
+2e488m17 gmpvar 12.92
+2e488m17 gmpsec 12.23
+2e489m21 fiat_solinas 7.70
+2e489m21 gmpvar 12.81
+2e489m21 gmpsec 12.26
+2e495m31 fiat_solinas 6.07
+2e495m31 fiat_solinas 8.60
+2e495m31 gmpvar 13.10
+2e495m31 gmpsec 12.20
+2e511m481 gmpvar 12.90
+2e511m481 gmpsec 12.23
+2e511m187 fiat_solinas 9.73
+2e511m187 gmpvar 13.07
+2e511m187 gmpsec 12.21
+2e512m569 gmpvar 12.55
+2e512m569 gmpsec 11.23
+2e521m1 fiat_solinas 5.27
+2e521m1 fiat_solinas 3.90
+2e521m1 gmpvar 13.91
+2e521m1 gmpsec 13.30
+2e192m2e64m1 fiat_montgomery 2.41
+2e192m2e64m1 gmpvar 4.23
+2e192m2e64m1 gmpsec 3.56
+2e216m2e108m1 fiat_solinas 1.00
+2e216m2e108m1 fiat_solinas 0.70
+2e216m2e108m1 gmpvar 4.92
+2e216m2e108m1 gmpsec 4.67
+2e322m2e161m1 fiat_solinas 1.37
+2e322m2e161m1 fiat_solinas 1.82
+2e322m2e161m1 gmpvar 7.74
+2e322m2e161m1 gmpsec 7.66
+2e416m2e208m1 fiat_solinas 2.48
+2e416m2e208m1 fiat_solinas 3.34
+2e416m2e208m1 gmpvar 9.67
+2e416m2e208m1 gmpsec 8.54
+2e448m2e224m1 fiat_solinas 3.18
+2e448m2e224m1 gmpvar 10.51
+2e448m2e224m1 gmpsec 9.57
+2e450m2e225m1 gmpvar 11.63
+2e450m2e225m1 gmpsec 11.37
+2e480m2e240m1 fiat_solinas 3.58
+2e480m2e240m1 gmpvar 11.33
+2e480m2e240m1 gmpsec 10.47
+2e205m45x2e198m1 gmpvar 5.03
+2e205m45x2e198m1 gmpsec 4.66
+2e224m2e96p1 gmpvar 4.85
+2e224m2e96p1 gmpsec 4.13
+2e256m2e224p2e192p2e96m1 gmpvar 5.46
+2e256m2e224p2e192p2e96m1 gmpsec 4.70
+2e256m2e32m977 fiat_solinas 1.65
+2e256m2e32m977 fiat_solinas 2.00
+2e256m2e32m977 gmpvar 5.45
+2e256m2e32m977 gmpsec 4.72
+2e256m4294968273 gmpvar 5.48
+2e256m4294968273 gmpsec 4.77
+2e384m2e128m2e96p2e32m1 gmpvar 8.80
+2e384m2e128m2e96p2e32m1 gmpsec 7.62
+2e256m88x2e240m1 gmpvar 5.46
+2e256m88x2e240m1 gmpsec 4.78
+2e254m127x2e240m1 fiat_montgomery 3.97
+2e254m127x2e240m1 gmpvar 5.70
+2e254m127x2e240m1 gmpsec 5.26
+2e384m79x2e376m1 gmpvar 8.84
+2e384m79x2e376m1 gmpsec 7.66
+2e384m5x2e368m1 gmpvar 8.94
+2e384m5x2e368m1 gmpsec 7.64
+2e512m491x2e496m1 gmpvar 12.58
+2e512m491x2e496m1 gmpsec 11.26
+2e510m290x2e496m1 gmpvar 12.90
+2e510m290x2e496m1 gmpsec 12.17
diff --git a/measurements/results-by-field-aggregate64.txt b/measurements/results-by-field-aggregate64.txt
new file mode 100644
index 000000000..a755bff58
--- /dev/null
+++ b/measurements/results-by-field-aggregate64.txt
@@ -0,0 +1,573 @@
+2e127m1 fiat_solinas 0.03
+2e127m1 fiat_solinas 0.04
+2e127m1 fiat_solinas 0.05
+2e127m1 fiat_montgomery 0.04
+2e127m1 fiat_montgomery 0.12
+2e127m1 gmpvar 0.15
+2e127m1 gmpsec 0.26
+2e127m1 gmpxx 0.67
+2e129m25 fiat_solinas 0.03
+2e129m25 fiat_solinas 0.04
+2e129m25 fiat_solinas 0.03
+2e129m25 fiat_solinas 0.06
+2e129m25 fiat_montgomery 0.07
+2e129m25 fiat_montgomery 0.18
+2e129m25 gmpvar 0.27
+2e129m25 gmpsec 0.38
+2e129m25 gmpxx 0.80
+2e130m5 fiat_solinas 0.04
+2e130m5 fiat_solinas 0.04
+2e130m5 fiat_solinas 0.03
+2e130m5 fiat_solinas 0.06
+2e130m5 fiat_montgomery 0.09
+2e130m5 fiat_montgomery 0.19
+2e130m5 gmpvar 0.28
+2e130m5 gmpsec 0.39
+2e130m5 gmpxx 0.79
+2e137m13 fiat_solinas 0.03
+2e137m13 fiat_solinas 0.04
+2e137m13 fiat_solinas 0.06
+2e137m13 fiat_montgomery 0.08
+2e137m13 fiat_montgomery 0.19
+2e137m13 gmpvar 0.27
+2e137m13 gmpsec 0.37
+2e137m13 gmpxx 0.80
+2e140m27 fiat_solinas 0.03
+2e140m27 fiat_solinas 0.04
+2e140m27 fiat_solinas 0.06
+2e140m27 fiat_solinas 0.07
+2e140m27 fiat_montgomery 0.08
+2e140m27 fiat_montgomery 0.19
+2e140m27 gmpvar 0.27
+2e140m27 gmpsec 0.38
+2e140m27 gmpxx 0.80
+2e141m9 fiat_solinas 0.03
+2e141m9 fiat_solinas 0.04
+2e141m9 fiat_solinas 0.06
+2e141m9 fiat_solinas 0.07
+2e141m9 fiat_montgomery 0.08
+2e141m9 fiat_montgomery 0.19
+2e141m9 gmpvar 0.27
+2e141m9 gmpsec 0.39
+2e141m9 gmpxx 0.83
+2e150m5 fiat_solinas 0.03
+2e150m5 fiat_solinas 0.04
+2e150m5 fiat_solinas 0.06
+2e150m5 fiat_solinas 0.07
+2e150m5 fiat_montgomery 0.08
+2e150m5 fiat_montgomery 0.19
+2e150m5 gmpvar 0.29
+2e150m5 gmpsec 0.39
+2e150m5 gmpxx 0.84
+2e150m3 fiat_solinas 0.03
+2e150m3 fiat_solinas 0.04
+2e150m3 fiat_solinas 0.06
+2e150m3 fiat_solinas 0.07
+2e150m3 fiat_montgomery 0.08
+2e150m3 fiat_montgomery 0.19
+2e150m3 gmpvar 0.30
+2e150m3 gmpsec 0.38
+2e150m3 gmpxx 0.80
+2e152m17 fiat_solinas 0.03
+2e152m17 fiat_solinas 0.04
+2e152m17 fiat_solinas 0.06
+2e152m17 fiat_solinas 0.08
+2e152m17 fiat_montgomery 0.08
+2e152m17 fiat_montgomery 0.20
+2e152m17 gmpvar 0.27
+2e152m17 gmpsec 0.38
+2e152m17 gmpxx 0.82
+2e158m15 fiat_solinas 0.03
+2e158m15 fiat_solinas 0.04
+2e158m15 fiat_solinas 0.06
+2e158m15 fiat_solinas 0.07
+2e158m15 fiat_montgomery 0.08
+2e158m15 fiat_montgomery 0.19
+2e158m15 gmpvar 0.27
+2e158m15 gmpsec 0.37
+2e158m15 gmpxx 0.76
+2e165m25 fiat_solinas 0.03
+2e165m25 fiat_solinas 0.04
+2e165m25 fiat_solinas 0.07
+2e165m25 fiat_solinas 0.10
+2e165m25 fiat_montgomery 0.08
+2e165m25 fiat_montgomery 0.27
+2e165m25 gmpvar 0.27
+2e165m25 gmpsec 0.38
+2e165m25 gmpxx 0.78
+2e166m5 fiat_solinas 0.03
+2e166m5 fiat_solinas 0.04
+2e166m5 fiat_solinas 0.07
+2e166m5 fiat_montgomery 0.08
+2e166m5 fiat_montgomery 0.27
+2e166m5 gmpvar 0.27
+2e166m5 gmpsec 0.39
+2e166m5 gmpxx 0.79
+2e171m19 fiat_solinas 0.03
+2e171m19 fiat_solinas 0.04
+2e171m19 fiat_solinas 0.07
+2e171m19 fiat_solinas 0.10
+2e171m19 fiat_montgomery 0.08
+2e171m19 fiat_montgomery 0.27
+2e171m19 gmpvar 0.27
+2e171m19 gmpsec 0.38
+2e171m19 gmpxx 0.79
+2e174m17 fiat_solinas 0.03
+2e174m17 fiat_solinas 0.04
+2e174m17 fiat_solinas 0.07
+2e174m17 fiat_solinas 0.09
+2e174m17 fiat_montgomery 0.08
+2e174m17 fiat_montgomery 0.28
+2e174m17 gmpvar 0.28
+2e174m17 gmpsec 0.38
+2e174m17 gmpxx 0.78
+2e174m3 fiat_solinas 0.03
+2e174m3 fiat_solinas 0.04
+2e174m3 fiat_solinas 0.07
+2e174m3 fiat_solinas 0.09
+2e174m3 fiat_montgomery 0.08
+2e174m3 fiat_montgomery 0.27
+2e174m3 gmpvar 0.27
+2e174m3 gmpsec 0.38
+2e174m3 gmpxx 0.78
+2e189m25 fiat_solinas 0.04
+2e189m25 fiat_solinas 0.06
+2e189m25 fiat_solinas 0.09
+2e189m25 fiat_montgomery 0.08
+2e189m25 fiat_montgomery 0.27
+2e189m25 gmpvar 0.27
+2e189m25 gmpsec 0.39
+2e189m25 gmpxx 0.80
+2e190m11 fiat_solinas 0.04
+2e190m11 fiat_solinas 0.06
+2e190m11 fiat_solinas 0.09
+2e190m11 fiat_montgomery 0.08
+2e190m11 fiat_montgomery 0.27
+2e190m11 gmpvar 0.27
+2e190m11 gmpsec 0.38
+2e190m11 gmpxx 0.78
+2e191m19 fiat_solinas 0.04
+2e191m19 fiat_solinas 0.06
+2e191m19 fiat_solinas 0.10
+2e191m19 fiat_solinas 0.11
+2e191m19 fiat_montgomery 0.09
+2e191m19 fiat_montgomery 0.27
+2e191m19 gmpvar 0.26
+2e191m19 gmpsec 0.36
+2e191m19 gmpxx 0.78
+2e194m33 fiat_solinas 0.04
+2e194m33 fiat_solinas 0.06
+2e194m33 fiat_solinas 0.09
+2e194m33 fiat_solinas 0.11
+2e194m33 fiat_montgomery 0.12
+2e194m33 gmpvar 0.34
+2e194m33 gmpsec 0.50
+2e194m33 gmpxx 0.93
+2e196m15 fiat_solinas 0.04
+2e196m15 fiat_solinas 0.06
+2e196m15 fiat_solinas 0.09
+2e196m15 fiat_solinas 0.11
+2e196m15 fiat_montgomery 0.12
+2e196m15 gmpvar 0.34
+2e196m15 gmpsec 0.50
+2e196m15 gmpxx 0.89
+2e198m17 fiat_solinas 0.04
+2e198m17 fiat_solinas 0.06
+2e198m17 fiat_solinas 0.09
+2e198m17 fiat_solinas 0.11
+2e198m17 fiat_montgomery 0.12
+2e198m17 gmpvar 0.34
+2e198m17 gmpsec 0.51
+2e198m17 gmpxx 0.87
+2e206m5 fiat_solinas 0.04
+2e206m5 fiat_solinas 0.06
+2e206m5 fiat_solinas 0.08
+2e206m5 fiat_solinas 0.11
+2e206m5 fiat_montgomery 0.14
+2e206m5 gmpvar 0.34
+2e206m5 gmpsec 0.50
+2e206m5 gmpxx 0.84
+2e212m29 fiat_solinas 0.05
+2e212m29 fiat_solinas 0.06
+2e212m29 fiat_solinas 0.11
+2e212m29 fiat_montgomery 0.12
+2e212m29 gmpvar 0.35
+2e212m29 gmpsec 0.49
+2e212m29 gmpxx 0.87
+2e213m3 fiat_solinas 0.04
+2e213m3 fiat_solinas 0.06
+2e213m3 fiat_solinas 0.09
+2e213m3 fiat_solinas 0.11
+2e213m3 fiat_montgomery 0.13
+2e213m3 gmpvar 0.37
+2e213m3 gmpsec 0.49
+2e213m3 gmpxx 0.88
+2e221m3 fiat_solinas 0.05
+2e221m3 fiat_solinas 0.07
+2e221m3 fiat_solinas 0.10
+2e221m3 fiat_montgomery 0.15
+2e221m3 gmpvar 0.36
+2e221m3 gmpsec 0.51
+2e221m3 gmpxx 0.89
+2e222m117 fiat_solinas 0.05
+2e222m117 fiat_solinas 0.06
+2e222m117 fiat_solinas 0.13
+2e222m117 fiat_solinas 0.11
+2e222m117 fiat_montgomery 0.12
+2e222m117 gmpvar 0.35
+2e222m117 gmpsec 0.53
+2e222m117 gmpxx 0.91
+2e226m5 fiat_solinas 0.04
+2e226m5 fiat_solinas 0.08
+2e226m5 fiat_solinas 0.13
+2e226m5 fiat_solinas 0.11
+2e226m5 fiat_montgomery 0.13
+2e226m5 gmpvar 0.35
+2e226m5 gmpsec 0.50
+2e226m5 gmpxx 0.92
+2e230m27 fiat_solinas 0.05
+2e230m27 fiat_solinas 0.06
+2e230m27 fiat_solinas 0.13
+2e230m27 fiat_solinas 0.11
+2e230m27 fiat_montgomery 0.13
+2e230m27 gmpvar 0.35
+2e230m27 gmpsec 0.54
+2e230m27 gmpxx 0.91
+2e235m15 fiat_solinas 0.06
+2e235m15 fiat_solinas 0.06
+2e235m15 fiat_solinas 0.13
+2e235m15 fiat_solinas 0.11
+2e235m15 fiat_montgomery 0.13
+2e235m15 gmpvar 0.34
+2e235m15 gmpsec 0.50
+2e235m15 gmpxx 0.89
+2e243m9 fiat_solinas 0.06
+2e243m9 fiat_solinas 0.11
+2e243m9 fiat_solinas 0.12
+2e243m9 fiat_solinas 0.10
+2e243m9 fiat_montgomery 0.13
+2e243m9 gmpvar 0.34
+2e243m9 gmpsec 0.50
+2e243m9 gmpxx 0.89
+2e251m9 fiat_solinas 0.06
+2e251m9 fiat_solinas 0.10
+2e251m9 fiat_solinas 0.13
+2e251m9 fiat_solinas 0.16
+2e251m9 fiat_montgomery 0.13
+2e251m9 gmpvar 0.35
+2e251m9 gmpsec 0.50
+2e251m9 gmpxx 0.94
+2e255m765 fiat_solinas 0.06
+2e255m765 fiat_solinas 0.10
+2e255m765 fiat_solinas 0.18
+2e255m765 fiat_solinas 0.20
+2e255m765 fiat_montgomery 0.13
+2e255m765 gmpvar 0.34
+2e255m765 gmpsec 0.52
+2e255m765 gmpxx 0.90
+2e255m19 fiat_solinas 0.06
+2e255m19 fiat_solinas 0.10
+2e255m19 fiat_solinas 0.15
+2e255m19 fiat_solinas 0.17
+2e255m19 fiat_montgomery 0.13
+2e255m19 gmpvar 0.35
+2e255m19 gmpsec 0.48
+2e255m19 gmpxx 0.90
+2e256m189 fiat_solinas 0.06
+2e256m189 fiat_solinas 0.11
+2e256m189 fiat_solinas 0.15
+2e256m189 fiat_solinas 0.18
+2e256m189 fiat_montgomery 0.14
+2e256m189 gmpvar 0.34
+2e256m189 gmpsec 0.38
+2e256m189 gmpxx 0.87
+2e266m3 fiat_solinas 0.06
+2e266m3 fiat_solinas 0.10
+2e266m3 fiat_solinas 0.12
+2e266m3 fiat_solinas 0.15
+2e266m3 fiat_montgomery 0.18
+2e266m3 gmpvar 0.45
+2e266m3 gmpsec 0.66
+2e266m3 gmpxx 1.13
+2e285m9 fiat_solinas 0.06
+2e285m9 fiat_solinas 0.10
+2e285m9 fiat_solinas 0.15
+2e285m9 fiat_solinas 0.17
+2e285m9 fiat_montgomery 0.18
+2e285m9 gmpvar 0.43
+2e285m9 gmpsec 0.73
+2e285m9 gmpxx 0.97
+2e291m19 fiat_solinas 0.07
+2e291m19 fiat_solinas 0.10
+2e291m19 fiat_solinas 0.18
+2e291m19 fiat_montgomery 0.18
+2e291m19 gmpvar 0.42
+2e291m19 gmpsec 0.68
+2e291m19 gmpxx 1.00
+2e321m9 fiat_solinas 0.10
+2e321m9 fiat_solinas 0.12
+2e321m9 fiat_solinas 0.19
+2e321m9 fiat_montgomery 0.26
+2e321m9 gmpvar 0.54
+2e321m9 gmpsec 0.80
+2e321m9 gmpxx 1.18
+2e336m17 fiat_solinas 0.10
+2e336m17 fiat_solinas 0.15
+2e336m17 fiat_solinas 0.22
+2e336m17 fiat_solinas 0.23
+2e336m17 fiat_montgomery 0.27
+2e336m17 gmpvar 0.53
+2e336m17 gmpsec 0.80
+2e336m17 gmpxx 1.11
+2e336m3 fiat_solinas 0.09
+2e336m3 fiat_solinas 0.12
+2e336m3 fiat_solinas 0.20
+2e336m3 fiat_montgomery 0.27
+2e336m3 gmpvar 0.53
+2e336m3 gmpsec 0.86
+2e336m3 gmpxx 1.08
+2e338m15 fiat_solinas 0.10
+2e338m15 fiat_solinas 0.12
+2e338m15 fiat_solinas 0.20
+2e338m15 fiat_solinas 0.23
+2e338m15 fiat_montgomery 0.25
+2e338m15 gmpvar 0.54
+2e338m15 gmpsec 0.80
+2e338m15 gmpxx 1.06
+2e369m25 fiat_solinas 0.13
+2e369m25 fiat_solinas 0.15
+2e369m25 fiat_solinas 0.26
+2e369m25 fiat_solinas 0.31
+2e369m25 fiat_montgomery 0.26
+2e369m25 gmpvar 0.52
+2e369m25 gmpsec 0.79
+2e369m25 gmpxx 1.10
+2e379m19 fiat_solinas 0.12
+2e379m19 fiat_solinas 0.17
+2e379m19 fiat_solinas 0.27
+2e379m19 fiat_solinas 0.30
+2e379m19 fiat_montgomery 0.26
+2e379m19 gmpvar 0.55
+2e379m19 gmpsec 0.79
+2e379m19 gmpxx 1.07
+2e382m105 fiat_solinas 0.13
+2e382m105 fiat_solinas 0.15
+2e382m105 fiat_solinas 0.30
+2e382m105 fiat_solinas 0.34
+2e382m105 fiat_montgomery 0.25
+2e382m105 gmpvar 0.57
+2e382m105 gmpsec 0.92
+2e382m105 gmpxx 1.11
+2e383m421 fiat_solinas 0.13
+2e383m421 fiat_solinas 0.15
+2e383m421 fiat_solinas 0.32
+2e383m421 fiat_solinas 0.40
+2e383m421 fiat_montgomery 0.25
+2e383m421 gmpvar 0.51
+2e383m421 gmpsec 0.76
+2e383m421 gmpxx 1.06
+2e383m187 fiat_solinas 0.13
+2e383m187 fiat_solinas 0.16
+2e383m187 fiat_solinas 0.30
+2e383m187 fiat_solinas 0.34
+2e383m187 fiat_montgomery 0.28
+2e383m187 gmpvar 0.50
+2e383m187 gmpsec 0.75
+2e383m187 gmpxx 1.05
+2e383m31 fiat_solinas 0.13
+2e383m31 fiat_solinas 0.16
+2e383m31 fiat_solinas 0.30
+2e383m31 fiat_montgomery 0.26
+2e383m31 gmpvar 0.51
+2e383m31 gmpsec 0.75
+2e383m31 gmpxx 1.05
+2e384m317 fiat_solinas 0.13
+2e384m317 fiat_solinas 0.15
+2e384m317 fiat_solinas 0.32
+2e384m317 fiat_solinas 0.37
+2e384m317 fiat_montgomery 0.26
+2e384m317 gmpvar 0.48
+2e384m317 gmpsec 0.67
+2e384m317 gmpxx 1.00
+2e389m21 fiat_solinas 0.13
+2e389m21 fiat_solinas 0.16
+2e389m21 fiat_solinas 0.32
+2e389m21 gmpvar 0.60
+2e389m21 gmpsec 0.97
+2e389m21 gmpxx 1.22
+2e401m31 fiat_solinas 0.14
+2e401m31 fiat_solinas 0.15
+2e401m31 fiat_solinas 0.31
+2e401m31 fiat_solinas 0.33
+2e401m31 gmpvar 0.61
+2e401m31 gmpsec 0.97
+2e401m31 gmpxx 1.17
+2e413m21 fiat_solinas 0.16
+2e413m21 fiat_solinas 0.36
+2e413m21 gmpvar 0.62
+2e413m21 gmpsec 0.99
+2e413m21 gmpxx 1.22
+2e414m17 fiat_solinas 0.15
+2e414m17 fiat_solinas 0.18
+2e414m17 fiat_solinas 0.34
+2e414m17 gmpvar 0.60
+2e414m17 gmpsec 0.98
+2e414m17 gmpxx 1.21
+2e444m17 fiat_solinas 0.17
+2e444m17 fiat_solinas 0.19
+2e444m17 fiat_solinas 0.36
+2e444m17 gmpvar 0.60
+2e444m17 gmpsec 0.96
+2e444m17 gmpxx 1.20
+2e452m3 fiat_solinas 0.16
+2e452m3 fiat_solinas 0.19
+2e452m3 fiat_solinas 0.32
+2e452m3 fiat_solinas 0.38
+2e452m3 gmpvar 0.71
+2e452m3 gmpsec 1.24
+2e452m3 gmpxx 1.32
+2e468m17 fiat_solinas 0.16
+2e468m17 fiat_solinas 0.19
+2e468m17 fiat_solinas 0.38
+2e468m17 fiat_solinas 0.43
+2e468m17 gmpvar 0.71
+2e468m17 gmpsec 1.23
+2e468m17 gmpxx 1.29
+2e488m17 fiat_solinas 0.28
+2e488m17 fiat_solinas 0.19
+2e488m17 fiat_solinas 0.48
+2e488m17 gmpvar 0.70
+2e488m17 gmpsec 1.20
+2e488m17 gmpxx 1.28
+2e489m21 fiat_solinas 0.23
+2e489m21 fiat_solinas 0.20
+2e489m21 fiat_solinas 0.49
+2e489m21 gmpvar 0.69
+2e489m21 gmpsec 1.17
+2e489m21 gmpxx 1.27
+2e495m31 fiat_solinas 0.23
+2e495m31 fiat_solinas 0.19
+2e495m31 fiat_solinas 0.45
+2e495m31 fiat_solinas 0.50
+2e495m31 gmpvar 0.69
+2e495m31 gmpsec 1.17
+2e495m31 gmpxx 1.30
+2e511m481 fiat_solinas 0.25
+2e511m481 fiat_solinas 0.28
+2e511m481 gmpvar 0.66
+2e511m481 gmpsec 1.12
+2e511m481 gmpxx 1.24
+2e511m187 fiat_solinas 0.25
+2e511m187 fiat_solinas 0.28
+2e511m187 fiat_solinas 0.56
+2e511m187 gmpvar 0.66
+2e511m187 gmpsec 1.13
+2e511m187 gmpxx 1.21
+2e512m569 fiat_solinas 0.24
+2e512m569 fiat_solinas 0.28
+2e512m569 gmpvar 0.62
+2e512m569 gmpsec 0.95
+2e512m569 gmpxx 1.14
+2e521m1 fiat_solinas 0.25
+2e521m1 fiat_solinas 0.18
+2e521m1 fiat_solinas 0.36
+2e521m1 fiat_solinas 0.39
+2e521m1 gmpvar 0.81
+2e521m1 gmpsec 1.40
+2e521m1 gmpxx 1.44
+2e192m2e64m1 fiat_solinas 0.05
+2e192m2e64m1 fiat_solinas 0.07
+2e192m2e64m1 fiat_montgomery 0.07
+2e192m2e64m1 fiat_montgomery 0.26
+2e192m2e64m1 gmpvar 0.24
+2e192m2e64m1 gmpsec 0.31
+2e192m2e64m1 gmpxx 0.79
+2e216m2e108m1 fiat_solinas 0.04
+2e216m2e108m1 fiat_solinas 0.12
+2e216m2e108m1 fiat_solinas 0.08
+2e216m2e108m1 fiat_montgomery 0.12
+2e216m2e108m1 gmpvar 0.35
+2e216m2e108m1 gmpsec 0.51
+2e216m2e108m1 gmpxx 0.88
+2e322m2e161m1 fiat_solinas 0.07
+2e322m2e161m1 fiat_solinas 0.16
+2e322m2e161m1 fiat_solinas 0.23
+2e322m2e161m1 fiat_montgomery 0.27
+2e322m2e161m1 gmpvar 0.53
+2e322m2e161m1 gmpsec 0.83
+2e322m2e161m1 gmpxx 1.15
+2e416m2e208m1 fiat_solinas 0.14
+2e416m2e208m1 fiat_solinas 0.25
+2e416m2e208m1 fiat_solinas 0.33
+2e416m2e208m1 gmpvar 0.60
+2e416m2e208m1 gmpsec 0.98
+2e416m2e208m1 gmpxx 1.16
+2e448m2e224m1 fiat_solinas 0.18
+2e448m2e224m1 fiat_solinas 0.12
+2e448m2e224m1 fiat_solinas 0.30
+2e448m2e224m1 gmpvar 0.52
+2e448m2e224m1 gmpsec 0.79
+2e448m2e224m1 gmpxx 1.06
+2e450m2e225m1 fiat_solinas 0.18
+2e450m2e225m1 fiat_solinas 0.13
+2e450m2e225m1 gmpvar 0.74
+2e450m2e225m1 gmpsec 1.22
+2e450m2e225m1 gmpxx 1.34
+2e480m2e240m1 fiat_solinas 0.19
+2e480m2e240m1 fiat_solinas 0.13
+2e480m2e240m1 fiat_solinas 0.34
+2e480m2e240m1 gmpvar 0.71
+2e480m2e240m1 gmpsec 1.18
+2e480m2e240m1 gmpxx 1.28
+2e205m45x2e198m1 fiat_montgomery 0.14
+2e205m45x2e198m1 gmpvar 0.34
+2e205m45x2e198m1 gmpsec 0.51
+2e205m45x2e198m1 gmpxx 0.87
+2e224m2e96p1 fiat_montgomery 0.13
+2e224m2e96p1 gmpvar 0.35
+2e224m2e96p1 gmpsec 0.50
+2e224m2e96p1 gmpxx 0.88
+2e256m2e224p2e192p2e96m1 fiat_montgomery 0.11
+2e256m2e224p2e192p2e96m1 gmpvar 0.33
+2e256m2e224p2e192p2e96m1 gmpsec 0.38
+2e256m2e224p2e192p2e96m1 gmpxx 0.84
+2e256m2e32m977 fiat_solinas 0.10
+2e256m2e32m977 fiat_solinas 0.13
+2e256m2e32m977 fiat_solinas 0.19
+2e256m2e32m977 fiat_solinas 0.20
+2e256m2e32m977 fiat_montgomery 0.12
+2e256m2e32m977 gmpvar 0.34
+2e256m2e32m977 gmpsec 0.38
+2e256m2e32m977 gmpxx 0.87
+2e256m4294968273 fiat_solinas 0.16
+2e256m4294968273 fiat_solinas 0.14
+2e256m4294968273 fiat_montgomery 0.13
+2e256m4294968273 gmpvar 0.34
+2e256m4294968273 gmpsec 0.37
+2e256m4294968273 gmpxx 0.86
+2e384m2e128m2e96p2e32m1 fiat_montgomery 0.25
+2e384m2e128m2e96p2e32m1 gmpvar 0.47
+2e384m2e128m2e96p2e32m1 gmpsec 0.64
+2e384m2e128m2e96p2e32m1 gmpxx 0.98
+2e256m88x2e240m1 fiat_montgomery 0.11
+2e256m88x2e240m1 gmpvar 0.34
+2e256m88x2e240m1 gmpsec 0.39
+2e256m88x2e240m1 gmpxx 0.88
+2e254m127x2e240m1 fiat_montgomery 0.12
+2e254m127x2e240m1 gmpvar 0.35
+2e254m127x2e240m1 gmpsec 0.50
+2e254m127x2e240m1 gmpxx 0.92
+2e384m79x2e376m1 fiat_montgomery 0.23
+2e384m79x2e376m1 gmpvar 0.46
+2e384m79x2e376m1 gmpsec 0.62
+2e384m79x2e376m1 gmpxx 0.99
+2e384m5x2e368m1 fiat_montgomery 0.23
+2e384m5x2e368m1 gmpvar 0.46
+2e384m5x2e368m1 gmpsec 0.63
+2e384m5x2e368m1 gmpxx 0.99
+2e512m491x2e496m1 gmpvar 0.62
+2e512m491x2e496m1 gmpsec 0.99
+2e512m491x2e496m1 gmpxx 1.15
+2e510m290x2e496m1 gmpvar 0.70
+2e510m290x2e496m1 gmpsec 1.20
+2e510m290x2e496m1 gmpxx 1.28
diff --git a/measurements/tolatex.py b/measurements/tolatex.py
index 260038852..aba9bf2bb 100644
--- a/measurements/tolatex.py
+++ b/measurements/tolatex.py
@@ -5,53 +5,29 @@ import sys, math, re
USAGE = "USAGE: python tolatex.py [input file] {plot32, plot64, table32, table64}"
SETUPS = {
- "gmpvar32": "color=red,mark=o",
- "gmpxx32": "color=red,mark=x",
- "gmpsec32" : "color=red,mark=*",
- "gmpvar64": "color=red,mark=o",
- "gmpxx64": "color=red,mark=x",
- "gmpsec64" : "color=red,mark=*",
- "fiat_montgomery32": "color=blue,mark=triangle*",
- "fiat_montgomery64": "color=blue,mark=triangle*",
- "fiat_solinas32": "color=blue,mark=triangle",
- "fiat_solinas64": "color=blue,mark=triangle"
+ "gmpxx": "color=red,mark=x",
+ "gmpsec" : "color=red,mark=*",
+ "gmpvar": "color=red,mark=o",
+ "fiat_montgomery": "color=blue,mark=triangle*",
+ "fiat_solinas": "color=blue,mark=triangle",
}
# setups to combine and functions to combine them
COMBINE = [
- ("fiat_montgomery32", "fiat_solinas32", min),
- ("fiat_montgomery64", "fiat_solinas64", min)
+ ("fiat_montgomery", "fiat_solinas", min),
]
# setups to exclude
-EXCLUDE_32 = [
- "fiat_montgomery64",
- "fiat_solinas64",
- "gmpvar64",
- "gmpsec64",
- "gmpxx64",
- "gmpxx32"
- ]
-EXCLUDE_64 = [
- "fiat_montgomery32",
- "fiat_solinas32",
- "gmpvar32",
- "gmpsec32",
- "gmpxx64",
- "gmpxx32"
+EXCLUDE = [
+ "gmpxx"
]
LEGEND = {
- "fiat_montgomery32": "this paper",
- "fiat_montgomery64": "this paper",
- "fiat_solinas32": "this paper",
- "fiat_solinas64": "this paper",
- "gmpvar32": "GMP mpn API",
- "gmpxx32": "GMP C++ API",
- "gmpsec32" : "GMP mpn_sec API",
- "gmpvar64": "GMP mpn API",
- "gmpxx64": "GMP C++ API",
- "gmpsec64" : "GMP mpn_sec API"
+ "fiat_montgomery": "this paper",
+ "fiat_solinas": "this paper",
+ "gmpvar": "GMP mpn API",
+ "gmpxx": "GMP C++ API",
+ "gmpsec" : "GMP mpn_sec API"
}
class ParseException(Exception): pass
@@ -104,9 +80,7 @@ def parse_line(line):
def final_lines(bits):
out = []
for s in SETUPS:
- if (bits == 32 and s in EXCLUDE_32) or (bits == 64 and s in EXCLUDE_64):
- continue
- if any([x[1]==s for x in COMBINE]):
+ if (s in EXCLUDE) or any([x[1]==s for x in COMBINE]):
continue # in this case, the setup has been combined into some other one
out.append(s)
return out
@@ -168,14 +142,14 @@ def maketable(data, bits):
else:
out="""\\tablehead{%
\\hline
- & \\textbf{Our Code} & \\multicolumn{2}{c|}{\\textbf{GMP Code}} & \\\\
+ & \\multicolumn{2}{c|}{\\textbf{Our Code}} & \\multicolumn{2}{c|}{\\textbf{GMP Code}} & \\\\
\\cline{2-5}
- \\textbf{Prime} & \\textbf{Solinas} & \\textbf{const time} & \\textbf{var time} & \\textbf{Speedup} \\\\ \\hline}
+ \\textbf{Prime} & \\textbf{Solinas} & \\textbf{Mont.} & \\textbf{const time} & \\textbf{var time} & \\textbf{Speedup} \\\\ \\hline}
\\footnotesize
-\\begin{xtabular}{|l|p{0.8cm}|p{0.8cm}|p{0.8cm}|p{0.9cm}|}\n"""
+\\begin{xtabular}{|l|p{0.7cm}|p{0.7cm}|p{0.7cm}|p{0.7cm}|p{0.9cm}|}\n"""
- cols_64 = ["fiat_solinas64", "fiat_montgomery64", "gmpsec64", "gmpvar64", "gmpxx64"]
- cols_32 = ["fiat_solinas32", "gmpsec32", "gmpvar32"]
+ cols_64 = ["fiat_solinas", "fiat_montgomery", "gmpsec", "gmpvar", "gmpxx"]
+ cols_32 = ["fiat_solinas", "fiat_montgomery", "gmpsec", "gmpvar"]
cols = cols_64 if bits == 64 else cols_32
for p in sorted(data.keys()):
@@ -194,7 +168,7 @@ def maketable(data, bits):
else:
row.append("-")
if our_best != None and gmp_best != None:
- row.append(str(round(1 - our_best/gmp_best, 2)))
+ row.append(str(round(gmp_best/our_best, 2)))
else:
row.append("-")
out += ("\t" + " & ".join(row) + " \\\\ \n")