Otimização Não Intuitiva: Acelerando Uniões de Caminhos no Skia

2025-01-01

O autor encontrou gargalos de desempenho ao realizar operações de união de caminhos em um grande número de caminhos de gráficos vetoriais usando o Skia. A abordagem inicial ingênua de unir caminhos iterativamente era lenta, e embora o construtor de caminhos do Skia oferecesse otimização, ainda não era suficientemente rápido. Ao mergulhar profundamente nos detalhes internos das operações de caminho do Skia, descobriu-se que o número de curvas em cada caminho afetava significativamente o desempenho. Ao dividir a união de caminhos em intervalos menores e aplicar recursivamente uma estratégia de dividir e conquistar, o autor conseguiu uma aceleração significativa, superando, em última análise, o método padrão do Skia. Surpreendentemente, aumentar o número de operações de união por meio desse método resultou em um processamento mais rápido.

Leia mais