mirror of
https://github.com/myhdl/myhdl.git
synced 2025-01-24 21:52:56 +08:00
added test_modbv.py file
--HG-- branch : 0.8-dev
This commit is contained in:
commit
3c41dcbfbe
36
myhdl/test/benchmark/jitrun.sh
Normal file
36
myhdl/test/benchmark/jitrun.sh
Normal file
@ -0,0 +1,36 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo > jitstats.dat
|
||||
|
||||
tests="
|
||||
longdiv_9
|
||||
longdiv_10
|
||||
longdiv_11
|
||||
longdiv_12
|
||||
longdiv_13
|
||||
longdiv_14
|
||||
longdiv_15
|
||||
longdiv_16
|
||||
longdiv_17
|
||||
longdiv_18
|
||||
"
|
||||
|
||||
for test in $tests
|
||||
do
|
||||
echo Test: $test >> jitstats.dat
|
||||
echo ===== >> jitstats.dat
|
||||
|
||||
echo python >> jitstats.dat
|
||||
echo ------ >> jitstats.dat
|
||||
/usr/bin/time -o jitstats.dat -a -p python test_$test.py > ${test}_python.out
|
||||
echo >> jitstats.dat
|
||||
|
||||
echo pypy >> jitstats.dat
|
||||
echo ---- >> jitstats.dat
|
||||
/usr/bin/time -o jitstats.dat -a -p pypy test_$test.py > ${test}_pypy.out
|
||||
echo >> jitstats.dat
|
||||
|
||||
done
|
||||
|
||||
|
||||
|
141
myhdl/test/benchmark/jitstats.dat
Normal file
141
myhdl/test/benchmark/jitstats.dat
Normal file
@ -0,0 +1,141 @@
|
||||
|
||||
Test: longdiv_9
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 1.67
|
||||
user 1.65
|
||||
sys 0.02
|
||||
|
||||
pypy
|
||||
----
|
||||
real 2.20
|
||||
user 2.16
|
||||
sys 0.04
|
||||
|
||||
Test: longdiv_10
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 3.09
|
||||
user 3.06
|
||||
sys 0.02
|
||||
|
||||
pypy
|
||||
----
|
||||
real 2.42
|
||||
user 2.38
|
||||
sys 0.04
|
||||
|
||||
Test: longdiv_11
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 6.00
|
||||
user 5.99
|
||||
sys 0.01
|
||||
|
||||
pypy
|
||||
----
|
||||
real 2.97
|
||||
user 2.93
|
||||
sys 0.04
|
||||
|
||||
Test: longdiv_12
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 11.76
|
||||
user 11.73
|
||||
sys 0.02
|
||||
|
||||
pypy
|
||||
----
|
||||
real 3.72
|
||||
user 3.68
|
||||
sys 0.04
|
||||
|
||||
Test: longdiv_13
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 23.26
|
||||
user 23.24
|
||||
sys 0.02
|
||||
|
||||
pypy
|
||||
----
|
||||
real 5.08
|
||||
user 5.04
|
||||
sys 0.04
|
||||
|
||||
Test: longdiv_14
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 46.57
|
||||
user 46.54
|
||||
sys 0.02
|
||||
|
||||
pypy
|
||||
----
|
||||
real 7.88
|
||||
user 7.83
|
||||
sys 0.05
|
||||
|
||||
Test: longdiv_15
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 92.93
|
||||
user 92.89
|
||||
sys 0.02
|
||||
|
||||
pypy
|
||||
----
|
||||
real 13.13
|
||||
user 13.09
|
||||
sys 0.04
|
||||
|
||||
Test: longdiv_16
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 185.44
|
||||
user 185.38
|
||||
sys 0.02
|
||||
|
||||
pypy
|
||||
----
|
||||
real 24.04
|
||||
user 24.00
|
||||
sys 0.03
|
||||
|
||||
Test: longdiv_17
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 372.24
|
||||
user 371.67
|
||||
sys 0.48
|
||||
|
||||
pypy
|
||||
----
|
||||
real 44.44
|
||||
user 44.37
|
||||
sys 0.06
|
||||
|
||||
Test: longdiv_18
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 740.70
|
||||
user 740.53
|
||||
sys 0.01
|
||||
|
||||
pypy
|
||||
----
|
||||
real 86.28
|
||||
user 86.20
|
||||
sys 0.05
|
||||
|
@ -3,39 +3,39 @@ Test: timer
|
||||
=====
|
||||
pypy
|
||||
----
|
||||
real 83.31
|
||||
user 83.06
|
||||
sys 0.22
|
||||
real 83.20
|
||||
user 83.07
|
||||
sys 0.11
|
||||
|
||||
Test: lfsr24
|
||||
=====
|
||||
pypy
|
||||
----
|
||||
real 106.11
|
||||
user 105.87
|
||||
sys 0.22
|
||||
real 105.55
|
||||
user 105.29
|
||||
sys 0.23
|
||||
|
||||
Test: randgen
|
||||
=====
|
||||
pypy
|
||||
----
|
||||
real 91.75
|
||||
user 91.40
|
||||
sys 0.27
|
||||
real 90.01
|
||||
user 89.69
|
||||
sys 0.28
|
||||
|
||||
Test: longdiv
|
||||
=====
|
||||
pypy
|
||||
----
|
||||
real 86.42
|
||||
user 86.20
|
||||
sys 0.19
|
||||
real 87.03
|
||||
user 86.78
|
||||
sys 0.22
|
||||
|
||||
Test: findmax
|
||||
=====
|
||||
pypy
|
||||
----
|
||||
real 111.33
|
||||
user 111.26
|
||||
sys 0.04
|
||||
real 110.39
|
||||
user 110.34
|
||||
sys 0.02
|
||||
|
||||
|
@ -3,189 +3,189 @@ Test: timer
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 905.54
|
||||
user 903.39
|
||||
sys 1.98
|
||||
real 913.29
|
||||
user 911.06
|
||||
sys 2.06
|
||||
|
||||
pypy
|
||||
----
|
||||
real 82.93
|
||||
user 82.76
|
||||
sys 0.15
|
||||
real 84.88
|
||||
user 84.70
|
||||
sys 0.05
|
||||
|
||||
icarus
|
||||
------
|
||||
real 108.08
|
||||
user 107.88
|
||||
sys 0.19
|
||||
real 105.94
|
||||
user 105.92
|
||||
sys 0.01
|
||||
|
||||
ghdl
|
||||
----
|
||||
real 144.44
|
||||
user 144.42
|
||||
real 146.17
|
||||
user 146.16
|
||||
sys 0.00
|
||||
|
||||
vlog
|
||||
----
|
||||
real 256.64
|
||||
user 102.02
|
||||
sys 154.35
|
||||
real 259.54
|
||||
user 103.73
|
||||
sys 155.48
|
||||
|
||||
vcom
|
||||
----
|
||||
real 218.84
|
||||
user 106.63
|
||||
sys 111.95
|
||||
real 219.22
|
||||
user 106.55
|
||||
sys 112.40
|
||||
|
||||
Test: lfsr24
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 1290.05
|
||||
user 1287.20
|
||||
sys 2.57
|
||||
real 1293.61
|
||||
user 1293.11
|
||||
sys 0.20
|
||||
|
||||
pypy
|
||||
----
|
||||
real 106.25
|
||||
user 105.94
|
||||
sys 0.28
|
||||
real 104.22
|
||||
user 103.96
|
||||
sys 0.22
|
||||
|
||||
icarus
|
||||
------
|
||||
real 78.11
|
||||
user 77.95
|
||||
sys 0.15
|
||||
real 78.74
|
||||
user 78.60
|
||||
sys 0.13
|
||||
|
||||
ghdl
|
||||
----
|
||||
real 71.12
|
||||
user 71.11
|
||||
real 71.05
|
||||
user 71.04
|
||||
sys 0.00
|
||||
|
||||
vlog
|
||||
----
|
||||
real 259.21
|
||||
user 103.73
|
||||
sys 155.22
|
||||
real 266.61
|
||||
user 107.16
|
||||
sys 159.22
|
||||
|
||||
vcom
|
||||
----
|
||||
real 242.80
|
||||
user 111.83
|
||||
sys 130.73
|
||||
real 239.78
|
||||
user 110.52
|
||||
sys 129.00
|
||||
|
||||
Test: randgen
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 751.76
|
||||
user 750.15
|
||||
sys 1.46
|
||||
real 746.35
|
||||
user 744.96
|
||||
sys 1.23
|
||||
|
||||
pypy
|
||||
----
|
||||
real 90.40
|
||||
user 90.22
|
||||
sys 0.08
|
||||
real 91.31
|
||||
user 91.16
|
||||
sys 0.11
|
||||
|
||||
icarus
|
||||
------
|
||||
real 192.20
|
||||
user 191.80
|
||||
sys 0.37
|
||||
real 197.10
|
||||
user 196.65
|
||||
sys 0.42
|
||||
|
||||
ghdl
|
||||
----
|
||||
real 33.69
|
||||
user 31.50
|
||||
sys 2.18
|
||||
real 33.68
|
||||
user 31.14
|
||||
sys 2.54
|
||||
|
||||
vlog
|
||||
----
|
||||
real 75.55
|
||||
user 33.20
|
||||
sys 41.16
|
||||
real 75.67
|
||||
user 33.09
|
||||
sys 41.38
|
||||
|
||||
vcom
|
||||
----
|
||||
real 65.78
|
||||
user 34.45
|
||||
sys 30.27
|
||||
real 66.79
|
||||
user 34.65
|
||||
sys 30.76
|
||||
|
||||
Test: longdiv
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 739.29
|
||||
user 738.75
|
||||
sys 0.38
|
||||
real 735.22
|
||||
user 733.72
|
||||
sys 1.33
|
||||
|
||||
pypy
|
||||
----
|
||||
real 87.68
|
||||
user 87.58
|
||||
sys 0.06
|
||||
real 86.52
|
||||
user 86.24
|
||||
sys 0.24
|
||||
|
||||
icarus
|
||||
------
|
||||
real 43.48
|
||||
user 43.47
|
||||
sys 0.00
|
||||
real 43.17
|
||||
user 43.07
|
||||
sys 0.10
|
||||
|
||||
ghdl
|
||||
----
|
||||
real 223.85
|
||||
user 223.82
|
||||
real 223.93
|
||||
user 223.90
|
||||
sys 0.00
|
||||
|
||||
vlog
|
||||
----
|
||||
real 96.66
|
||||
user 38.42
|
||||
sys 57.96
|
||||
real 95.87
|
||||
user 38.53
|
||||
sys 57.09
|
||||
|
||||
vcom
|
||||
----
|
||||
real 99.33
|
||||
user 48.54
|
||||
sys 50.53
|
||||
real 97.94
|
||||
user 47.09
|
||||
sys 50.59
|
||||
|
||||
Test: findmax
|
||||
=====
|
||||
python
|
||||
------
|
||||
real 677.82
|
||||
user 676.32
|
||||
sys 1.35
|
||||
real 678.97
|
||||
user 677.54
|
||||
sys 1.28
|
||||
|
||||
pypy
|
||||
----
|
||||
real 114.69
|
||||
user 114.37
|
||||
sys 0.28
|
||||
real 111.89
|
||||
user 111.83
|
||||
sys 0.02
|
||||
|
||||
icarus
|
||||
------
|
||||
real 55.89
|
||||
user 55.88
|
||||
sys 0.00
|
||||
real 55.85
|
||||
user 55.81
|
||||
sys 0.03
|
||||
|
||||
ghdl
|
||||
----
|
||||
real 2258.62
|
||||
user 2258.20
|
||||
real 2256.12
|
||||
user 2255.71
|
||||
sys 0.01
|
||||
|
||||
vlog
|
||||
----
|
||||
real 20.79
|
||||
user 11.84
|
||||
sys 8.69
|
||||
user 11.72
|
||||
sys 8.80
|
||||
|
||||
vcom
|
||||
----
|
||||
real 37.98
|
||||
user 24.00
|
||||
sys 13.60
|
||||
real 36.92
|
||||
user 23.30
|
||||
sys 13.18
|
||||
|
||||
|
@ -4,7 +4,7 @@ from glibc_random import glibc_random
|
||||
|
||||
from long_divider import long_divider
|
||||
|
||||
def test_longdiv():
|
||||
def test_longdiv(nrvectors=2**18):
|
||||
quotient = Signal(intbv(0)[22:])
|
||||
ready = Signal(bool())
|
||||
dividend = Signal(intbv(0)[38:])
|
||||
@ -50,7 +50,7 @@ def test_longdiv():
|
||||
start.next = 0
|
||||
yield clock.negedge
|
||||
random_word[:] = 94
|
||||
for i in range(2**18):
|
||||
for i in range(nrvectors):
|
||||
yield clock.negedge
|
||||
random_word[:] = glibc_random(random_word)
|
||||
p[:] = random_word[16:]
|
||||
|
8
myhdl/test/benchmark/test_longdiv_10.py
Normal file
8
myhdl/test/benchmark/test_longdiv_10.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**10))
|
||||
sim.run()
|
||||
|
8
myhdl/test/benchmark/test_longdiv_11.py
Normal file
8
myhdl/test/benchmark/test_longdiv_11.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**11))
|
||||
sim.run()
|
||||
|
8
myhdl/test/benchmark/test_longdiv_12.py
Normal file
8
myhdl/test/benchmark/test_longdiv_12.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**12))
|
||||
sim.run()
|
||||
|
8
myhdl/test/benchmark/test_longdiv_13.py
Normal file
8
myhdl/test/benchmark/test_longdiv_13.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**13))
|
||||
sim.run()
|
||||
|
8
myhdl/test/benchmark/test_longdiv_14.py
Normal file
8
myhdl/test/benchmark/test_longdiv_14.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**14))
|
||||
sim.run()
|
||||
|
8
myhdl/test/benchmark/test_longdiv_15.py
Normal file
8
myhdl/test/benchmark/test_longdiv_15.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**15))
|
||||
sim.run()
|
||||
|
8
myhdl/test/benchmark/test_longdiv_16.py
Normal file
8
myhdl/test/benchmark/test_longdiv_16.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**16))
|
||||
sim.run()
|
||||
|
8
myhdl/test/benchmark/test_longdiv_17.py
Normal file
8
myhdl/test/benchmark/test_longdiv_17.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**17))
|
||||
sim.run()
|
||||
|
8
myhdl/test/benchmark/test_longdiv_18.py
Normal file
8
myhdl/test/benchmark/test_longdiv_18.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**18))
|
||||
sim.run()
|
||||
|
8
myhdl/test/benchmark/test_longdiv_9.py
Normal file
8
myhdl/test/benchmark/test_longdiv_9.py
Normal file
@ -0,0 +1,8 @@
|
||||
from myhdl import *
|
||||
|
||||
from test_longdiv import test_longdiv
|
||||
|
||||
if __name__ == '__main__':
|
||||
sim = Simulation(test_longdiv(nrvectors=2**9))
|
||||
sim.run()
|
||||
|
Loading…
x
Reference in New Issue
Block a user