| Skill level: | Advanced |
| Reading time: | 30 min |
| Last updated: | 01 Jul 2026 |
| Skill level: |
| Advanced |
| Reading time: |
| 30 min |
| Last updated: |
| 01 Jul 2026 |
This is an advanced topic for performance engineers and software developers targeting Arm platforms who want to optimize application binaries and shared libraries using BOLT.
Upon completion of this Learning Path, you will be able to:
Before starting, you will need the following:
This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.
libssl.so and libcrypto.so suitable for BOLT, collect profiles, and apply optimizations independently from the main binary. Finally, you’ll compare results across baseline, isolated, and merged scenarios using a consistent Sysbench configuration to assess the impact of application and library-level optimizations on throughput and latency.These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.
.fdata format, such as profile-writeonly.fdata. These files are later used to optimize the binary and can be merged to improve coverage..fdata profile for each workload.libssl.so and libcrypto.so. If system libraries are stripped, rebuild OpenSSL from source with relocations enabled so BOLT can instrument and optimize them.--time=0 --events=10000 to complete exactly 10,000 requests per thread. Use this consistent configuration to compare baseline, application-only, and merged-with-library optimization scenarios.