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个共存对,以彻底分析应用程序上运行所引起的执行干扰。此外,我们利用迷你基准测试和真实应用程序,在硬件和软件方面精确定位了共运行干扰的来源。