性能評価
AZ-Prolog コンパイラと SWI-Prolog コンパイラの比較
<< AZ-Prolog V8.11 LINUX x64 BenchMark Ubuntu1404 on Core i7-4790k >>
<======== AZ-Prolog ==========>
ModuleName Verify Iterate C-Compile Byte-Compile Interpreter [SWI-Prolog]
-----------+-CBIO-+-------+----------+-------------+-------------+------------
boyer [Tttt] 100 0.796 (1) 1.892 (2.37) 4.970 (6.24) 2.506 (3.14)
browse [Tttt] 100 1.319 (1) 2.360 (1.78) 4.375 (3.31) 2.957 (2.24)
chat_parser [Tttt] 100 0.205 (1) 0.691 (3.37) 0.861 (4.20) 0.675 (3.29)
crypt [Tttt] 10000 0.428 (1) 1.227 (2.86) 2.295 (5.36) 2.865 (6.69)
deriv [Tttt] 100000 0.191 (1) 0.365 (1.91) 0.545 (2.85) 0.495 (2.59)
dynamic_uni [Tttt] 10000 0.306 (1) 0.817 (2.66) 1.037 (3.38) 0.827 (2.70)
fast_mu [Tttt] 10000 0.132 (1) 0.262 (1.98) 0.609 (4.61) 0.525 (3.97)
flatten [Tttt] 100000 0.763 (1) 1.881 (2.46) 4.106 (5.38) 3.083 (4.04)
itak [Tttt] 100 0.854 (1) 1.069 (1.25) 1.220 (1.42) 1.523 (1.78)
meta_qsort [Tttt] 5000 0.433 (1) 0.988 (2.28) 2.302 (5.31) 1.036 (2.39)
mu [Tttt] 10000 0.093 (1) 0.196 (2.10) 0.433 (4.65) 0.376 (4.04)
nreverse [Tttt] 100000 0.188 (1) 0.350 (1.86) 3.027 (16.1) 1.792 (9.53)
nreverse_bu [Tttt] 100000 0.191 (1) 0.279 (1.46) 0.444 (2.32) 1.821 (9.53)
poly [Tttt] 1000 0.679 (1) 1.330 (1.95) 2.389 (3.51) 2.170 (3.19)
primes [Tttt] 10000 0.105 (1) 0.306 (2.91) 0.815 (7.76) 0.777 (7.40)
prover [Tttt] 10000 0.124 (1) 0.273 (2.20) 0.603 (4.86) 0.379 (3.05)
qsort [Tttt] 100000 0.645 (1) 1.644 (2.54) 3.963 (6.14) 3.161 (4.90)
queens [Tttt] 10000 0.143 (1) 0.280 (1.95) 0.981 (6.86) 0.988 (6.90)
query [Tttt] 100000 0.496 (1) 1.700 (3.42) 2.231 (4.49) 3.374 (6.80)
reducer [Tttt] 500 0.258 (1) 0.741 (2.87) 1.135 (4.39) 0.805 (3.12)
sendmore [Tttt] 500 0.395 (1) 1.074 (2.71) 2.971 (7.52) 3.441 (8.71)
simple_anal [Tttt] 500 0.119 (1) 0.340 (2.85) 0.607 (5.10) 0.438 (3.68)
tak [Tttt] 1000 0.955 (1) 2.911 (3.04) 10.33 (10.8) 5.902 (6.18)
unify [Tttt] 20000 0.447 (1) 1.470 (3.28) 3.665 (8.19) 2.374 (5.31)
zebra [Tttt] 500 0.284 (1) 0.317 (1.11) 0.594 (2.09) 0.717 (2.52)
-----------+-CBIO-+-------+----------+-------------+-------------+------------
Total(Average) 10.54 (1) 24.76 (2.37) 56.50 (5.47) 45.00 (4.71)
Verify列の[Tttt] は各プログラムの結果がすべて等しいことを示しています。
()内の数字はAZ-Prologのフルコンパイルコードの実行時間を1としたときの倍率です。
【ベンチマークプログラムはこちらからダウンロード】
http://sicstus.sics.se/performance.html