Talk:Installing GeneWeb 7 on a Raspberry Pi webserver

From GeneWeb
Jump to: navigation, search

Benchmark on Raspberry Pi 3 A+

Benchmarks can be made with

ocaml ./configure.ml --sosa-legacy
make bench

ocaml ./configure.ml --sosa-num
make clean bench

ocaml ./configure.ml --sosa-zarith
make clean bench

Results

legacy
Throughputs for "Name.lower" running for at least 1 CPU second:
Name.lower:  1.00 WALL ( 1.00 usr +  0.00 sys =  1.00 CPU) @ 164081.38/s (n=164116)
Throughputs for "Place.compare_places" running for at least 1 CPU second:
Place.compare_places:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 169437.85/s (n=177273)
Throughputs for "Mutil.contains" running for at least 1 CPU second:
Mutil.contains:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 813880.32/s (n=855481)
Throughputs for "Mutil.tr" running for at least 1 CPU second:
Mutil.tr:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 320536.88/s (n=336348)
Throughputs for "Mutil.unsafe_tr" running for at least 1 CPU second:
Mutil.unsafe_tr:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 433440.99/s (n=455071)
Throughputs for "Place.normalize" running for at least 1 CPU second:
Place.normalize:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 1139734.13/s (n=1197546)
Throughputs for "Sosa.branches" running for at least 1 CPU second:
Sosa.branches:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 6519.09/s (n=6838)
Throughputs for "Sosa.of_string" running for at least 1 CPU second:
Sosa.of_string:  1.06 WALL ( 1.06 usr +  0.00 sys =  1.06 CPU) @ 53801.92/s (n=56806)
Throughputs for "Sosa.to_string" running for at least 1 CPU second:
Sosa.to_string:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 17689.78/s (n=18565)
Throughputs for "Sosa.to_string_sep" running for at least 1 CPU second:
Sosa.to_string_sep:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 17606.76/s (n=18460)
Throughputs for "Sosa.gen" running for at least 1 CPU second:
Sosa.gen:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 6710.09/s (n=7049)

num
Throughputs for "Name.lower" running for at least 1 CPU second:
Name.lower:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 165748.91/s (n=174281)
Throughputs for "Place.compare_places" running for at least 1 CPU second:
Place.compare_places:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 168960.61/s (n=177349)
Throughputs for "Mutil.contains" running for at least 1 CPU second:
Mutil.contains:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 819657.28/s (n=862277)
Throughputs for "Mutil.tr" running for at least 1 CPU second:
Mutil.tr:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 317927.62/s (n=334058)
Throughputs for "Mutil.unsafe_tr" running for at least 1 CPU second:
Mutil.unsafe_tr:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 438803.45/s (n=461017)
Throughputs for "Place.normalize" running for at least 1 CPU second:
Place.normalize:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 1140419.25/s (n=1197942)
Throughputs for "Sosa.branches" running for at least 1 CPU second:
Sosa.branches:  1.11 WALL ( 1.11 usr +  0.00 sys =  1.11 CPU) @ 4541.87/s (n=5031)
Throughputs for "Sosa.of_string" running for at least 1 CPU second:
Sosa.of_string:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 29932.98/s (n=31419)
Throughputs for "Sosa.to_string" running for at least 1 CPU second:
Sosa.to_string:  1.04 WALL ( 1.04 usr +  0.00 sys =  1.04 CPU) @ 73608.12/s (n=76448)
Throughputs for "Sosa.to_string_sep" running for at least 1 CPU second:
Sosa.to_string_sep:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 12815.01/s (n=13468)
Throughputs for "Sosa.gen" running for at least 1 CPU second:
Sosa.gen:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 136747.16/s (n=143820)

zarith
Throughputs for "Name.lower" running for at least 1 CPU second:
Name.lower:  1.05 WALL ( 1.04 usr +  0.00 sys =  1.05 CPU) @ 164369.38/s (n=172052)
Throughputs for "Place.compare_places" running for at least 1 CPU second:
Place.compare_places:  1.05 WALL ( 1.04 usr +  0.01 sys =  1.05 CPU) @ 168629.86/s (n=177274)
Throughputs for "Mutil.contains" running for at least 1 CPU second:
Mutil.contains:  1.04 WALL ( 1.04 usr +  0.00 sys =  1.04 CPU) @ 816465.99/s (n=850075)
Throughputs for "Mutil.tr" running for at least 1 CPU second:
Mutil.tr:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 319808.13/s (n=335819)
Throughputs for "Mutil.unsafe_tr" running for at least 1 CPU second:
Mutil.unsafe_tr:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 435490.10/s (n=456354)
Throughputs for "Place.normalize" running for at least 1 CPU second:
Place.normalize:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 1140312.16/s (n=1200743)
Throughputs for "Sosa.branches" running for at least 1 CPU second:
Sosa.branches:  1.06 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 86679.95/s (n=91421)
Throughputs for "Sosa.of_string" running for at least 1 CPU second:
Sosa.of_string:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 502562.76/s (n=528398)
Throughputs for "Sosa.to_string" running for at least 1 CPU second:
Sosa.to_string:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 91040.74/s (n=95431)
Throughputs for "Sosa.to_string_sep" running for at least 1 CPU second:
Sosa.to_string_sep:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 72875.59/s (n=76616)
Throughputs for "Sosa.gen" running for at least 1 CPU second:
Sosa.gen:  1.05 WALL ( 1.05 usr +  0.00 sys =  1.05 CPU) @ 1643053.84/s (n=1726102)
<pre>

Zarith is clearly the best for nearly all benchmarks, si I switch the tutorial to use it. – ~~~~