universal-ctags / ctags

A maintained ctags implementation
https://ctags.io
GNU General Public License v2.0
6.39k stars 618 forks source link

Evaluate using Profile-Guided Optimization (PGO) and Post-Link Optimization (PLO) on ctags #3849

Open zamazan4ik opened 7 months ago

zamazan4ik commented 7 months ago

Hi!

Recently I checked Profile-Guided Optimization (PGO) improvements on multiple projects. The results are available here. I also have several examples of applying PGO to the software like ctags:

That's why I think trying to optimize ctags with PGO can be a good idea.

I can suggest the following action points:

Testing Post-Link Optimization techniques (like LLVM BOLT) would be interesting too (Clang and Rustc already use BOLT as an addition to PGO) but I recommend starting from the usual PGO.

Here are some examples of how PGO optimization is integrated in other projects:

masatake commented 6 months ago

Thank you for this input.