CPU 管理
以下设置可让您优化 CPU 使用率。
CPU 管理设置
进程可以在所有核心上运行,并可以随意使用任意多的 CPU。在 Workspace Environment Management™ (WEM) 中,CPU 管理设置允许您限制单个进程可以使用的 CPU 容量。CPU 峰值保护并非旨在降低整体 CPU 使用率。它旨在通过限制消耗过多 CPU 使用率的进程来减少对用户体验的影响。
启用 CPU 峰值保护后,如果进程达到指定阈值,WEM 会在一定时间内自动降低该进程的优先级。然后,当启动新应用程序时,它的优先级会高于优先级较低的进程,系统将继续平稳运行。
CPU 峰值保护会快速“快照”检查每个进程。如果进程的平均负载在指定采样时间内超过指定的使用限制,其优先级会立即降低。在指定时间后,进程的 CPU 优先级会恢复到之前的值。进程不会被“限制”。与 CPU 限制不同,只会降低其优先级。
只有当单个进程的至少一个实例超过阈值时,才会触发 CPU 峰值保护。换句话说,即使总 CPU 消耗超过指定阈值,除非至少有一个进程实例超过阈值,否则不会触发 CPU 峰值保护。但是,当该进程实例触发 CPU 峰值保护时,如果启用了“启用智能 CPU 优化”选项,则同一进程的新实例将进行(CPU)优化。
每当特定进程触发 CPU 峰值保护时,该事件都会记录在代理的本地数据库中。代理会为每个用户单独记录触发事件。这意味着针对 user1 的特定进程的 CPU 优化不会影响 user2 的同一进程的行为。
例如,如果 Internet Explorer 有时会占用 50–60% 的 CPU,您可以使用 CPU 峰值保护仅针对那些威胁 VDA 性能的 iexplore.exe 实例。(相比之下,CPU 限制将应用于所有进程。)
我们建议您尝试不同的采样时间,以确定适合您的环境且不影响登录到同一 VDA 的其他用户的最佳值。
CPU 峰值保护
注意:
-
以下设置中的 CPU 使用率 基于物理机或虚拟机中的逻辑处理器。逻辑处理器的总数可以从物理机或虚拟机的系统信息中获取。如果物理机或虚拟机共有 48 个逻辑处理器,并且限制在物理机或虚拟机上触发 CPU 峰值保护的进程使用其一半的核心,则将 CPU 核心使用限制设置为 24。
启用 CPU 峰值保护。如果进程在一段时间内(在限制采样时间字段中指定)超过指定的 CPU 使用率百分比,则在一段时间内(在空闲优先级时间字段中指定)降低其 CPU 优先级。
-
自动防止 CPU 峰值。使用此选项可自动降低使 CPU 过载的进程的 CPU 优先级。此选项根据逻辑处理器(CPU 核心)的数量自动计算触发 CPU 峰值保护的阈值。例如,假设有四个核心。启用此选项后,如果整体 CPU 使用率超过 23%,则消耗超过 15% 整体 CPU 资源的进程的 CPU 优先级会自动降低。同样,在 8 个核心的情况下,如果整体 CPU 使用率超过 11%,则消耗超过 8% CPU 资源的进程的 CPU 优先级会自动降低。
-
自定义 CPU 峰值保护。允许您自定义 CPU 峰值保护的设置。
-
CPU 使用限制。任何进程实例必须达到的 CPU 使用率百分比,才能触发 CPU 峰值保护。此限制在服务器中的所有逻辑处理器上是全局的,并按实例-进程确定。在确定 CPU 峰值保护触发器时,同一进程的多个实例的 CPU 使用率百分比不会相加。如果进程实例从未达到此限制,则不会触发 CPU 峰值保护。例如,在服务器 VDA 上,在多个并发会话中,假设有许多 iexplore.exe 实例。每个实例在一段时间内达到约 35% 的 CPU 使用率峰值,因此累积起来,iexplore.exe 持续消耗高百分比的 CPU 使用率。但是,除非您将 CPU 使用限制设置为 35% 或更低,否则永远不会触发 CPU 峰值保护。
-
限制采样时间。进程必须超出 CPU 使用限制的时间长度,之后其 CPU 优先级才会降低。
-
空闲优先级时间。进程的 CPU 优先级降低的时间长度。在此时间之后,优先级将返回到以下其中一项:
-
如果未在“CPU 优先级”选项卡上指定进程优先级,并且未选择“启用智能 CPU 优化”选项,则为默认级别(正常)。
-
如果已在“CPU 优先级”选项卡上指定进程优先级,则为指定级别,无论是否选择“启用智能 CPU 优化”选项。
-
根据进程行为而定的随机级别。如果未在“CPU 优先级”选项卡上指定进程优先级,并且已选择“启用智能 CPU 优化”选项,则会出现这种情况。进程触发 CPU 峰值保护的频率越高,其 CPU 优先级就越低。
-
-
启用 CPU 核心使用限制。将触发 CPU 峰值保护的进程限制为计算机上指定数量的逻辑处理器。键入 1 到 X 范围内的整数,其中 X 是核心总数。如果键入大于 X 的整数,WEM 默认会将隔离进程的最大消耗限制为 X。
-
限制 CPU 核心使用。指定触发 CPU 峰值保护的进程所限制的逻辑处理器数量。对于虚拟机,您键入的值会将进程限制为虚拟机中的逻辑处理器数量,而不是底层物理硬件中的逻辑处理器数量。
启用智能 CPU 优化。启用后,代理会智能优化触发 CPU 峰值保护的进程的 CPU 优先级。与行为正常的进程相比,重复触发 CPU 峰值保护的进程在启动时会被分配逐渐降低的 CPU 优先级。请注意,WEM 不会对以下系统进程执行 CPU 优化:
-
任务管理器
-
系统空闲进程
-
系统
-
服务主机
-
LSASS
-
Windows 初始化
-
服务
-
赛艾斯艾尔艾斯艾斯
-
奥迪欧迪吉
-
MsMpEng
-
NisSrv
-
艾姆艾斯考尔斯维
-
威姆威尔瑞索鲁申赛特
启用智能 I/O 优化。启用后,代理会智能优化触发 CPU 峰值保护的进程的 I/O 优先级。与行为正常的进程相比,反复触发 CPU 峰值保护的进程在启动时会被分配逐渐降低的 I/O 优先级。
排除指定进程。默认情况下,WEM CPU 管理会排除所有最常见的 Citrix 和 Windows 核心服务进程。但是,您可以使用此选项通过可执行文件名称(例如 notepad.exe)从 CPU 峰值保护的排除列表中添加或删除进程。通常,防病毒进程会被排除在外。
提示:
-
为了防止防病毒扫描占用会话中的磁盘 I/O,您还可以为防病毒进程设置静态的低 I/O 优先级,请参阅I/O 管理。
-
当进程触发 CPU 峰值保护且进程 CPU 优先级降低时,WEM 每次降低进程的 CPU 优先级都会记录一条警告。在事件日志的“应用程序和服务日志”下的“WEM 代理服务”中,查找“Initializing process limitation thread for process”。
CPU 峰值保护选项
选择您希望如何实施 CPU 峰值保护:
-
自动防止 CPU 峰值。使用此选项可让代理在系统 CPU 使用率(相对于单个 CPU 核心)超过 90% 且进程 CPU 使用率(相对于单个 CPU 核心)超过 80% 时执行 CPU 峰值保护。
-
自定义 CPU 峰值保护。允许您自定义 CPU 峰值保护的设置。
-
CPU 使用率限制。任何进程实例必须达到的 CPU 使用率百分比,才能触发 CPU 峰值保护。此限制在服务器上的所有逻辑处理器中是全局性的,并按实例-进程确定。要根据单个 CPU 核心作为参考配置限制,请使用“将限制设置为相对于单个 CPU 核心”选项。
注意:-
支持整数值和非整数值。通过输入非整数值(例如 37.5%),您可以限制在八核平台上使用三个以上核心的进程。
-
相对于单个 CPU 核心设置限制。允许您根据单个 CPU 核心作为参考来设置 CPU 使用率限制。该值可以大于 100%,例如 200% 或 250%。示例:当值设置为 200% 时,代理会优化使用两个或更多 CPU 核心的进程。支持整数值和非整数值。您只能为 WEM Web 控制台配置相对于单个 CPU 核心设置限制设置。
-
配置自定义 CPU 峰值保护后,当达到全局 CPU 使用率限制或相对于单个 CPU 核心的 CPU 使用率限制时(以先发生者为准),将触发 CPU 峰值保护。
-
对于触发 CPU 峰值保护的进程,代理可以执行以下操作:
-
如果未选择启用 CPU 核心使用率限制选项:代理会降低这些进程的 CPU 优先级。
-
如果选择了启用 CPU 核心使用率限制选项:代理会降低这些进程的 CPU 优先级,并将其限制为计算机上指定数量的逻辑处理器。
配置 CPU 峰值保护时,请记住以下几点:
-
在确定 CPU 峰值保护触发器时,同一进程的多个实例的 CPU 使用率百分比不会相加。如果进程实例从未达到此限制,则不会触发 CPU 峰值保护。例如,在具有多个并发会话的多会话 VDA 的情况下,存在多个 chrome.exe 进程。在计算 CPU 使用率时,它们的 CPU 使用率不会相加。
CPU 峰值保护的采样时间
采样时间限制。 进程必须超出 CPU 使用率限制才能强制执行 CPU 峰值保护的时间长度。
CPU 峰值保护的优先级降低时间
空闲优先级时间。进程的 CPU 优先级降低的时间长度。在此时间之后,优先级将恢复为以下之一:
默认级别(正常),如果未在CPU 优先级磁贴中指定进程优先级且未选择启用智能 CPU 优化选项。 指定级别,如果进程优先级在CPU 优先级磁贴中指定,无论是否选择启用智能 CPU 优化选项。 计算出的随机级别,具体取决于进程的行为。如果未在 CPU 优先级磁贴中指定进程优先级且选择了启用智能 CPU 优化选项,则会出现这种情况。进程触发 CPU 峰值保护的频率越高,其 CPU 优先级越低。
其他选项
启用 CPU 核心使用率限制。使用此选项可将触发 CPU 峰值保护的进程限制为计算机上特定数量的逻辑处理器。
CPU 优先级
当进程争用资源时,这些设置会生效。它们允许您优化特定进程的 CPU 优先级,从而使争用 CPU 处理器时间的进程不会导致性能瓶颈。当进程相互竞争时,优先级较低的进程会在优先级较高的其他进程之后得到服务。因此,它们不太可能占用整体 CPU 消耗的很大一部分。
您在此处设置的进程优先级为进程中的所有线程建立“基本优先级”。线程的实际或“当前”优先级可能更高(但绝不会低于基本优先级)。当计算机上运行多个进程时,处理器时间会根据其 CPU 优先级在它们之间共享。进程的 CPU 优先级越高,分配给它的处理器时间就越多。
注意:
如果您为特定进程设置较低的 CPU 优先级,整体 CPU 消耗不一定会降低。可能还有其他进程(具有更高的 CPU 优先级)仍在影响 CPU 使用率。
启用进程优先级。选中后,允许您手动设置进程的 CPU 优先级。
添加进程
-
单击“添加”,并在“添加进程 CPU 优先级”对话框中键入详细信息。
-
单击“确定”关闭对话框。
-
单击“应用”以应用设置。您在此处设置的进程 CPU 优先级在代理接收到新设置并重新启动进程后生效。进程名称。不带扩展名的进程可执行文件名称。例如,对于 Windows 资源管理器 (explorer.exe),键入“explorer”。CPU 优先级。进程中所有线程的“基本”优先级。进程的优先级越高,它获得的处理器时间就越多。从“实时”、“高”、“高于正常”、“正常”、“低于正常”和“低”中选择。
编辑进程
选择进程,然后单击“编辑”。
删除进程
选择进程,然后单击“删除”。
CPU 关联性
启用进程关联性。启用后,您可以定义进程使用的“逻辑处理器”数量。例如,您可以将 VDA 上启动的每个记事本实例限制为定义的内核数量。
CPU 钳制
CPU 钳制可防止进程使用超过 CPU 处理能力的指定百分比。当进程达到您设置的指定 CPU 百分比时,WEM 会“限制”(或“钳制”)该进程。这使您可以防止进程消耗大量 CPU。
注意:
-
CPU 钳制是一种暴力方法,计算成本高昂。为了将问题进程的 CPU 使用率人为地保持在较低水平,最好使用 CPU 峰值保护,同时为这些进程分配静态 CPU 优先级和 CPU 关联性。CPU 钳制最适合用于控制那些资源管理能力极差但又不能降低优先级的进程。
-
为进程应用 CPU 处理能力的某个百分比,然后为同一进程配置不同的百分比后,请选择刷新代理主机设置以使更改生效。
您配置的钳制百分比适用于服务器中任何单个 CPU 的总功率,而不是其包含的任何单个核心。(换句话说,四核 CPU 上的 10% 是整个 CPU 的 10%,而不是一个核心的 10%)。
启用进程钳制。启用进程钳制。
添加。按可执行文件名称添加进程(例如,notepad.exe)。
删除。从钳制列表中删除突出显示的进程。
编辑。编辑为给定进程输入的值。
提示:
-
当 WEM 钳制进程时,它会将该进程添加到 WEM 客户端初始化的监视列表中。您可以通过查看此列表来验证进程是否已钳制。
-
您还可以通过查看进程监视器并确认 CPU 消耗从未超过钳制百分比来验证 CPU 钳制是否正常工作。