Commit aa3e6ee
authored
Optimize and reduce memory usage of XML serialization (#14204)
The serialization process uses the system allocator and requires a copy
to request allocated memory once finished. This patch improves this by
using smart_str to build the resulting string, reducing the number of
copies and reducing total peak memory usage.1 parent 8776561 commit aa3e6ee
3 files changed
+35
-42
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
693 | 693 | | |
694 | 694 | | |
695 | 695 | | |
| 696 | + | |
696 | 697 | | |
697 | 698 | | |
698 | 699 | | |
| |||
708 | 709 | | |
709 | 710 | | |
710 | 711 | | |
| 712 | + | |
| 713 | + | |
| 714 | + | |
711 | 715 | | |
712 | 716 | | |
713 | 717 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
250 | 250 | | |
251 | 251 | | |
252 | 252 | | |
| 253 | + | |
| 254 | + | |
| 255 | + | |
| 256 | + | |
| 257 | + | |
| 258 | + | |
| 259 | + | |
253 | 260 | | |
254 | 261 | | |
255 | | - | |
256 | | - | |
257 | | - | |
258 | | - | |
| 262 | + | |
259 | 263 | | |
260 | 264 | | |
261 | | - | |
| 265 | + | |
262 | 266 | | |
263 | 267 | | |
264 | | - | |
| 268 | + | |
265 | 269 | | |
266 | 270 | | |
267 | 271 | | |
268 | 272 | | |
| 273 | + | |
| 274 | + | |
269 | 275 | | |
270 | 276 | | |
271 | | - | |
272 | 277 | | |
273 | 278 | | |
274 | 279 | | |
275 | | - | |
276 | | - | |
277 | | - | |
278 | | - | |
279 | | - | |
280 | | - | |
281 | | - | |
| 280 | + | |
282 | 281 | | |
283 | 282 | | |
284 | 283 | | |
285 | | - | |
286 | | - | |
287 | | - | |
288 | | - | |
| 284 | + | |
289 | 285 | | |
290 | 286 | | |
291 | 287 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1481 | 1481 | | |
1482 | 1482 | | |
1483 | 1483 | | |
| 1484 | + | |
| 1485 | + | |
| 1486 | + | |
| 1487 | + | |
| 1488 | + | |
| 1489 | + | |
| 1490 | + | |
1484 | 1491 | | |
1485 | 1492 | | |
1486 | | - | |
1487 | | - | |
1488 | | - | |
1489 | | - | |
| 1493 | + | |
1490 | 1494 | | |
1491 | 1495 | | |
1492 | | - | |
| 1496 | + | |
1493 | 1497 | | |
1494 | | - | |
1495 | 1498 | | |
1496 | 1499 | | |
1497 | 1500 | | |
1498 | 1501 | | |
1499 | 1502 | | |
1500 | 1503 | | |
1501 | | - | |
| 1504 | + | |
1502 | 1505 | | |
1503 | 1506 | | |
1504 | 1507 | | |
1505 | | - | |
1506 | | - | |
1507 | | - | |
1508 | | - | |
1509 | | - | |
1510 | | - | |
1511 | | - | |
1512 | | - | |
1513 | | - | |
1514 | | - | |
| 1508 | + | |
1515 | 1509 | | |
1516 | 1510 | | |
1517 | 1511 | | |
1518 | 1512 | | |
1519 | | - | |
1520 | | - | |
| 1513 | + | |
| 1514 | + | |
| 1515 | + | |
1521 | 1516 | | |
1522 | 1517 | | |
1523 | 1518 | | |
1524 | 1519 | | |
1525 | 1520 | | |
1526 | 1521 | | |
1527 | 1522 | | |
| 1523 | + | |
1528 | 1524 | | |
1529 | 1525 | | |
1530 | 1526 | | |
1531 | 1527 | | |
1532 | | - | |
1533 | | - | |
1534 | | - | |
1535 | | - | |
1536 | 1528 | | |
1537 | | - | |
| 1529 | + | |
| 1530 | + | |
1538 | 1531 | | |
1539 | 1532 | | |
1540 | 1533 | | |
| |||
0 commit comments