# Acorn Archimedes A4000, 4MB RAM (2MB soldered, 2MB in expansion slots)
# using ARM 250 CPU @ 12 MHz running in wimpmode 44 (640*200, 2 colors, 60 Hz = 0.9 MB/s)
# screen blank time set to 30 seconds, it mostly ran with no video output.
# Ran from a 200 KB ramdisc, results being written there too
#
# Assembly implementation assembled by BBC BASIC V
# slow_version is fast_sieve() C function as compiled by gcc-2.95.3, while
# fast_version is hand tuned assembly
# Benchmarking on a 512 KB block with timer resolution of 10000 us
#    size  slow_version [us] fast_version [us]  # of inner iterations
30 384.4845185 275.6039469 194
33 422.2853087 298.0837474 214
36 459.5997034 329.8739806 236
39 544.2987683 389.3524038 272
42 583.3678114 422.0107572 293
46 672.94751 489.0085241 341
50 730.0989168 532.2656617 372
55 797.6071784 583.2502491 408
60 874.1442864 642.4433913 447
66 929.4512877 660.694289 493
72 1052.948255 746.0890491 564
79 1151.866152 830.1158302 620
86 1261.937244 907.2305593 675
94 1421.169504 1028.867506 739
103 1561.014263 1101.426308 810
113 1756.993007 1258.741259 922
124 1984.659636 1418.983701 1043
136 2171.664943 1540.847983 1144
149 2377.232142 1696.428572 1256
163 2596.153846 1862.980769 1374
179 2921.646746 2071.713147 1550
196 3199.426111 2281.205165 1697
215 3570.300158 2543.443917 1903
236 4003.496503 2849.65035 2135
259 4393.939394 3106.060605 2343
284 4885.177452 3465.553236 2618
312 5365.296804 3835.616439 2878
343 5895.522388 4203.980099 3166
377 6556.473829 4683.195593 3538
414 7207.207207 5135.135136 3887
455 8013.245033 5728.47682 4333
500 8901.0989 6373.626373 4830
550 9839.35743 6987.951807 5314
605 10933.33333 7777.777777 5920
665 12156.86275 8627.450981 6582
731 13423.91304 9619.565216 7318
804 14939.75904 10662.6506 8130
884 16600 11800 9027
972 18175.18248 12992.70073 9930
1069 20161.29033 14435.48387 11019
1175 22212.38938 15752.21239 12115
1292 24705.88235 17647.05882 13532
1421 27391.30434 19565.21739 14993
1563 30481.92771 21807.22891 16722
1719 33866.66667 24133.33333 18518
1890 37101.44928 26521.73913 20362
2079 40967.74194 29354.83871 22533
2286 45535.71429 32321.42857 24920
2514 50196.07845 36078.43137 27700
2765 55434.78262 39565.21739 30470
3041 61428.57144 44047.61905 33841
3345 68157.89474 48684.21054 37557
3679 75294.11765 53823.5294 41489
4046 83548.38712 59677.41934 45997
4450 91785.71429 66071.42856 50791
4895 102400 73200 56479
5384 113043.4782 80434.78262 62347
5922 124285.7143 88571.42859 68800
6514 137894.7368 97894.73682 76148
7165 152941.1765 107647.0588 84501
7881 168750 119375 93460
8669 186428.5714 131428.5714 103345
9535 206153.8461 146153.8461 114238
10488 228333.3334 160833.3334 126557
11536 251818.1818 178181.8182 139526
12689 279000 197000 154777
13957 307777.7777 216666.6666 170593
15352 340000 240000 188718
16887 375714.2856 265714.2858 208714
18575 415714.2856 294285.7142 230764
20432 458333.3333 325000 255084
22475 508333.3333 358333.3333 281895
24722 562000 396000 311885
27194 622000 438000 344990
29913 685000 482500 380992
32904 757500 535000 421202
36194 835000 587500 464439
39813 923333.3335 650000 513191
43794 1016666.667 720000 566950
48173 1126666.667 796666.6665 628090
52990 1246666.667 880000 693554
58289 1380000 970000 766432
64117 1520000 1075000 846017
70528 1675000 1190000 935231
77580 1855000 1310000 1032788
85338 2045000 1445000 1140281
93871 2265000 1600000 1260527
103258 2495000 1765000 1391242
113583 2750000 1960000 1537183
124941 3040000 2160000 1697028
137435 3360000 2370000 1874266
151178 3710000 2630000 2071840
166295 4100000 2900000 2287296
182924 4520000 3190000 2523467
201216 4990000 3530000 2786273
221337 5520000 3900000 3081256
243470 6070000 4300000 3395084
267817 6720000 4750000 3751057
294598 7410000 5250000 4141925
324057 8190000 5790000 4575862
356462 9040000 6390000 5049102
392108 9970000 7060000 5574029
431318 11010000 7780000 6148655
474449 12140000 8600000 6787609
521893 13410000 9490000 7495668
