Performance improvement areas outside GCC
Areas outside GCC including prelinking, profile-guided optimisation, and proper linker support, can also improve the overall performances. Discuss the current list of areas, anything that is missing, and what to approach first.
Note: may be a short session as the drafter is unavailable
Blueprint information
- Status:
- Not started
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Richard Sandiford
- Direction:
- Needs approval
- Assignee:
- None
- Definition:
- New
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
Whiteboard
The three main areas that have been raised in Launchpad as potential areas of improvement are:
1. Using GOLD, so that we can use GCC's LTO plugin.
2. Making STT_GNU_IFUNC work on ARM.
3. Bundling the prelinker as part of the distribution.
It'd certainly be interesting to see if there are other things we could do though. Given GCC's LTO support, I think the main thing that non-GCC tools can do is to help the dynamic loader and shared libraries. (2) and (3) above fit into that category, as does the DT_GNU_HASH that we already have.