论文部分内容阅读
近年来数据中心能耗不断增加,带来了巨大的成本开销,因此提高数据中心效能至关重要。一个数据中心通常包含若干计算、内部存储、外部存储、网络等资源,在完成计算任务时,这些资源如何分配对于提高数据中心效能有重要影响。然而,数据中心资源和资源分配方式的多样性,导致了求解空间巨大,在严格的时间约束下,合理分配资源面临巨大挑战。 针对这一难题,本文提出了使用等效资源配置的技术路线来优化数据中心的效能。等效资源配置是指相对于同一应用程序,表现出相似性能的资源配置,但不同的等效资源配置可能具有较大的功耗差异。本文从服务器的峰值功耗优化、平均功耗优化及处理器性能优化三个方而来研究资源分配,旨在提高数据中心的效能。 论文的主要创新性贡献如下: 基于等效资源配置的服务器峰值功耗优化当应用程序的功耗需求超过服务器的功耗配额时,现有的方法以牺牲性能为代价降低服务器的功耗需求,比如使用动态电压频率调整(Dynamic Voltage and FrequencyScaling,DVFS)方法降低处理器的电压和工作频率。因此在负载过载时,如何在最小化应用程序的性能损失的情况下,降低服务器的峰值功耗是研究的热点。本文提出了一种基于等效资源配置的服务器峰值功耗优化方法。该方法将峰值功耗优化问题模型化为多维背包问题,但不同于传统背包问题,该问题具有严格的时间限制。为了求解该问题,进而提出了启发式算法PowerCap。该算法贪心选择功耗降低能力大的应用程序来降低峰值功耗。实验表明,PowerCap能够在没有性能损失的情况下将峰值功耗降低17%,与DVFS相比,多降低了12%的功耗。 基于等效资源配置的平均功耗优化等效资源配置不仅可以优化服务器的峰值功耗,也可以优化平均功耗。本文提出了一种使用等效资源配置来优化服务器平均功耗的方法。平均功耗优化问题同样可以模型化为多维背包问题。但不同于峰值功耗优化,该优化时间约束宽松。针对小规模应用程序集,我们提出了启发式算法SmartBalance,该算法改善了贪心选择算法资源分配不均衡的问题,通过权衡效能和资源均衡分配,选取典型资源配置进行组合,优化服务器的效能。针对大规模应用程序集,本文提出了启发式算法CPicker,该算法借助于遗传算法的基因突变和基因交叉操作,推动少量候选解不断的向最优解演化。使用KVM虚拟机在曙光服务器上验证的实验结果表明:与穷举算法得到的最优解相比,SmartBalance算法仅差0.5%的效能;与随机配置相比,平均获得3%的效能提升。CPicker算法与最优解相比相差5%的效能;与贪心选择算法相比,CPicker获得8%的效能提升。使用Docker容器在Intel平台上开展的实验表明,与DVFS方法相比,CPicker获得了4%的效能提升。 基于核性能等效的处理器性能优化众核处理器由于工艺偏差、老化、缺陷等因素,不同的处理器核可能会表现出不同的频率和相同频率不同性能。不合理的资源分配,将导致性能的损失和能量浪费。然而诱发性能差异的因素多样,比如不同的缺陷部件,而且性能差异还随时间变化而变化,并受到应用程序对缺陷的不敏感的影响,这些都提高了感知处理器核性能差异的难度。本文提出了基于核性能等效的处理器性能优化方法CoreRank。CoreRank通过一些典型的微指令流(snippet)来测试处理器核的“健康”状况,并使用snippet类的性能来推断处理器核性能;CoreRank实时更新snippet性能信息,能够及时反映核的性能状态。实验表明,借助于CoreRank方法在缺陷的处理器核数少于50%时,能够有效的隐藏处理器核的性能降级。