CozySynthesizer / cozy

The collection synthesizer
https://cozy.uwplse.org
Apache License 2.0
209 stars 18 forks source link

[codegen] unnecessary vector resize and vector copy #82

Closed izgzhen closed 5 years ago

izgzhen commented 5 years ago

details will be refined later

izgzhen commented 5 years ago

https://github.com/CozySynthesizer/cozy/blob/292f9ddd2a866f49d9c5a6a5ae8ea3f265afa91b/cozy/codegen/cxx.py#L262

This resize will be emitted no matter whether the new size is same as the old size. I observed its impact to performance in one of our internal example.

izgzhen commented 5 years ago

https://github.com/CozySynthesizer/cozy/blob/master/cozy/structures/heaps.py: extra copying of vector is probably here, I will add more later when I bumped into it again.

izgzhen commented 5 years ago

A separating benchmarking (citation missing here, but .... anyway). so 1 WONT-FIX. Need example for 2, WONT-FIX until I can write it down crystal-clear.