arrow
返回

HotLD: A Workload-Aware Method for Global Code-Layout Optimization of Shared Libraries

delete2025-12-01
delete0
PRE
AI
X
Xueqin Ning
J
Jun Ma
Z
Zhouyang Jia *
Y
Yusong Tan
J
Jie Yu
P
Pan Dong
J
J. Wang
L
Lianghao Shen
DOI:10.1145/3769310delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
动态链接是软件开发生命周期中的一个重要技术。虽然动态链接可以节省内存并增强可维护性,但它也会引入性能开销,并阻碍基于性能分析的代码布局优化技术(profile-guided code layout optimization)在第三方库中的应用。现有工作(如BOLT)可以通过为目标工作负载生成优化的共享库版本来解决这一问题。在线性能分析(PGO)方法(如OCOLOS)可以进一步支持动态代码替换以适应工作负载变化。然而,这些方法存在以下局限:(1)难以进行全局优化,(2)内存消耗高且性能开销大,(3)应用场景受限。为解决这些问题,我们提出HoTLD,一种面向工作负载的共享库全局代码布局优化方法。HoTLD能在引入有限性能和内存开销的前提下提升共享库性能。其核心思想是在离线阶段为每种典型应用工作负载创建专用代码副本,并依据工作负载特性进行全局优化。在运行时,HoTLD监控目标程序的运行工作负载,随后动态选择并链接适当的代码副本。我们通过真实应用实验评估了HoTLD的有效性和效率。结果表明,HoTLD可在毫秒级性能开销下将性能提升高达22.37%。与现有工作相比,HoTLD仅需使用1%-46%的内存即可支持2倍至9倍的工作负载。
Keyword:
Dynamic linking
shared library
profile-guided optimization
workload-aware

期刊

A
ACM Transactions on Architecture and Code Optimization
IF:
1.8
论文数:
96
被引数:
1.1K

机构

N
national university of defense technology - china
学者数:
1.8W
论文数: 1.4W
被引数: 9
引用论文

引用论文

err分享
err收藏
err分享
err收藏
Code layout optimizations for transaction processing workloads事务处理工作负载的代码布局优化
err2001-01-01
err0
errOAAI
errAlex Ramirez; Luiz André Barroso; Kourosh Gharachorloo; Robert Cohn; Josep Larriba-Pey; P. Geoffrey Lowney; Mateo Valero
err分享
err收藏
学者 查看更多内容