-
Notifications
You must be signed in to change notification settings - Fork 0
/
encode.py
114 lines (95 loc) · 4.25 KB
/
encode.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
from twisted.spread import jelly
from twisted.spread import banana
from zlib import compress, decompress
import random
import time
#import cerealizer as cerealizer
#import Flatten
class timer:
def __init__(self):
self.s = 0
self.t = 0
def start(self):
self.s = time.clock()
def stop(self):
self.t = time.clock() - self.s
def time(self):
return self.t
def a(var):
t = timer()
t.start(); data = banana.encode(var); t.stop()
print "Enc B :", t.time(), len(data)
t.start(); banana.decode(data); t.stop()
print "Dec B :", t.time()
t.start(); data = compress(banana.encode(var),9); t.stop()
print "Enc B (zip9):", t.time(), len(data)
t.start(); banana.decode(decompress(data)); t.stop()
print "Dec B (zip9):", t.time()
t.start(); data = compress(banana.encode(var),4); t.stop()
print "Enc B (zip4):", t.time(), len(data)
t.start(); banana.decode(decompress(data)); t.stop()
print "Dec B (zip4):", t.time()
t.start(); data = compress(banana.encode(var),1); t.stop()
print "Enc B (zip1):", t.time(), len(data)
t.start(); banana.decode(decompress(data)); t.stop()
print "Dec B (zip1):", t.time()
t.start(); data = cerealizer.dumps(var); t.stop()
print "Enc C :", t.time(), len(data)
t.start(); cerealizer.loads(data); t.stop()
print "Dec C :", t.time()
t.start(); data = compress(cerealizer.dumps(var),9); t.stop()
print "Enc C (zip9):", t.time(), len(data)
t.start(); cerealizer.loads(decompress(data)); t.stop()
print "Dec C (zip9):", t.time()
t.start(); data = compress(cerealizer.dumps(var),4); t.stop()
print "Enc C (zip4):", t.time(), len(data)
t.start(); cerealizer.loads(decompress(data)); t.stop()
print "Dec C (zip4):", t.time()
t.start(); data = compress(cerealizer.dumps(var),1); t.stop()
print "Enc C (zip1):", t.time(), len(data)
t.start(); cerealizer.loads(decompress(data)); t.stop()
print "Dec C (zip1):", t.time()
t.start(); data = Flatten.serialize(var); t.stop()
print "Enc F :", t.time(), len(data)
t.start(); Flatten.unserialize(data); t.stop()
print "Dec F :", t.time()
t.start(); data = compress(Flatten.serialize(var),9); t.stop()
print "Enc F (zip9):", t.time(), len(data)
t.start(); Flatten.unserialize(decompress(data)); t.stop()
print "Dec F (zip9):", t.time()
t.start(); data = compress(Flatten.serialize(var),4); t.stop()
print "Enc F (zip4):", t.time(), len(data)
t.start(); Flatten.unserialize(decompress(data)); t.stop()
print "Dec F (zip4):", t.time()
t.start(); data = compress(Flatten.serialize(var),1); t.stop()
print "Enc F (zip1):", t.time(), len(data)
t.start(); Flatten.unserialize(decompress(data)); t.stop()
print "Dec F (zip1):", t.time()
t.start(); data = banana.encode(jelly.jelly(var)); t.stop()
print "Enc BJ :", t.time(), len(data)
t.start(); jelly.unjelly(banana.decode(data)); t.stop()
print "Dec BJ :", t.time()
t.start(); data = compress(banana.encode(jelly.jelly(var)),9); t.stop()
print "Enc BJ(zip9):", t.time(), len(data)
t.start(); jelly.unjelly(banana.decode(decompress(data))); t.stop()
print "Dec BJ(zip9):", t.time()
t.start(); data = compress(banana.encode(jelly.jelly(var)),4); t.stop()
print "Enc BJ(zip4):", t.time(), len(data)
t.start(); jelly.unjelly(banana.decode(decompress(data))); t.stop()
print "Dec BJ(zip4):", t.time()
t.start(); data = compress(banana.encode(jelly.jelly(var)),1); t.stop()
print "Enc BJ(zip1):", t.time(), len(data)
t.start(); jelly.unjelly(banana.decode(decompress(data))); t.stop()
print "Dec BJ(zip1):", t.time()
def generateData(num):
return [[name,\
[[random.random(),random.random()],\
[random.random(),random.random()],\
random.random(),\
random.random(),\
random.random(),\
random.randint(0,100),\
random.randint(0,30)], \
True, \
"BulletObject",\
["shoot"]] for name in [("b%i" % i) for i in range(num)]]