42 lines
902 B
Python
42 lines
902 B
Python
from __future__ import print_function
|
|
import pyms
|
|
import random
|
|
import time
|
|
|
|
len = 50000001
|
|
forkdiv = 3
|
|
print("len: {}".format(len))
|
|
foo = [x for x in range(len)]
|
|
random.shuffle(foo)
|
|
print("linear")
|
|
start = time.time()
|
|
ret = pyms.mergesort(foo)
|
|
end = time.time()
|
|
if ret < 0:
|
|
print("error: {}".format(ret));
|
|
else:
|
|
for i, e in enumerate(foo):
|
|
if i != e:
|
|
print("ERROR in sort")
|
|
break
|
|
else:
|
|
print("sort OK")
|
|
diff = end - start
|
|
print("duration: {}".format(diff))
|
|
|
|
random.shuffle(foo)
|
|
print("parallel")
|
|
start = time.time()
|
|
ret = pyms.mergesortp(foo, forkdiv)
|
|
end = time.time()
|
|
if ret < 0:
|
|
print("error: {}".format(ret));
|
|
else:
|
|
for i, e in enumerate(foo):
|
|
if i != e:
|
|
print("ERROR in sort")
|
|
break
|
|
else:
|
|
print("sort OK")
|
|
diff = end - start
|
|
print("duration: {}".format(diff))
|