首页> 外文会议>IEEE/ACM International Symposium on Code Generation and Optimization >Optimizing function placement for large-scale data-center applications
【24h】

Optimizing function placement for large-scale data-center applications

机译:针对大型数据中心应用优化功能布局

获取原文

摘要

Modern data-center applications often comprise a large amount of code, with substantial working sets, making them good candidates for code-layout optimizations. Although recent work has evaluated the impact of profile-guided intramodule optimizations and some cross-module optimizations, no recent study has evaluated the benefit of function placement for such large-scale applications. In this paper, we study the impact of function placement in the context of a simple tool we created that uses sample-based profiling data. By using sample-based profiling, this methodology follows the same principle behind AutoFDO, i.e. using profiling data collected from unmodified binaries running in production, which makes it applicable to large-scale binaries. Using this tool, we first evaluate the impact of the traditional Pettis-Hansen (PH) function-placement algorithm on a set of widely deployed data-center applications. Our experiments show that using the PH algorithm improves the performance of the studied applications by an average of 2.6%. In addition to that, this paper also evaluates the impact of two improvements on top of the PH technique. The first improvement is a new algorithm, called C3, which addresses a fundamental weakness we identified in the PH algorithm. We not only qualitatively illustrate how C3 overcomes this weakness in PH, but also present experimental results confirming that C3 performs better than PH in practice, boosting the performance of our workloads by an average of 2.9% on top of PH. The second improvement we evaluate is the selective use of huge pages. Our evaluation shows that, although aggressively mapping the entire code section of a large binary onto huge pages can be detrimental to performance, judiciously using huge pages can further improve performance of our applications by 2.0% on average.
机译:现代数据中心应用程序通常包含大量代码,并带有大量工作集,使其成为代码布局优化的理想选择。尽管最近的工作已经评估了配置文件引导的模块内优化和一些跨模块优化的影响,但是没有最新的研究评估过这种大型应用程序中功能放置的好处。在本文中,我们在使用基于样本的概要分析数据创建的简单工具的上下文中研究了功能放置的影响。通过使用基于样本的性能分析,此方法遵循AutoFDO的相同原理,即使用从生产中运行的未修改二进制文件收集的性能分析数据,使其适用于大规模二进制文件。使用此工具,我们首先评估传统的Pettis-Hansen(PH)函数放置算法对一组广泛部署的数据中心应用程序的影响。我们的实验表明,使用PH算法可将研究的应用程序的性能平均提高2.6%。除此之外,本文还评估了PH技术基础上的两项改进的影响。第一个改进是名为C3的新算法,该算法解决了我们在PH算法中发现的一个基本弱点。我们不仅从质上说明C3如何克服PH的这一弱点,而且还提供实验结果,证实C3在实践中比PH表现更好,使我们的工作负载性能平均比PH提高了2.9%。我们评估的第二个改进是选择性使用大页面。我们的评估表明,尽管将大型二进制文件的整个代码段主动映射到大页面上可能会损害性能,但明智地使用大页面可以使我们的应用程序性能平均平均提高2.0%。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号