Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
why3
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
122
Issues
122
List
Boards
Labels
Service Desk
Milestones
Merge Requests
16
Merge Requests
16
Operations
Operations
Incidents
Packages & Registries
Packages & Registries
Container Registry
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Why3
why3
Commits
6caec053
Commit
6caec053
authored
Mar 22, 2017
by
Raphaël Rieu-Helft
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add tentative optimisation, fix graphs, beautify extraction
parent
63347968
Changes
10
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
1454 additions
and
1466 deletions
+1454
-1466
examples/in_progress/multiprecision/Makefile
examples/in_progress/multiprecision/Makefile
+6
-6
examples/in_progress/multiprecision/bench/gmpdiv
examples/in_progress/multiprecision/bench/gmpdiv
+226
-226
examples/in_progress/multiprecision/bench/gmpmul
examples/in_progress/multiprecision/bench/gmpmul
+225
-377
examples/in_progress/multiprecision/bench/why3div
examples/in_progress/multiprecision/bench/why3div
+227
-227
examples/in_progress/multiprecision/bench/why3mul
examples/in_progress/multiprecision/bench/why3mul
+228
-380
examples/in_progress/multiprecision/mp.drv
examples/in_progress/multiprecision/mp.drv
+13
-0
examples/in_progress/multiprecision/mp2.mlw
examples/in_progress/multiprecision/mp2.mlw
+307
-235
examples/in_progress/multiprecision/mulrelative
examples/in_progress/multiprecision/mulrelative
+155
-0
examples/in_progress/multiprecision/tests.c
examples/in_progress/multiprecision/tests.c
+4
-1
src/mlw/cprinter.ml
src/mlw/cprinter.ml
+63
-14
No files found.
examples/in_progress/multiprecision/Makefile
View file @
6caec053
...
...
@@ -2,17 +2,17 @@ all: why3 extract
why3
:
make
-C
../../..
extract
:
why3
why3 extract
-D
c
-
o
build mp2.mlw
-T
N
why3 extract
-D
c
-
D
mp.drv
-o
build
-L
.
-T
mp2.
N
tests
:
extract check-gmp
gcc
-O3
-Wall
-g
-std
=
gnu99 tests.c build/
mp2.mlw__
N.c
-I
$(GMP_DIR)
-lgmp
-o
tests
gcc
-O3
-Wall
-g
-std
=
gnu99 tests.c build/N.c
-I
$(GMP_DIR)
-lgmp
-o
tests
why3mulbench
:
extract check-gmp
gcc
-O3
-Wall
-g
-std
=
gnu99
-DTEST_WHY3
-DTEST_MUL
tests.c build/
mp2.mlw__
N.c
-I
$(GMP_DIR)
-lgmp
-o
why3mulbench
gcc
-O3
-Wall
-g
-std
=
gnu99
-DTEST_WHY3
-DTEST_MUL
tests.c build/N.c
-I
$(GMP_DIR)
-lgmp
-o
why3mulbench
why3divbench
:
extract check-gmp
gcc
-O3
-Wall
-g
-std
=
gnu99
-DTEST_WHY3
-DTEST_DIV
tests.c build/
mp2.mlw__
N.c
-I
$(GMP_DIR)
-lgmp
-o
why3divbench
gcc
-O3
-Wall
-g
-std
=
gnu99
-DTEST_WHY3
-DTEST_DIV
tests.c build/N.c
-I
$(GMP_DIR)
-lgmp
-o
why3divbench
gmpmulbench
:
extract check-gmp
gcc
-O3
-Wall
-g
-std
=
gnu99
-DTEST_GMP
-DTEST_MUL
tests.c build/
mp2.mlw__
N.c
-I
$(GMP_DIR)
-lgmp
-o
gmpmulbench
gcc
-O3
-Wall
-g
-std
=
gnu99
-DTEST_GMP
-DTEST_MUL
tests.c build/N.c
-I
$(GMP_DIR)
-lgmp
-o
gmpmulbench
gmpdivbench
:
extract check-gmp
gcc
-O3
-Wall
-g
-std
=
gnu99
-DTEST_GMP
-DTEST_DIV
tests.c build/
mp2.mlw__
N.c
-I
$(GMP_DIR)
-lgmp
-o
gmpdivbench
gcc
-O3
-Wall
-g
-std
=
gnu99
-DTEST_GMP
-DTEST_DIV
tests.c build/N.c
-I
$(GMP_DIR)
-lgmp
-o
gmpdivbench
alltests
:
tests why3mulbench why3divbench gmpmulbench gmpdivbench
...
...
examples/in_progress/multiprecision/bench/gmpdiv
View file @
6caec053
#an bn t(s)
2 1 0.0044
39
2 2 0.005
499
3 1 0.00577
5
3 2 0.007
117
3 3 0.004
297
4 1 0.0060
66
4 2 0.00827
1
4 3 0.01069
0
4 4 0.0047
66
5 1 0.006
80
2
5 2 0.0101
33
5 3 0.0124
42
5 4 0.012
7
94
5 5 0.0055
87
6 1 0.0077
20
6 2 0.01177
7
6 3 0.01394
2
6 4 0.0165
51
6 5 0.013
114
6 6 0.00593
3
7 1 0.0085
28
7 2 0.0131
44
7 3 0.01621
7
7 4 0.0168
97
7 5 0.01
8005
7 6 0.0135
68
7 7 0.00846
7
8 1 0.0092
86
8 2 0.014
930
8 3 0.018
620
8 4 0.01
8852
8 5 0.0
21474
8 6 0.0
1993
9
8 7 0.0
15468
8 8 0.0
07486
9 1 0.01
0351
9 2 0.0
1650
7
9 3 0.02
0792
9 4 0.0213
69
9 5 0.0221
22
9 6 0.024
109
9 7 0.0209
56
9 8 0.0163
26
9 9 0.009
614
10 1 0.01089
2
2 1 0.0044
42
2 2 0.005
566
3 1 0.00577
6
3 2 0.007
039
3 3 0.004
306
4 1 0.0060
37
4 2 0.00827
5
4 3 0.01069
6
4 4 0.0047
70
5 1 0.006
79
2
5 2 0.0101
40
5 3 0.0124
59
5 4 0.012
8
94
5 5 0.0055
98
6 1 0.0077
15
6 2 0.01177
9
6 3 0.01394
0
6 4 0.0165
49
6 5 0.013
069
6 6 0.00593
5
7 1 0.0085
10
7 2 0.0131
30
7 3 0.01621
2
7 4 0.0168
85
7 5 0.01
7999
7 6 0.0135
55
7 7 0.00846
3
8 1 0.0092
92
8 2 0.014
826
8 3 0.018
351
8 4 0.01
9234
8 5 0.0
30451
8 6 0.0
2875
9
8 7 0.0
22356
8 8 0.0
11177
9 1 0.01
1274
9 2 0.0
2073
7
9 3 0.02
9074
9 4 0.0213
76
9 5 0.0221
34
9 6 0.024
088
9 7 0.0209
75
9 8 0.0163
47
9 9 0.009
745
10 1 0.01089
1
10 2 0.018228
10 3 0.022
521
10 4 0.02382
4
10 5 0.0238
10
10 6 0.027
816
10 7 0.025
915
10 8 0.0225
76
10 9 0.017
192
10 10 0.0100
74
11 1 0.011
597
11 2 0.0199
24
11 3 0.02496
0
11 4 0.0267
83
11 5 0.02714
7
11 6 0.028
512
11 7 0.030
302
11 8 0.0283
09
11 9 0.0240
3
1
11 10 0.019
114
11 11 0.0102
8
9
12 1 0.0124
18
12 2 0.021
671
12 3 0.0272
20
12 4 0.0293
4
7
12 5 0.03064
8
12 6 0.031
233
12 7 0.034
341
12 8 0.033
002
12 9 0.030
142
12 10 0.0257
40
12 11 0.0204
80
12 12 0.011
960
13 1 0.0134
35
13 2 0.02333
2
13 3 0.0295
3
0
13 4 0.032
408
13 5 0.03382
9
13 6 0.034
417
13 7 0.035
314
13 8 0.037
599
13 9 0.0367
18
13 10 0.03261
9
13 11 0.0276
4
9
13 12 0.0220
41
13 13 0.013
410
14 1 0.0140
47
14 2 0.024
591
14 3 0.031
363
14 4 0.034
691
14 5 0.037
016
14 6 0.038
421
14 7 0.03872
8
14 8 0.043
094
14 9 0.04
1193
14 10 0.038
4
31
14 11 0.034
443
14 12 0.028
942
14 13 0.0218
16
14 14 0.0131
4
7
15 1 0.0149
10
15 2 0.0261
59
15 3 0.03
3954
15 4 0.03766
6
15 5 0.0403
21
15 6 0.0417
59
15 7 0.0423
85
15 8 0.043
955
15 9 0.046
10
9
15 10 0.043
921
15 11 0.04
228
0
15 12 0.036
454
15 13 0.0310
05
15 14 0.0238
47
15 15 0.014
091
16 1 0.0157
32
16 2 0.027
835
16 3 0.036
372
16 4 0.0403
86
16 5 0.0430
81
16 6 0.046
116
16 7 0.046
938
16 8 0.047
397
16 9 0.0514
99
16 10 0.050
05
2
16 11 0.047
154
16 12 0.043
103
16 13 0.038
821
16 14 0.0324
3
4
16 15 0.02
5040
16 16 0.0154
39
17 1 0.016
812
17 2 0.0
30016
17 3 0.038
207
17 4 0.04
2983
17 5 0.046
80
3
17 6 0.0495
75
17 7 0.051
213
17 8 0.0521
47
17 9 0.05
3032
17 10 0.05
6041
17 11 0.054
389
17 12 0.050
354
17 13 0.046
221
17 14 0.040
925
17 15 0.03
4794
17 16 0.025
879
17 17 0.0155
07
18 1 0.0172
02
18 2 0.0313
69
18 3 0.0403
94
18 4 0.046
321
18 5 0.0499
16
18 6 0.0532
1
8
18 7 0.05606
0
18 8 0.057
01
2
18 9 0.0567
80
18 10 0.06
2270
18 11 0.060
491
18 12 0.0576
50
18 13 0.053
612
18 14 0.04
9040
18 15 0.042
833
18 16 0.036
393
18 17 0.02794
7
18 18 0.017
035
19 1 0.0182
15
19 2 0.032
914
19 3 0.042
703
19 4 0.048
785
19 5 0.0530
7
8
19 6 0.0567
65
19 7 0.059
732
19 8 0.061
922
19 9 0.0623
43
19 10 0.064
348
19 11 0.066
9
24
19 12 0.065
165
19 13 0.061
209
19 14 0.055
828
19 15 0.051
18
9
19 16 0.046
103
19 17 0.0378
8
2
19 18 0.02
9081
19 19 0.0171
90
20 1 0.0189
92
20 2 0.034
321
20 3 0.045
068
20 4 0.051
448
20 5 0.05
7655
20 6 0.060
897
20 7 0.06
3999
20 8 0.066
394
20 9 0.067
761
20 10 0.0681
1
7
20 11 0.0735
9
6
20 12 0.0714
76
20 13 0.0692
13
20 14 0.0645
6
7
20 15 0.059
76
9
20 16 0.054
225
20 17 0.046
759
20 18 0.03
8948
20 19 0.0304
28
20 20 0.01
8993
10 3 0.022
600
10 4 0.02382
1
10 5 0.0238
31
10 6 0.027
682
10 7 0.025
862
10 8 0.0225
61
10 9 0.017
216
10 10 0.0100
69
11 1 0.011
608
11 2 0.0199
13
11 3 0.02496
6
11 4 0.0267
17
11 5 0.02714
4
11 6 0.028
310
11 7 0.030
268
11 8 0.0283
78
11 9 0.0240
2
1
11 10 0.019
205
11 11 0.0102
7
9
12 1 0.0124
21
12 2 0.021
713
12 3 0.0272
18
12 4 0.0293
6
7
12 5 0.03064
0
12 6 0.031
062
12 7 0.034
282
12 8 0.033
116
12 9 0.030
400
12 10 0.0257
68
12 11 0.0204
35
12 12 0.011
772
13 1 0.0134
41
13 2 0.02333
9
13 3 0.0295
6
0
13 4 0.032
331
13 5 0.03382
1
13 6 0.034
323
13 7 0.035
227
13 8 0.037
770
13 9 0.0367
71
13 10 0.03261
4
13 11 0.0276
6
9
13 12 0.0220
12
13 13 0.013
342
14 1 0.0140
92
14 2 0.024
670
14 3 0.031
517
14 4 0.034
877
14 5 0.037
158
14 6 0.038
593
14 7 0.03872
9
14 8 0.043
726
14 9 0.04
2057
14 10 0.038
9
31
14 11 0.034
890
14 12 0.028
791
14 13 0.0218
33
14 14 0.0131
7
7
15 1 0.0149
36
15 2 0.0261
74
15 3 0.03
4040
15 4 0.03766
1
15 5 0.0403
86
15 6 0.0417
16
15 7 0.0423
99
15 8 0.043
753
15 9 0.046
09
9
15 10 0.043
854
15 11 0.04
162
0
15 12 0.036
570
15 13 0.0310
80
15 14 0.0238
95
15 15 0.014
130
16 1 0.0157
06
16 2 0.027
638
16 3 0.036
247
16 4 0.0403
71
16 5 0.0430
40
16 6 0.046
073
16 7 0.046
862
16 8 0.047
543
16 9 0.0514
73
16 10 0.050
16
2
16 11 0.047
403
16 12 0.043
057
16 13 0.038
784
16 14 0.0324
4
4
16 15 0.02
4959
16 16 0.0154
48
17 1 0.016
696
17 2 0.0
29680
17 3 0.038
334
17 4 0.04
3621
17 5 0.046
68
3
17 6 0.0495
39
17 7 0.051
309
17 8 0.0521
18
17 9 0.05
2925
17 10 0.05
5956
17 11 0.054
558
17 12 0.050
665
17 13 0.046
766
17 14 0.040
460
17 15 0.03
5033
17 16 0.025
931
17 17 0.0155
21
18 1 0.0172
67
18 2 0.0313
22
18 3 0.0403
81
18 4 0.046
072
18 5 0.0499
40
18 6 0.0532
4
8
18 7 0.05606
4
18 8 0.057
32
2
18 9 0.0567
26
18 10 0.06
1928
18 11 0.060
397
18 12 0.0576
75
18 13 0.053
566
18 14 0.04
8545
18 15 0.042
997
18 16 0.036
479
18 17 0.02794
5
18 18 0.017
129
19 1 0.0182
37
19 2 0.032
873
19 3 0.042
678
19 4 0.048
612
19 5 0.0530
9
8
19 6 0.0567
72
19 7 0.059
667
19 8 0.061
728
19 9 0.0623
11
19 10 0.064
421
19 11 0.066
7
24
19 12 0.065
068
19 13 0.061
166
19 14 0.055
715
19 15 0.051
29
9
19 16 0.046
214
19 17 0.0378
7
2
19 18 0.02
8903
19 19 0.0171
79
20 1 0.0189
76
20 2 0.034
590
20 3 0.045
676
20 4 0.051
391
20 5 0.05
6411
20 6 0.060
904
20 7 0.06
4198
20 8 0.066
562
20 9 0.067
804
20 10 0.0681
4
7
20 11 0.0735
4
6
20 12 0.0714
54
20 13 0.0692
89
20 14 0.0645
3
7
20 15 0.059
88
9
20 16 0.054
516
20 17 0.046
838
20 18 0.03
9020
20 19 0.0304
95
20 20 0.01
9054
examples/in_progress/multiprecision/bench/gmpmul
View file @
6caec053
#an bn t(s)
2 1 0.000195
2 2 0.000346
2 3 0.000411
2 4 0.000519
2 5 0.000652
2 6 0.000806
2 7 0.000840
2 8 0.000953
2 9 0.001064
2 10 0.001149
2 11 0.001278
2 12 0.001465
2 13 0.001671
2 14 0.001792
2 15 0.001938
2 16 0.002064
2 17 0.002176
2 18 0.002292
2 19 0.002154
2 20 0.002543
3 1 0.000222
3 2 0.000387
3 3 0.000625
3 4 0.000742
3 5 0.000912
3 6 0.001074
3 7 0.001146
3 8 0.001450
3 9 0.001473
3 10 0.001632
3 11 0.001784
3 12 0.001932
3 13 0.002097
3 14 0.002278
3 15 0.002378
3 16 0.002576
3 17 0.002704
3 18 0.002891
3 19 0.003024
3 20 0.003192
4 1 0.000267
4 2 0.000482
4 3 0.000672
4 4 0.000920
4 5 0.001126
4 6 0.001280
4 7 0.001480
4 8 0.001700
4 9 0.001873
4 10 0.002076
4 11 0.002233
4 12 0.002479
4 13 0.002684
4 14 0.002852
4 15 0.003091
4 16 0.003274
4 17 0.003483
4 18 0.003648
4 19 0.003847
4 20 0.004046
5 1 0.000315
5 2 0.000570
5 3 0.000794
5 4 0.001082
5 5 0.001341
5 6 0.001530
5 7 0.001791
5 8 0.002031
5 9 0.002275
5 10 0.002532
5 11 0.002767
5 12 0.003019
5 13 0.003277
5 14 0.003512
5 15 0.003752
5 16 0.003988
5 17 0.004211
5 18 0.004443
5 19 0.004745
5 20 0.004994
6 1 0.000361
6 2 0.000636
6 3 0.000961
6 4 0.001223
6 5 0.001526
6 6 0.001846
6 7 0.002117
6 8 0.002432
6 9 0.002674
6 10 0.002998
6 11 0.003266
6 12 0.003554
6 13 0.003860
6 14 0.004077
6 15 0.004403
6 16 0.004705
6 17 0.005022
6 18 0.005264
6 19 0.005556
6 20 0.005894
7 1 0.000402
7 2 0.000739
7 3 0.001057
7 4 0.001481
7 5 0.001749
7 6 0.002094
7 7 0.002442
7 8 0.002768
7 9 0.003101
7 10 0.003430
7 11 0.003773
7 12 0.004076
7 13 0.004443
7 14 0.004770
7 15 0.005106
7 16 0.005449
7 17 0.005822
7 18 0.006136
7 19 0.006499
7 20 0.006792
8 1 0.000445
8 2 0.000830
8 3 0.001211
8 4 0.001654
8 5 0.001985
8 6 0.002384
8 7 0.002776
8 8 0.003178
8 9 0.003545
8 10 0.003889
8 11 0.004309
8 12 0.004674
8 13 0.005049
8 14 0.005440
8 15 0.005807
8 16 0.006239
8 17 0.006593
8 18 0.006942
8 19 0.007412
8 20 0.007702
2 1 0.000204
2 2 0.000347
3 1 0.000228
3 2 0.000386
3 3 0.000549
4 1 0.000274
4 2 0.000464
4 3 0.000677
4 4 0.000935
5 1 0.000310
5 2 0.000572
5 3 0.000806
5 4 0.001063
5 5 0.001495
6 1 0.000423
6 2 0.000766
6 3 0.001099
6 4 0.001484
6 5 0.001867
6 6 0.002169
7 1 0.000472
7 2 0.000867
7 3 0.001239