Throughput-oriented computing via co-running multiple applications in the same machine has been widely adopted to achieve high hardware utilization and energy saving on modern supercomputers and data centers. However, efficiently co-running applications raises new design challenges, mainly because applications with diverse requirements can stress out shared hardware resources (IO, Network and Cache) at various levels. The disparities in resource usage can result in interference, which in turn can lead to unpredictable co-running behaviors. To better understand application interference, prior work provided detailed execution characterization. However, these characterization approaches either emphasize on traditional benchmarks or fall into a single application domain. To address this issue, we study 25 up-to-date applications and benchmarks from various application domains and form 625 consolidation pairs to thoroughly analyze the execution interference caused by application co-running. Moreover, we leverage mini-benchmarks and real applications to pinpoint the provenance of co-running interference in both hardware and software aspects.
翻译:通过在同一机器上共运行多个应用以实现吞吐量导向的计算,已在现代超级计算机和数据中心中被广泛采用,以达到高硬件利用率和节能效果。然而,高效共运行应用带来了新的设计挑战,这主要是因为具有不同需求的应用可能在不同层面上给共享硬件资源(IO、网络和缓存)带来压力。资源使用上的差异可能导致干扰,进而引发不可预测的共运行行为。为更好地理解应用干扰,先前的工作提供了详细的执行特征分析。然而,这些特征分析方法要么侧重于传统基准测试,要么局限于单一应用领域。为解决这一问题,我们研究了来自不同应用领域的25个最新应用和基准测试,并构建了625个共运行对,以全面分析应用共运行导致的执行干扰。此外,我们利用微型基准测试和实际应用,从硬件和软件两个层面精准定位共运行干扰的根源。