Commit 50c326b
authored
perf: optimiztions to reduce regression test runtime (#2135)
Small group of changes that at reduce the regression test runtime
by about 14%.
Motivation for this change in particular were the large PNGs usually
allocated for even the smallest SVGs in the test data which both increases
the time spent allocating as well as the time pixelmatch would take for the
comparison.
The other changes improve not only the test runtime but also the normal
SVG processing given the input data has cases caught by
removeHiddenElems which also has the by far most significant of the 3
changes. All the changes done for baseline performance optimization are
very unlikely to cause any harm and would need specific sets of input
SVGs mostly consisting of visibility checks regarding the element style
to impact performance in a negative way. In my local tests these changes
gave an additional ~7-8% time reduction with the svgo data set.1 parent 1f33cbe commit 50c326b
File tree
6 files changed
+100
-101
lines changed- .github/workflows
- lib/svgo
- plugins
- test/regression
- lists
6 files changed
+100
-101
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
| 34 | + | |
34 | 35 | | |
35 | 36 | | |
36 | 37 | | |
37 | 38 | | |
38 | 39 | | |
39 | 40 | | |
| 41 | + | |
40 | 42 | | |
41 | 43 | | |
42 | 44 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
145 | 145 | | |
146 | 146 | | |
147 | 147 | | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
148 | 156 | | |
149 | 157 | | |
150 | 158 | | |
| |||
170 | 178 | | |
171 | 179 | | |
172 | 180 | | |
173 | | - | |
174 | | - | |
175 | | - | |
176 | | - | |
177 | | - | |
178 | | - | |
179 | | - | |
180 | | - | |
181 | | - | |
| 181 | + | |
182 | 182 | | |
183 | 183 | | |
184 | 184 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
230 | 230 | | |
231 | 231 | | |
232 | 232 | | |
233 | | - | |
234 | | - | |
| 233 | + | |
235 | 234 | | |
236 | 235 | | |
237 | 236 | | |
| |||
247 | 246 | | |
248 | 247 | | |
249 | 248 | | |
250 | | - | |
| 249 | + | |
251 | 250 | | |
252 | 251 | | |
253 | | - | |
254 | | - | |
| 252 | + | |
255 | 253 | | |
256 | 254 | | |
257 | 255 | | |
| |||
261 | 259 | | |
262 | 260 | | |
263 | 261 | | |
264 | | - | |
| 262 | + | |
265 | 263 | | |
266 | | - | |
267 | | - | |
| 264 | + | |
268 | 265 | | |
269 | 266 | | |
270 | 267 | | |
271 | 268 | | |
272 | 269 | | |
273 | 270 | | |
274 | 271 | | |
275 | | - | |
| 272 | + | |
276 | 273 | | |
277 | | - | |
278 | | - | |
| 274 | + | |
279 | 275 | | |
280 | 276 | | |
281 | 277 | | |
282 | 278 | | |
283 | 279 | | |
284 | 280 | | |
285 | 281 | | |
286 | | - | |
| 282 | + | |
287 | 283 | | |
288 | 284 | | |
289 | | - | |
290 | | - | |
| 285 | + | |
291 | 286 | | |
292 | 287 | | |
293 | 288 | | |
| |||
301 | 296 | | |
302 | 297 | | |
303 | 298 | | |
304 | | - | |
| 299 | + | |
305 | 300 | | |
306 | 301 | | |
307 | | - | |
308 | | - | |
| 302 | + | |
309 | 303 | | |
310 | 304 | | |
311 | 305 | | |
| |||
317 | 311 | | |
318 | 312 | | |
319 | 313 | | |
320 | | - | |
| 314 | + | |
321 | 315 | | |
322 | 316 | | |
323 | | - | |
324 | | - | |
| 317 | + | |
325 | 318 | | |
326 | 319 | | |
327 | 320 | | |
| |||
333 | 326 | | |
334 | 327 | | |
335 | 328 | | |
336 | | - | |
| 329 | + | |
337 | 330 | | |
338 | 331 | | |
339 | | - | |
340 | | - | |
| 332 | + | |
341 | 333 | | |
342 | 334 | | |
343 | 335 | | |
| |||
347 | 339 | | |
348 | 340 | | |
349 | 341 | | |
350 | | - | |
| 342 | + | |
351 | 343 | | |
352 | 344 | | |
353 | | - | |
354 | | - | |
| 345 | + | |
355 | 346 | | |
356 | 347 | | |
357 | 348 | | |
| |||
361 | 352 | | |
362 | 353 | | |
363 | 354 | | |
364 | | - | |
| 355 | + | |
365 | 356 | | |
366 | 357 | | |
367 | 358 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
190 | 190 | | |
191 | 191 | | |
192 | 192 | | |
193 | | - | |
194 | | - | |
195 | | - | |
196 | | - | |
197 | | - | |
198 | | - | |
199 | | - | |
200 | | - | |
201 | | - | |
202 | | - | |
203 | | - | |
204 | | - | |
205 | | - | |
206 | | - | |
207 | | - | |
208 | | - | |
209 | | - | |
210 | | - | |
211 | | - | |
212 | | - | |
213 | | - | |
214 | | - | |
215 | | - | |
216 | | - | |
217 | | - | |
218 | | - | |
219 | | - | |
220 | | - | |
221 | | - | |
222 | | - | |
223 | | - | |
224 | | - | |
225 | 193 | | |
226 | 194 | | |
227 | 195 | | |
| |||
363 | 331 | | |
364 | 332 | | |
365 | 333 | | |
366 | | - | |
367 | | - | |
368 | | - | |
369 | | - | |
370 | | - | |
371 | | - | |
372 | | - | |
373 | | - | |
374 | | - | |
375 | | - | |
376 | | - | |
377 | | - | |
378 | | - | |
379 | | - | |
380 | | - | |
381 | | - | |
382 | | - | |
383 | | - | |
384 | | - | |
385 | | - | |
386 | | - | |
387 | | - | |
388 | | - | |
389 | | - | |
390 | | - | |
391 | | - | |
392 | 334 | | |
393 | 335 | | |
394 | 336 | | |
| |||
417 | 359 | | |
418 | 360 | | |
419 | 361 | | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
420 | 420 | | |
421 | 421 | | |
422 | 422 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
25 | | - | |
26 | 25 | | |
27 | 26 | | |
28 | 27 | | |
| |||
63 | 62 | | |
64 | 63 | | |
65 | 64 | | |
66 | | - | |
| 65 | + | |
| 66 | + | |
67 | 67 | | |
68 | 68 | | |
69 | | - | |
| 69 | + | |
| 70 | + | |
70 | 71 | | |
71 | | - | |
72 | | - | |
73 | 72 | | |
74 | 73 | | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
75 | 79 | | |
76 | 80 | | |
77 | 81 | | |
78 | 82 | | |
79 | | - | |
80 | | - | |
| 83 | + | |
| 84 | + | |
81 | 85 | | |
82 | 86 | | |
83 | 87 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
158 | 158 | | |
159 | 159 | | |
160 | 160 | | |
| 161 | + | |
161 | 162 | | |
162 | 163 | | |
| 164 | + | |
0 commit comments