HotLD:一种基于工作负载感知的共享库全局代码布局优化方法
《ACM Transactions on Architecture and Code Optimization》:HotLD: a Workload-Aware Method for Global Code-Layout Optimization of Shared Libraries
【字体:
大
中
小
】
时间:2025年11月08日
来源:ACM Transactions on Architecture and Code Optimization
编辑推荐:
HotLD是一种基于工作负载的共享库全局代码布局优化方法,通过离线阶段为每个典型工作负载创建专用代码副本,并在运行时动态选择最优副本,有效提升性能至22.37%,同时控制内存使用和运行时开销。
摘要
动态链接是软件开发过程中的一个重要技术。虽然动态链接可以节省内存并提高可维护性,但它也会带来性能开销,并阻碍针对第三方库的应用程序代码布局优化技术。现有的方法(如BOLT)可以通过为特定的工作负载生成优化后的共享库版本来解决这个问题。在线代码布局优化(PGO)方法(如OCOLOS)可以进一步支持动态代码替换,以适应工作负载的变化。然而,这些方法在几个方面存在局限性:(1)难以进行全局优化;(2)内存消耗高且性能开销大;(3)适用场景有限。为了解决这些问题,我们提出了HotLD,这是一种基于工作负载的共享库全局代码布局优化方法。HotLD能够在引入有限性能和内存开销的同时提升共享库的性能。HotLD的核心思想是在离线阶段为每种典型的应用程序工作负载创建专门的代码副本,并根据工作负载的特点进行全局优化。在运行时,HotLD会监控目标程序的运行工作负载,然后动态选择并链接合适的代码副本。我们使用实际应用程序进行了实验,以评估HotLD的有效性和效率。实验结果表明,HotLD能够在性能开销较低(仅在毫秒级别)的情况下提高应用程序的性能(最高可达22.37%)。与现有方法相比,HotLD使用的内存减少了1%到46%,同时能够支持2到9倍的工作负载量。
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号