xref: /aosp_15_r20/external/protobuf/docs/performance.md (revision 1b3f573f81763fcece89efc2b6a5209149e44ab8)
1*1b3f573fSAndroid Build Coastguard Worker# Protobuf Performance
2*1b3f573fSAndroid Build Coastguard WorkerThe following benchmark test results were produced on a workstation utilizing an Intel® Xeon® Processor E5-2630 with 32GB of RAM.
3*1b3f573fSAndroid Build Coastguard Worker
4*1b3f573fSAndroid Build Coastguard WorkerThis table contains the results of three separate languages:
5*1b3f573fSAndroid Build Coastguard Worker
6*1b3f573fSAndroid Build Coastguard Worker* **C++** - For C++, there are three parsing methods:
7*1b3f573fSAndroid Build Coastguard Worker	* **new** - This is for using a new operator for creating a message instance.
8*1b3f573fSAndroid Build Coastguard Worker    * **new arena** - This is for using arena for creating a new message instance.
9*1b3f573fSAndroid Build Coastguard Worker    * **reuse** - This is for reusing the same message instance for parsing.
10*1b3f573fSAndroid Build Coastguard Worker* **Java** - For Java, there are three parsing/serialization methods:
11*1b3f573fSAndroid Build Coastguard Worker	* **byte[]** - This is for parsing from a Byte Array.
12*1b3f573fSAndroid Build Coastguard Worker    * **ByteString** - This is for parsing from a
13*1b3f573fSAndroid Build Coastguard Worker    	com.google.protobuf.ByteString.
14*1b3f573fSAndroid Build Coastguard Worker    * **InputStream** - This is for parsing from an InputStream.
15*1b3f573fSAndroid Build Coastguard Worker* **Python** - For Python, there are three types of Python protobuf for testing:
16*1b3f573fSAndroid Build Coastguard Worker	* **C++-generated-code** - This is for using C++ generated code of the
17*1b3f573fSAndroid Build Coastguard Worker    	proto file as a dynamic linked library.
18*1b3f573fSAndroid Build Coastguard Worker	* **C++-reflection** - This is for using C++ reflection, for which there's no
19*1b3f573fSAndroid Build Coastguard Worker    	generated code, but still using C++ protobuf library as a dynamic linked
20*1b3f573fSAndroid Build Coastguard Worker        library.
21*1b3f573fSAndroid Build Coastguard Worker	* **pure-Python** - This is for the pure version of Python, which does not link with
22*1b3f573fSAndroid Build Coastguard Worker    	any C++ protobuf library.
23*1b3f573fSAndroid Build Coastguard Worker
24*1b3f573fSAndroid Build Coastguard Worker## Parsing performance
25*1b3f573fSAndroid Build Coastguard Worker
26*1b3f573fSAndroid Build Coastguard Worker<table>
27*1b3f573fSAndroid Build Coastguard Worker<tbody><tr>
28*1b3f573fSAndroid Build Coastguard Worker<th rowspan="2"> </th>
29*1b3f573fSAndroid Build Coastguard Worker<th colspan="3" rowspan="1">C++</th>
30*1b3f573fSAndroid Build Coastguard Worker<th colspan="3" rowspan="1">C++ with tcmalloc</th>
31*1b3f573fSAndroid Build Coastguard Worker<th colspan="3" rowspan="1">java</th>
32*1b3f573fSAndroid Build Coastguard Worker<th colspan="3" rowspan="1">python</th>
33*1b3f573fSAndroid Build Coastguard Worker</tr>
34*1b3f573fSAndroid Build Coastguard Worker<tr>
35*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">new</th>
36*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">new arena</th>
37*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">reuse</th>
38*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">new</th>
39*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">new arena</th>
40*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">reuse</th>
41*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">byte[]</th>
42*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">ByteString</th>
43*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">InputStream</th>
44*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">C++-generated-code</th>
45*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">C++-reflection</th>
46*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">pure-Python</th>
47*1b3f573fSAndroid Build Coastguard Worker</tr>
48*1b3f573fSAndroid Build Coastguard Worker<tr>
49*1b3f573fSAndroid Build Coastguard Worker<td>google_message1_proto2</td>
50*1b3f573fSAndroid Build Coastguard Worker<td>368.717MB/s</td>
51*1b3f573fSAndroid Build Coastguard Worker<td>261.847MB/s</td>
52*1b3f573fSAndroid Build Coastguard Worker<td>799.403MB/s</td>
53*1b3f573fSAndroid Build Coastguard Worker<td>645.183MB/s</td>
54*1b3f573fSAndroid Build Coastguard Worker<td>441.023MB/s</td>
55*1b3f573fSAndroid Build Coastguard Worker<td>1.122GB/s</td>
56*1b3f573fSAndroid Build Coastguard Worker<td>425.437MB/s</td>
57*1b3f573fSAndroid Build Coastguard Worker<td>425.937MB/s</td>
58*1b3f573fSAndroid Build Coastguard Worker<td>251.018MB/s</td>
59*1b3f573fSAndroid Build Coastguard Worker<td>82.8314MB/s</td>
60*1b3f573fSAndroid Build Coastguard Worker<td>47.6763MB/s</td>
61*1b3f573fSAndroid Build Coastguard Worker<td>3.76299MB/s</td>
62*1b3f573fSAndroid Build Coastguard Worker</tr>
63*1b3f573fSAndroid Build Coastguard Worker<tr>
64*1b3f573fSAndroid Build Coastguard Worker<td>google_message1_proto3</td>
65*1b3f573fSAndroid Build Coastguard Worker<td>294.517MB/s</td>
66*1b3f573fSAndroid Build Coastguard Worker<td>229.116MB/s</td>
67*1b3f573fSAndroid Build Coastguard Worker<td>469.982MB/s</td>
68*1b3f573fSAndroid Build Coastguard Worker<td>434.510MB/s</td>
69*1b3f573fSAndroid Build Coastguard Worker<td>394.701MB/s</td>
70*1b3f573fSAndroid Build Coastguard Worker<td>591.931MB/s</td>
71*1b3f573fSAndroid Build Coastguard Worker<td>357.597MB/s</td>
72*1b3f573fSAndroid Build Coastguard Worker<td>378.568MB/s</td>
73*1b3f573fSAndroid Build Coastguard Worker<td>221.676MB/s</td>
74*1b3f573fSAndroid Build Coastguard Worker<td>82.0498MB/s</td>
75*1b3f573fSAndroid Build Coastguard Worker<td>39.9467MB/s</td>
76*1b3f573fSAndroid Build Coastguard Worker<td>3.77751MB/s</td>
77*1b3f573fSAndroid Build Coastguard Worker</tr>
78*1b3f573fSAndroid Build Coastguard Worker<tr>
79*1b3f573fSAndroid Build Coastguard Worker<td>google_message2</td>
80*1b3f573fSAndroid Build Coastguard Worker<td>277.242MB/s</td>
81*1b3f573fSAndroid Build Coastguard Worker<td>347.611MB/s</td>
82*1b3f573fSAndroid Build Coastguard Worker<td>793.67MB/s</td>
83*1b3f573fSAndroid Build Coastguard Worker<td>503.721MB/s</td>
84*1b3f573fSAndroid Build Coastguard Worker<td>596.333MB/s</td>
85*1b3f573fSAndroid Build Coastguard Worker<td>922.533MB/s</td>
86*1b3f573fSAndroid Build Coastguard Worker<td>416.778MB/s</td>
87*1b3f573fSAndroid Build Coastguard Worker<td>419.543MB/s</td>
88*1b3f573fSAndroid Build Coastguard Worker<td>367.145MB/s</td>
89*1b3f573fSAndroid Build Coastguard Worker<td>241.46MB/s</td>
90*1b3f573fSAndroid Build Coastguard Worker<td>71.5723MB/s</td>
91*1b3f573fSAndroid Build Coastguard Worker<td>2.73538MB/s</td>
92*1b3f573fSAndroid Build Coastguard Worker</tr>
93*1b3f573fSAndroid Build Coastguard Worker<tr>
94*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_1</td>
95*1b3f573fSAndroid Build Coastguard Worker<td>213.478MB/s</td>
96*1b3f573fSAndroid Build Coastguard Worker<td>291.58MB/s</td>
97*1b3f573fSAndroid Build Coastguard Worker<td>543.398MB/s</td>
98*1b3f573fSAndroid Build Coastguard Worker<td>539.704MB/s</td>
99*1b3f573fSAndroid Build Coastguard Worker<td>717.300MB/s</td>
100*1b3f573fSAndroid Build Coastguard Worker<td>927.333MB/s</td>
101*1b3f573fSAndroid Build Coastguard Worker<td>684.241MB/s</td>
102*1b3f573fSAndroid Build Coastguard Worker<td>704.47MB/s</td>
103*1b3f573fSAndroid Build Coastguard Worker<td>648.624MB/s</td>
104*1b3f573fSAndroid Build Coastguard Worker<td>209.036MB/s</td>
105*1b3f573fSAndroid Build Coastguard Worker<td>142.356MB/s</td>
106*1b3f573fSAndroid Build Coastguard Worker<td>15.3324MB/s</td>
107*1b3f573fSAndroid Build Coastguard Worker</tr>
108*1b3f573fSAndroid Build Coastguard Worker<tr>
109*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_2</td>
110*1b3f573fSAndroid Build Coastguard Worker<td>672.685MB/s</td>
111*1b3f573fSAndroid Build Coastguard Worker<td>802.767MB/s</td>
112*1b3f573fSAndroid Build Coastguard Worker<td>1.21505GB/s</td>
113*1b3f573fSAndroid Build Coastguard Worker<td>985.790MB/s</td>
114*1b3f573fSAndroid Build Coastguard Worker<td>1.136GB/s</td>
115*1b3f573fSAndroid Build Coastguard Worker<td>1.367GB/s</td>
116*1b3f573fSAndroid Build Coastguard Worker<td>1.54439GB/s</td>
117*1b3f573fSAndroid Build Coastguard Worker<td>1.60603GB/s</td>
118*1b3f573fSAndroid Build Coastguard Worker<td>1.33443GB/s</td>
119*1b3f573fSAndroid Build Coastguard Worker<td>573.835MB/s</td>
120*1b3f573fSAndroid Build Coastguard Worker<td>314.33MB/s</td>
121*1b3f573fSAndroid Build Coastguard Worker<td>15.0169MB/s</td>
122*1b3f573fSAndroid Build Coastguard Worker</tr>
123*1b3f573fSAndroid Build Coastguard Worker<tr>
124*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_3</td>
125*1b3f573fSAndroid Build Coastguard Worker<td>207.681MB/s</td>
126*1b3f573fSAndroid Build Coastguard Worker<td>140.591MB/s</td>
127*1b3f573fSAndroid Build Coastguard Worker<td>535.181MB/s</td>
128*1b3f573fSAndroid Build Coastguard Worker<td>369.743MB/s</td>
129*1b3f573fSAndroid Build Coastguard Worker<td>262.301MB/s</td>
130*1b3f573fSAndroid Build Coastguard Worker<td>556.644MB/s</td>
131*1b3f573fSAndroid Build Coastguard Worker<td>279.385MB/s</td>
132*1b3f573fSAndroid Build Coastguard Worker<td>304.853MB/s</td>
133*1b3f573fSAndroid Build Coastguard Worker<td>107.575MB/s</td>
134*1b3f573fSAndroid Build Coastguard Worker<td>32.248MB/s</td>
135*1b3f573fSAndroid Build Coastguard Worker<td>26.1431MB/s</td>
136*1b3f573fSAndroid Build Coastguard Worker<td>2.63541MB/s</td>
137*1b3f573fSAndroid Build Coastguard Worker</tr>
138*1b3f573fSAndroid Build Coastguard Worker<tr>
139*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_4</td>
140*1b3f573fSAndroid Build Coastguard Worker<td>7.96091GB/s</td>
141*1b3f573fSAndroid Build Coastguard Worker<td>7.10024GB/s</td>
142*1b3f573fSAndroid Build Coastguard Worker<td>9.3013GB/s</td>
143*1b3f573fSAndroid Build Coastguard Worker<td>8.518GB/s</td>
144*1b3f573fSAndroid Build Coastguard Worker<td>8.171GB/s</td>
145*1b3f573fSAndroid Build Coastguard Worker<td>9.917GB/s</td>
146*1b3f573fSAndroid Build Coastguard Worker<td>5.78006GB/s</td>
147*1b3f573fSAndroid Build Coastguard Worker<td>5.85198GB/s</td>
148*1b3f573fSAndroid Build Coastguard Worker<td>4.62609GB/s</td>
149*1b3f573fSAndroid Build Coastguard Worker<td>2.49631GB/s</td>
150*1b3f573fSAndroid Build Coastguard Worker<td>2.35442GB/s</td>
151*1b3f573fSAndroid Build Coastguard Worker<td>802.061MB/s</td>
152*1b3f573fSAndroid Build Coastguard Worker</tr>
153*1b3f573fSAndroid Build Coastguard Worker<tr>
154*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_5</td>
155*1b3f573fSAndroid Build Coastguard Worker<td>76.0072MB/s</td>
156*1b3f573fSAndroid Build Coastguard Worker<td>51.6769MB/s</td>
157*1b3f573fSAndroid Build Coastguard Worker<td>237.856MB/s</td>
158*1b3f573fSAndroid Build Coastguard Worker<td>178.495MB/s</td>
159*1b3f573fSAndroid Build Coastguard Worker<td>111.751MB/s</td>
160*1b3f573fSAndroid Build Coastguard Worker<td>329.569MB/s</td>
161*1b3f573fSAndroid Build Coastguard Worker<td>121.038MB/s</td>
162*1b3f573fSAndroid Build Coastguard Worker<td>132.866MB/s</td>
163*1b3f573fSAndroid Build Coastguard Worker<td>36.9197MB/s</td>
164*1b3f573fSAndroid Build Coastguard Worker<td>10.3962MB/s</td>
165*1b3f573fSAndroid Build Coastguard Worker<td>8.84659MB/s</td>
166*1b3f573fSAndroid Build Coastguard Worker<td>1.25203MB/s</td>
167*1b3f573fSAndroid Build Coastguard Worker</tr>
168*1b3f573fSAndroid Build Coastguard Worker<tr>
169*1b3f573fSAndroid Build Coastguard Worker<td>google_message4</td>
170*1b3f573fSAndroid Build Coastguard Worker<td>331.46MB/s</td>
171*1b3f573fSAndroid Build Coastguard Worker<td>404.862MB/s</td>
172*1b3f573fSAndroid Build Coastguard Worker<td>427.99MB/s</td>
173*1b3f573fSAndroid Build Coastguard Worker<td>589.887MB/s</td>
174*1b3f573fSAndroid Build Coastguard Worker<td>720.367MB/s</td>
175*1b3f573fSAndroid Build Coastguard Worker<td>705.373MB/s</td>
176*1b3f573fSAndroid Build Coastguard Worker<td>606.228MB/s</td>
177*1b3f573fSAndroid Build Coastguard Worker<td>589.13MB/s</td>
178*1b3f573fSAndroid Build Coastguard Worker<td>530.692MB/s</td>
179*1b3f573fSAndroid Build Coastguard Worker<td>305.543MB/s</td>
180*1b3f573fSAndroid Build Coastguard Worker<td>174.834MB/s</td>
181*1b3f573fSAndroid Build Coastguard Worker<td>7.86485MB/s</td>
182*1b3f573fSAndroid Build Coastguard Worker</tr>
183*1b3f573fSAndroid Build Coastguard Worker</tbody></table>
184*1b3f573fSAndroid Build Coastguard Worker
185*1b3f573fSAndroid Build Coastguard Worker## Serialization performance
186*1b3f573fSAndroid Build Coastguard Worker
187*1b3f573fSAndroid Build Coastguard Worker<table>
188*1b3f573fSAndroid Build Coastguard Worker<tbody><tr>
189*1b3f573fSAndroid Build Coastguard Worker<th rowspan="2"> </th>
190*1b3f573fSAndroid Build Coastguard Worker<th colspan="1" rowspan="2">C++</th>
191*1b3f573fSAndroid Build Coastguard Worker<th colspan="1" rowspan="2">C++ with tcmalloc</th>
192*1b3f573fSAndroid Build Coastguard Worker<th colspan="3" rowspan="1">java</th>
193*1b3f573fSAndroid Build Coastguard Worker<th colspan="3" rowspan="1">python</th>
194*1b3f573fSAndroid Build Coastguard Worker</tr>
195*1b3f573fSAndroid Build Coastguard Worker<tr>
196*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">byte[]</th>
197*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">ByteString</th>
198*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">InputStream</th>
199*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">C++-generated-code</th>
200*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">C++-reflection</th>
201*1b3f573fSAndroid Build Coastguard Worker<th colspan="1">pure-Python</th>
202*1b3f573fSAndroid Build Coastguard Worker</tr>
203*1b3f573fSAndroid Build Coastguard Worker<tr>
204*1b3f573fSAndroid Build Coastguard Worker<td>google_message1_proto2</td>
205*1b3f573fSAndroid Build Coastguard Worker<td>1.39698GB/s</td>
206*1b3f573fSAndroid Build Coastguard Worker<td>1.701GB/s</td>
207*1b3f573fSAndroid Build Coastguard Worker<td>1.12915GB/s</td>
208*1b3f573fSAndroid Build Coastguard Worker<td>1.13589GB/s</td>
209*1b3f573fSAndroid Build Coastguard Worker<td>758.609MB/s</td>
210*1b3f573fSAndroid Build Coastguard Worker<td>260.911MB/s</td>
211*1b3f573fSAndroid Build Coastguard Worker<td>58.4815MB/s</td>
212*1b3f573fSAndroid Build Coastguard Worker<td>5.77824MB/s</td>
213*1b3f573fSAndroid Build Coastguard Worker</tr>
214*1b3f573fSAndroid Build Coastguard Worker<tr>
215*1b3f573fSAndroid Build Coastguard Worker<td>google_message1_proto3</td>
216*1b3f573fSAndroid Build Coastguard Worker<td>959.305MB/s</td>
217*1b3f573fSAndroid Build Coastguard Worker<td>939.404MB/s</td>
218*1b3f573fSAndroid Build Coastguard Worker<td>1.15372GB/s</td>
219*1b3f573fSAndroid Build Coastguard Worker<td>1.07824GB/s</td>
220*1b3f573fSAndroid Build Coastguard Worker<td>802.337MB/s</td>
221*1b3f573fSAndroid Build Coastguard Worker<td>239.4MB/s</td>
222*1b3f573fSAndroid Build Coastguard Worker<td>33.6336MB/s</td>
223*1b3f573fSAndroid Build Coastguard Worker<td>5.80524MB/s</td>
224*1b3f573fSAndroid Build Coastguard Worker</tr>
225*1b3f573fSAndroid Build Coastguard Worker<tr>
226*1b3f573fSAndroid Build Coastguard Worker<td>google_message2</td>
227*1b3f573fSAndroid Build Coastguard Worker<td>1.27429GB/s</td>
228*1b3f573fSAndroid Build Coastguard Worker<td>1.402GB/s</td>
229*1b3f573fSAndroid Build Coastguard Worker<td>1.01039GB/s</td>
230*1b3f573fSAndroid Build Coastguard Worker<td>1022.99MB/s</td>
231*1b3f573fSAndroid Build Coastguard Worker<td>798.736MB/s</td>
232*1b3f573fSAndroid Build Coastguard Worker<td>996.755MB/s</td>
233*1b3f573fSAndroid Build Coastguard Worker<td>57.9601MB/s</td>
234*1b3f573fSAndroid Build Coastguard Worker<td>4.09246MB/s</td>
235*1b3f573fSAndroid Build Coastguard Worker</tr>
236*1b3f573fSAndroid Build Coastguard Worker<tr>
237*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_1</td>
238*1b3f573fSAndroid Build Coastguard Worker<td>1.31916GB/s</td>
239*1b3f573fSAndroid Build Coastguard Worker<td>2.049GB/s</td>
240*1b3f573fSAndroid Build Coastguard Worker<td>991.496MB/s</td>
241*1b3f573fSAndroid Build Coastguard Worker<td>860.332MB/s</td>
242*1b3f573fSAndroid Build Coastguard Worker<td>662.88MB/s</td>
243*1b3f573fSAndroid Build Coastguard Worker<td>1.48625GB/s</td>
244*1b3f573fSAndroid Build Coastguard Worker<td>421.287MB/s</td>
245*1b3f573fSAndroid Build Coastguard Worker<td>18.002MB/s</td>
246*1b3f573fSAndroid Build Coastguard Worker</tr>
247*1b3f573fSAndroid Build Coastguard Worker<tr>
248*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_2</td>
249*1b3f573fSAndroid Build Coastguard Worker<td>2.15676GB/s</td>
250*1b3f573fSAndroid Build Coastguard Worker<td>2.632GB/s</td>
251*1b3f573fSAndroid Build Coastguard Worker<td>2.14736GB/s</td>
252*1b3f573fSAndroid Build Coastguard Worker<td>2.08136GB/s</td>
253*1b3f573fSAndroid Build Coastguard Worker<td>1.55997GB/s</td>
254*1b3f573fSAndroid Build Coastguard Worker<td>2.39597GB/s</td>
255*1b3f573fSAndroid Build Coastguard Worker<td>326.777MB/s</td>
256*1b3f573fSAndroid Build Coastguard Worker<td>16.0527MB/s</td>
257*1b3f573fSAndroid Build Coastguard Worker</tr>
258*1b3f573fSAndroid Build Coastguard Worker<tr>
259*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_3</td>
260*1b3f573fSAndroid Build Coastguard Worker<td>650.456MB/s</td>
261*1b3f573fSAndroid Build Coastguard Worker<td>1.040GB/s</td>
262*1b3f573fSAndroid Build Coastguard Worker<td>593.52MB/s</td>
263*1b3f573fSAndroid Build Coastguard Worker<td>580.667MB/s</td>
264*1b3f573fSAndroid Build Coastguard Worker<td>346.839MB/s</td>
265*1b3f573fSAndroid Build Coastguard Worker<td>123.978MB/s</td>
266*1b3f573fSAndroid Build Coastguard Worker<td>35.893MB/s</td>
267*1b3f573fSAndroid Build Coastguard Worker<td>2.32834MB/s</td>
268*1b3f573fSAndroid Build Coastguard Worker</tr>
269*1b3f573fSAndroid Build Coastguard Worker<tr>
270*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_4</td>
271*1b3f573fSAndroid Build Coastguard Worker<td>8.70154GB/s</td>
272*1b3f573fSAndroid Build Coastguard Worker<td>9.825GB/s</td>
273*1b3f573fSAndroid Build Coastguard Worker<td>5.88645GB/s</td>
274*1b3f573fSAndroid Build Coastguard Worker<td>5.93946GB/s</td>
275*1b3f573fSAndroid Build Coastguard Worker<td>2.44388GB/s</td>
276*1b3f573fSAndroid Build Coastguard Worker<td>5.9241GB/s</td>
277*1b3f573fSAndroid Build Coastguard Worker<td>4.05837GB/s</td>
278*1b3f573fSAndroid Build Coastguard Worker<td>876.87MB/s</td>
279*1b3f573fSAndroid Build Coastguard Worker</tr>
280*1b3f573fSAndroid Build Coastguard Worker<tr>
281*1b3f573fSAndroid Build Coastguard Worker<td>google_message3_5</td>
282*1b3f573fSAndroid Build Coastguard Worker<td>246.33MB/s</td>
283*1b3f573fSAndroid Build Coastguard Worker<td>443.993MB/s</td>
284*1b3f573fSAndroid Build Coastguard Worker<td>283.278MB/s</td>
285*1b3f573fSAndroid Build Coastguard Worker<td>259.167MB/s</td>
286*1b3f573fSAndroid Build Coastguard Worker<td>206.37MB/s</td>
287*1b3f573fSAndroid Build Coastguard Worker<td>37.0285MB/s</td>
288*1b3f573fSAndroid Build Coastguard Worker<td>12.2228MB/s</td>
289*1b3f573fSAndroid Build Coastguard Worker<td>1.1979MB/s</td>
290*1b3f573fSAndroid Build Coastguard Worker</tr>
291*1b3f573fSAndroid Build Coastguard Worker<tr>
292*1b3f573fSAndroid Build Coastguard Worker<td>google_message4</td>
293*1b3f573fSAndroid Build Coastguard Worker<td>1.56674GB/s</td>
294*1b3f573fSAndroid Build Coastguard Worker<td>2.19601GB/s</td>
295*1b3f573fSAndroid Build Coastguard Worker<td>776.907MB/s</td>
296*1b3f573fSAndroid Build Coastguard Worker<td>770.707MB/s</td>
297*1b3f573fSAndroid Build Coastguard Worker<td>702.931MB/s</td>
298*1b3f573fSAndroid Build Coastguard Worker<td>1.49623GB/s</td>
299*1b3f573fSAndroid Build Coastguard Worker<td>205.116MB/s</td>
300*1b3f573fSAndroid Build Coastguard Worker<td>8.93428MB/s</td>
301*1b3f573fSAndroid Build Coastguard Worker</tr>
302*1b3f573fSAndroid Build Coastguard Worker</tbody></table>
303*1b3f573fSAndroid Build Coastguard Worker
304*1b3f573fSAndroid Build Coastguard Worker\* The cpp performance can be improved by using [tcmalloc](https://gperftools.github.io/gperftools/tcmalloc.html), please follow the (instruction)[https://github.com/protocolbuffers/protobuf/blob/main/benchmarks/README.md] to link with tcmalloc to get the faster result.
305