forked from RuedigerMoeller/serialization-benchmark
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathresult_fst2_kryo4.html
176 lines (176 loc) · 17.3 KB
/
result_fst2_kryo4.html
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
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
<html>
OS:Linux<br>
JVM:Oracle Corporation 1.8.0_121<br>
CPU:null os-arch:null<br>
Cores (incl HT):20<br>
<i>1.8.0_121-b13,Java HotSpot(TM) 64-Bit Server VM,Linux</i><br>
<br><h4>Test Class: FrequentPrimitives[]</h4>
A array[10] of objects with a typical distribution of primitve fields: 2 short Strings, 3 boolean, 6 ints, 2 long, one double.<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:4275,4144|3064,3651&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,7795&chxr=1,0,7795&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:864,708|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,864&chxr=1,0,864&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 4275 3064 7339 864
Kryo 4.0.0 4144 3651 7795 708
</pre><br><br>
<br><h4>Test Class: FrequentPrimitivesExternalizable[]</h4>
A class with a typical distribution of primitve fields: 2 short Strings, 3 boolean, 6 ints, 2 long, one double. But implementing Externalizable<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:3085,4189|2299,3741&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,7930&chxr=1,0,7930&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:882,722|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,882&chxr=1,0,882&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 3085 2299 5384 882
Kryo 4.0.0 4189 3741 7930 722
</pre><br><br>
<br><h4>Test Class: FrequentCollections</h4>
Measures serialization of most popular collection classes. (HashMap and an ArrayList filled with Integer and Long).<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:31829,36023|19599,29924&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,65947&chxr=1,0,65947&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:4672,4623|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,4672&chxr=1,0,4672&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 31829 19599 51428 4672
Kryo 4.0.0 36023 29924 65947 4623
</pre><br><br>
<br><h4>Test Class: LargeNativeIntArrays</h4>
measures performance serializing a large int array, a large long array and a large double array filled with random values. Note that random values destroy any value compression.<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:38975,70452|26773,62278&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,132730&chxr=1,0,132730&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:31217,34811|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,34811&chxr=1,0,34811&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 38975 26773 65748 31217
Kryo 4.0.0 70452 62278 132730 34811
</pre><br><br>
<br><h4>Test Class: LargeAndStrangeStrings</h4>
measures serialization of mid size to very large unicode Strings<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:43441,112512|22206,71291&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,183803&chxr=1,0,183803&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:20002,17716|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,20002&chxr=1,0,20002&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 43441 22206 65647 20002
Kryo 4.0.0 112512 71291 183803 17716
</pre><br><br>
<br><h4>Test Class: Primitives</h4>
Enums, EnumSets, Date, String, byte, short, int, .. Byte, Character; Short, Integer, .. <br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:2462,2941|1749,2064&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,5005&chxr=1,0,5005&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:302,315|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,315&chxr=1,0,315&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 2462 1749 4211 302
Kryo 4.0.0 2941 2064 5005 315
</pre><br><br>
<br><h4>Test Class: Arrays[]</h4>
Tests various arrays of int, Dimension, Date, Object. Nested arrays, multidimensional arrays.<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:67382,75393|51410,65961&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,141354&chxr=1,0,141354&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:15112,9022|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,15112&chxr=1,0,15112&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 67382 51410 118792 15112
Kryo 4.0.0 75393 65961 141354 9022
</pre><br><br>
<br><h4>Test Class: CommonCollections</h4>
In depth test of collections incl. collections of collections.<br> (ArrayList, ArrayDeque, ConcurrentLinkedQueue, Vector, TreeSet, LinkedList, TreeMap, ConcurrentHashMap, Hashtable, HashMap). Note: has been modified to workaround Kryo-specific Issue.<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:67213,137410|49842,66618&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,204028&chxr=1,0,204028&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:8345,8323|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,8345&chxr=1,0,8345&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 67213 49842 117055 8345
Kryo 4.0.0 137410 66618 204028 8323
</pre><br><br>
<br><h4>Test Class: Trader</h4>
Measures serialization of a typical 'Enterprise-Object' using Value-Classes instead of primitive tpyes.<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:82912,91537|89835,93124&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,184661&chxr=1,0,184661&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:6072,5919|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,6072&chxr=1,0,6072&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 82912 89835 172747 6072
Kryo 4.0.0 91537 93124 184661 5919
</pre><br><br>
<br><h4>Test Class: ManyClasses</h4>
Tests speed serializing a complex object graph of many different classes with few primitive fields.<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:7686,9567|5598,7256&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,16823&chxr=1,0,16823&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:1061,1220|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,1220&chxr=1,0,1220&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 7686 5598 13284 1061
Kryo 4.0.0 9567 7256 16823 1220
</pre><br><br>
<br><h4>Test Class: ExternalizableTest</h4>
Performance of Externalizable objects.<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:68595,90227|80105,94661&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,184888&chxr=1,0,184888&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:8971,4733|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,8971&chxr=1,0,8971&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 68595 80105 148700 8971
Kryo 4.0.0 90227 94661 184888 4733
</pre><br><br>
<br><h4>Test Class: BigObject</h4>
A bigger object graph consisting of some of the test objects at once<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:3942089,5200349|4191408,4758166&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,9958515&chxr=1,0,9958515&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:401976,321022|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,401976&chxr=1,0,401976&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 3942089 4191408 8133497 401976
Kryo 4.0.0 5200349 4758166 9958515 321022
</pre><br><br>
<br><h4>Test Class: HeavyNesting</h4>
Heavily nested Objects<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:88232,105220|102936,118814&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,224034&chxr=1,0,224034&chxt=y,x&chxl=0:|FST+2%7CKryo+4.0.0'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:5009,4748|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,5009&chxr=1,0,5009&chxt=y,x&chxl=0:|FST+2%7CKryo+4.0.0'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
Kryo 4.0.0 88232 102936 191168 5009
FST 2 105220 118814 224034 4748
</pre><br><br>
<br><h4>Test Class: MediaContent</h4>
measures serializing the cyclefree object structure used by one of the most known encoding/decoding tests<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:2263,2364|1804,2101&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,4465&chxr=1,0,4465&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:322,288|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,322&chxr=1,0,322&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 2263 1804 4067 322
Kryo 4.0.0 2364 2101 4465 288
</pre><br><br>
<br><h4>Test Class: SmallThing</h4>
only one int. benches pure init time<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:151,201|145,223&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,424&chxr=1,0,424&chxt=y,x&chxl=0:|FST+2%7CKryo+4.0.0'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:2,3|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,3&chxr=1,0,3&chxt=y,x&chxl=0:|FST+2%7CKryo+4.0.0'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
Kryo 4.0.0 151 145 296 2
FST 2 201 223 424 3
</pre><br><br>
<br><h4>Test Class: LargeFPArrays</h4>
measures performance serializing a large flaot and a large double array filled with random values. <br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:40114,158806|17752,22127&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,180933&chxr=1,0,180933&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:20812,20807|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,20812&chxr=1,0,20812&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 40114 17752 57866 20812
Kryo 4.0.0 158806 22127 180933 20807
</pre><br><br>
<br><h4>Test Class: BasicJSon</h4>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:2797,4015|2197,3787&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,7802&chxr=1,0,7802&chxt=y,x&chxl=0:|FST+2%7CKryo+4.0.0'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:225,420|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,420&chxr=1,0,420&chxt=y,x&chxl=0:|FST+2%7CKryo+4.0.0'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
Kryo 4.0.0 2797 2197 4994 225
FST 2 4015 3787 7802 420
</pre><br><br>
<br><h4>Test Class: JSonCollection</h4>
a map of String=>int and a list holding a pojo, some numbers and a string<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:1854,2548|1396,2039&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,4587&chxr=1,0,4587&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:200,234|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,234&chxr=1,0,234&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 1854 1396 3250 200
Kryo 4.0.0 2548 2039 4587 234
</pre><br><br>
<br><h4>Test Class: ShortRemoteCall</h4>
measures overhead of stream initialization+classname decoding. Only one very short object is serialized<br>
<br>
<b>speed read+write (ns)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:427,644|380,561&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,1205&chxr=1,0,1205&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<b>size (bytes)</b><br><img src='https://chart.googleapis.com/chart?cht=bhs&chs=600x56&chd=t:25,41|0,0&chco=5d99f9,4d89f9&chdlp=t&chbh=15&chds=0,41&chxr=1,0,41&chxt=y,x&chxl=0:|Kryo+4.0.0%7CFST+2'/><br>
<br><pre style='background-color:#ccc;'>lib read (ns) write (ns) total (ns) size (bytes)
FST 2 427 380 807 25
Kryo 4.0.0 644 561 1205 41
</pre><br><br>
</html>