PowerShell :: Get-Counter 显示错误的 CPU 用法
PowerShell :: Get-Counter shows wrong CPU usage
在 official Microsoft documentation 之后,我找到了一个应该打印 CPU 用法的命令:
Get-Counter -Counter "\Processor(_Total)\% Processor Time" -Continuous
问题是它打印 CPU 用法时有 5-10% 的差异(单击 GIF 以获得更好的视图):
这尤其糟糕,因为在迁移到 Azure SQL DB 之前,Microsoft suggests 命令 Get-Counter
作为 DTU 计算的官方方式。
它可以在我的电脑上正常工作。
但就我而言,当我使用 -sampleinterval 2
时它更可靠
Get-Counter -Counter "\Processor(_Total)\% Processor Time" -Continuous -SampleInterval 2
但如前所述,here:This 示例每秒为计数器获取连续样本。要停止该命令,请按 CTRL+C。要指定样本之间的较长间隔,请使用 SampleInterval 参数。
Get-Counter
你到底想做什么?
即使我运行:
typeperf "\Processor(_Total)\% Processor Time"
CPU计算总是有出入。
Get-Counter
按预期工作,总会有差异。
如果您转到“任务管理器”>“查看”>“更新速度”>“高”,可以减少此类差异
这样刷新率会更高,Get-Counter
的结果更接近您在任务管理器中看到的结果。但不要指望是一样的。
在 official Microsoft documentation 之后,我找到了一个应该打印 CPU 用法的命令:
Get-Counter -Counter "\Processor(_Total)\% Processor Time" -Continuous
问题是它打印 CPU 用法时有 5-10% 的差异(单击 GIF 以获得更好的视图):
这尤其糟糕,因为在迁移到 Azure SQL DB 之前,Microsoft suggests 命令 Get-Counter
作为 DTU 计算的官方方式。
它可以在我的电脑上正常工作。 但就我而言,当我使用 -sampleinterval 2
时它更可靠Get-Counter -Counter "\Processor(_Total)\% Processor Time" -Continuous -SampleInterval 2
但如前所述,here:This 示例每秒为计数器获取连续样本。要停止该命令,请按 CTRL+C。要指定样本之间的较长间隔,请使用 SampleInterval 参数。 Get-Counter
你到底想做什么?
即使我运行:
typeperf "\Processor(_Total)\% Processor Time"
CPU计算总是有出入。
Get-Counter
按预期工作,总会有差异。
如果您转到“任务管理器”>“查看”>“更新速度”>“高”,可以减少此类差异
这样刷新率会更高,Get-Counter
的结果更接近您在任务管理器中看到的结果。但不要指望是一样的。