Replace String with SmolStr in Plan
To measure performance boost, I use following benchmarks: cloning plan, serializing plan, and deserializing as well as other benchmarks from sbroad benches.
As a query to build plan from I took this query.
After replacing String with SmolStr, we get following results:
String, µs | SmolStr, µs | |
---|---|---|
clone | 100.50 | 61.161 |
serialize | 56.428 | 58.167 |
deserialize | 252.16 | 251.32 |
merge_several_column_statistics | 25.129 | 25.568 |
pure_pest_parsing_many_references | 394.76 | 389.53 |
pure_pest_parsing_target_query0 | 24.270 | 24.589 |
pure_pest_parsing_target_query1 | 32.364 | 32.827 |
pure_pest_parsing_target_query2 | 49.337 | 50.044 |
full_parsing_many_references | 961.74 | 1000,43 |
full_parsing_target_query0 | 93.369 | 83.511 |
full_parsing_target_query1 | 110.84 | 100.21 |
full_parsing_target_query2 | 165.82 | 160.82 |
As a side effect, it also speeds up full_parsing_* benchmarks by 8-9%.
Documentation follow-up: docs#220 (closed)
Merge request reports
Activity
requested review from @darthunix
assigned to @andrewio
mentioned in merge request !399 (merged)
Please, bring the benchmarks from !394 (closed) as the first commit. Give some results about the performance improvements in the current MR description. And write the motivation to change String with SmolStr in the commit messages,
added 1 commit
- 4c1d834a - Add benchmarks for serializing, deserializing, and cloning
added 1 commit
- 627db36e - Add benchmarks for serializing, deserializing, and cloning
mentioned in issue docs#220 (closed)
- Resolved by Denis Smirnov
- Resolved by Denis Smirnov