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 峰值保护时,该事件都会记录在代理的本地数据库中。 代理分别记录每个用户的触发器事件。 这意味着用户 1 的特定进程的 CPU 优化不会影响用户 2 的同一进程的行为。

例如,如果 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%,则占用总 CPU 资源 15% 以上的进程的 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 峰值保护的进程受限于的逻辑处理器数量。 对于 VM,您键入的值将进程限制为虚拟机中的逻辑处理器数量,而不是底层物理硬件中的逻辑处理器数量。

启用智能 CPU 优化。 启用后,代理会智能地优化触发 CPU 峰值保护的进程的 CPU 优先级。 反复触发 CPU 峰值保护的进程在启动时分配的 CPU 优先级会逐渐低于行为正确的进程。 请注意,WEM 不会为以下系统进程执行 CPU 优化:

  • Taskmgr
  • 系统空闲进程
  • 系统
  • Svchost
  • LSASS
  • Wininit
  • services
  • csrss
  • audiodg
  • MsMpEng
  • NisSrv
  • mscorsvw
  • vmwareresolutionset

启用智能 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 优先级时都会记录一条警告。 在事件日志中,在 Norskale 代理服务的应用程序和服务日志中,查找“正在初始化进程的进程限制线程”。

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 优先级。

添加进程

  1. 单击 添加 并在 添加进程 CPU 优先级 对话框中键入详细信息。
  2. 单击确定关闭对话框。
  3. 单击 应用 以应用设置。 您在此处设置的进程 CPU 优先级将在代理接收新设置并重新启动进程时生效。

    进程名称。 没有扩展名的进程可执行文件名称。 例如,对于 Windows 资源管理器 (explorer.exe),请键入“explorer”。

    CPU 优先级。 进程中所有线程的“基本”优先级。 进程的优先级越高,处理器获得的时间就越多。 从“实时”、“高”、“高于正常”、“正常”、“低于正常”和“低”中选择。

编辑进程

选择进程,然后单击编辑

删除进程

选择进程,然后单击删除

CPU 相关性

启用进程相关性。 启用后,允许您定义一个进程使用多少个“逻辑处理器”。 例如,您可以将在 VDA 上启动的记事本的每个实例限制为定义的内核数。

CPU 固定

CPU 限制可防止进程使用超过 CPU 处理能力的指定百分比。 当 WEM 达到指定的 CPU 百分比时,WEM“限制”(或“夹紧”)该进程。 这样可以防止进程占用大量 CPU。

注意:

  • CPU 固定是一种蛮力方法,计算上很昂贵。 为了人为地保持麻烦进程的 CPU 使用率较低,最好使用 CPU 峰值保护,同时为这些进程分配静态 CPU 优先级和 CPU 关联性。 CPU 限制最好是为了控制那些在资源管理方面臭名昭著不好但不能放弃优先级的进程而保留 CPU 限制。
  • 在对某个进程应用 CPU 处理能力的一定百分比并稍后为同一进程配置不同的百分比后,请选择“刷新代理主机设置”以使更改生效。

您配置的固定百分比应用于服务器中任何单个 CPU 的总功率,而不是其包含的任何单独内核。 (换句话说,四核 CPU 上的 10% 是整个 CPU 的 10%,而不是一个核心的 10%)。

启用进程固定。 启用进程固定。

添加。 按可执行文件名称(例如 notepad.exe)添加进程。

移除。 从固定列表中移除突出显示的进程。

编辑。 编辑为给定进程键入的值。

提示:

  • 当 WEM 固定进程时,它会将进程添加到 WEM 客户端初始化的监视列表中。 您可以通过查看此内容来验证进程是否被固定。
  • 您还可以通过查看过程监视器并确认 CPU 消耗永远不会超过固定百分比来验证 CPU 固定是否正常工作。
CPU 管理