论文笔记 CPU Accounting for Multicore Processors

Abstract

  • 确定了对CPU utilization的不准确测量是如何影响OS的几个关键方面的
  • 这篇文章提出来了一个比CPU utilization更准确的性能评估指标

In this paper, we identify how an inaccurate measurement of the CPU utilization affects several key aspects of the system such as OS statistics or the charging mechanism in data centers.

We propose a new hardware CPU accounting mechanism to improve the accuracy when measuring the CPU utilization in CMPs and compare it with the previous accounting mechanisms.

Question

作者在后文中举例:在锁定一个固定的,排除了 “OS noise” 的核上运行SPEC CPU 2,000 benchmark 171.swim, it completes its execution in 117 seconds. when swim runs together with other applications in the same core, its real execution time increases up to 4x due to task switches forced by the OS. (cache data eviction or process switch)

所以似乎是指对于一个固定的计算系统对于同一workload所花的计算时间大致相同。

在这里插入图片描述

这个是啥

Tricks

  • We move all the OS activity to the first core, leaving the other cores as isolated as possible from “OS noise.”

Points

  • processors with shared on-chip resources, such as CMPs 会因为其他正在运行的任务而导致不同的性能、时间和方差
  • processors with shared on-chip resources, such as CMPs 由于空间上的cache共享而使得 the time spent running on the CPU 这种衡量方式不准确

QA

  1. What is the CPU Accounting Problem they are addressing?

The Classical Approach(CA) has been proved to work well for single-threaded uniprocessor and SMP systems, as the amount of hardware resources spatially shared is limited.
However, processors with shared on-chip resources, such as CMPs , make CPU accounting more complex because the progress of an application depends on the activity of the other applications running at the same time.
The inaccuracy measuring per-task CPU utilization may affect several key components of a computing system, such as several commonly used programs (i.e., top or time) which may not properly account applications’ progress. Finally, CPU accounting can be also used in data centers to charge users (together with other factor such as used amount of memory, disk space, I/O activity, etc.), according to their effective use of the system.

  • CPU utilization 在衡量single-threaded uniprocessor and SMP systems性能时表现良好,因为硬件资源在空间上的分享比较有限
  • 但它在衡量 共享片上资源 的CPU时就会存在误差
  • 这一误差会导致很多工具包括基础软件和计费工具不准确

在这里插入图片描述
比如说我这个CPU,可以看到时6个core但是有12个逻辑处理器。

逻辑处理器指的就是支持 超线程 技术的处理器在一个单核心的CPU内,利用其中空闲的执行单元,模拟出另外一个核心,使整个CPU有两个逻辑核心,从而提高整个CPU的 工作效率 。

超线程技术应用的场景下,CPU utilization会导致偏差。一个计算负载,在其他正在运行的进程不同的情况下,也会出现CPU utilization不同的情况。

  1. What is their solution? Software? Hardware?
  • a hardware mechanism, Intertask Conflict-Aware (ITCA) accounting
  • cal solution: full share & fair share
  1. How do they validate their solution?
  • use MPsim simulator: a highly flexible cycle-accurate simulator that allows us to model CMP architectures
  • SPEC CPU 2000
    • classify benchmarks into two groups depending on their cache behavior
    • 评估指标:
  1. What are the strengths and limiations of their solution?

strengths: 可以跟踪不同tasks使用的core和算力
limiations: 需要在寄存器层面上作修改

  1. They did their work on Intel CPU with Hyper-Threading. Did Intel use their solution? Why or why not?
  2. What did Intel do?
  3. Do we still have the problem of misleading CPU utilization?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bernard5

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值