跳过导航链接 | |
退出打印视图 | |
Oracle VM Server for SPARC 3.0 管理指南 Oracle VM Server for SPARC (简体中文) |
第 1 部分Oracle VM Server for SPARC 3.0 软件
1. Oracle VM Server for SPARC 软件概述
3. Oracle VM Server for SPARC 安全
硬分区系统与其他 Oracle VM Server for SPARC 功能之间的交互
第 2 部分可选的 Oracle VM Server for SPARC 软件
13. Oracle VM Server for SPARC 物理机到虚拟机转换工具
14. Oracle VM Server for SPARC Configuration Assistant (Oracle Solaris 10)
16. 使用 Oracle VM Server for SPARC 管理信息库软件
17. Logical Domains Manager 发现
从各个域的相同核心运行线程时,可能会遇到不可预测的性能降低现象。Oracle VM Server for SPARC 软件使用 CPU 关联性功能在逻辑域绑定过程中优化 CPU 分配,此操作发生在可以启动域之前。此功能尝试从分配给同一逻辑域的同一核心启动线程,因此此类分配可改善同一核心内线程间的高速缓存共享。
除非没有其他资源,否则 CPU 关联性将尝试避免在域之间共享核心。如果域已分配有部分核心并请求更多的导线束,则会首先绑定该部分核心的导线束,然后查找另一个可用核心以完成请求(如有必要)。
CPU 分配机制针对 CPU 资源使用以下约束:
整体核心约束。此约束指定将 CPU 核心分配给域而不是虚拟 CPU。只要域未启用最大核心数约束,就可以分别使用 ldm set-core 或 ldm set-vcpu 命令来添加或删除整体核心约束。域可以处于非活动、绑定或活动状态。但是,必须有足够的核心可用,以满足应用约束的请求。以最差情况为例,如果与其他域共享核心的域需要整体核心约束,则要求空闲表中的核心可用,以便满足请求。以最佳情况为例,核心中的所有虚拟 CPU 都已在核心边界上,因此无需更改 CPU 资源即可应用约束。
最大核心数约束。此约束指定可以分配给绑定域或活动域的最大核心数。
在设置最大核心数约束之前,最好先确保域已启用整体核心约束。
# ldm set-core 1 domain
# ldm ls -o resmgmt domain
请注意,max-cores 已设置为 unlimited。在启用最大核心数约束之前,域无法与硬分区结合使用。
示例 10-1 应用整体核心约束
此示例说明如何在 ldg1 域上应用整体核心约束。第一个命令用于应用约束,而第二个命令用于验证是否已启用约束:
# ldm set-core 1 ldg1 # ldm ls -o resmgmt ldg1 NAME ldg1 CONSTRAINT cpu=whole-core max-cores=unlimited threading=max-throughput
在设置最大核心数约束之前,最好先确保域已启用整体核心约束。
只能在非活动域上(而不能在绑定域或活动域上)启用、修改或禁用最大核心数约束。在控制域上更新最大核心数约束之前,必须先启动延迟重新配置。
# ldm set-domain max-cores=max-number-of-CPU-cores domain
注 - 增加核心时不会影响与这些核心关联的加密单元。因此,系统不会自动向域中添加关联的加密单元。但是,只有当删除的是核心的最后一个虚拟 CPU 时,加密单元才会自动删除。此操作可防止加密单元被“孤立”。
# ldm ls -o resmgmt domain
# ldm bind domain # ldm start domain
现在,可以将域与硬分区结合使用了。
示例 10-2 应用最大核心数约束
此示例说明如何通过设置 max-cores 属性并验证约束是否已启用,将最大核心数约束为三个核心:
# ldm set-domain max-cores=3 ldg1 # ldm ls -o resmgmt ldg1 NAME ldg1 CONSTRAINT cpu=whole-core max-cores=3 threading=max-throughput
现在,可以将域与硬分区结合使用了。
以下示例从未绑定且非活动的 ldg1 域删除最大核心数约束,但保留整体核心约束不变:
# ldm stop ldg1 # ldm unbind ldg1 # ldm set-domain max-cores=unlimited ldg1
或者,要同时从 ldg1 域删除最大核心数约束和整体核心约束,请按如下所示分配虚拟 CPU(而不是核心):
# ldm set-vcpu 8 ldg1
在任何一种情况下,均绑定并重新启动域。
# ldm bind ldg1 # ldm start ldg1
本节介绍整体核心约束和以下功能之间的交互作用:
整体核心约束与 CPU 动态重新配置 (dynamic reconfiguration, DR) 完全兼容。为域定义整体核心约束后,可以使用 ldm add-core、ldm set-core 或 ldm remove-core 命令更改活动域上的核心数。
但是,如果绑定域或活动域未处于延迟重新配置模式下,则其核心数不能超过最大核心数。最大核心数随最大核心约束进行设置,在启用整体核心约束时会自动启用该约束。任何不满足最大核心约束的 CPU DR 操作都将失败。
整体核心约束与动态资源管理 (dynamic resource management, DRM) 不兼容。如果在使用整体核心约束的域上启用 DRM 策略,系统会自动禁用该策略。整体核心约束会保持启用状态。
即使在使用整体核心约束时无法启用 DRM 策略,您仍可以为域定义 DRM 策略。请注意,自动禁用某策略后,它仍保持活动状态。如果重新启动域时没有启用整体核心约束,则会自动重新启用 DRM 策略。
以下为整体核心约束和 DRM 之间的预期交互作用关系:
如果在域上设置整体核心约束,当您尝试在该域上启用 DRM 策略时系统将发出警告消息。
如果是在非活动域上使用 DRM 策略,则允许您在该域上启用整体核心约束。当该域转为活动状态且 DRM 策略处于启用状态时,系统会为该域自动禁用 DRM 策略。
如果在活动域或绑定域上启用 DRM 策略,则不允许您启用整体核心约束。
如果迁移已配置整体核心的域,您必须在迁移完成后将目标域重新配置为使用硬分区。此外,必须确保您的许可协议允许您在源系统和目标系统上同时使用该域。
整体核心约束与电源管理 (power management, PM) 性能和弹性策略完全兼容。具有有效的弹性策略时,PM 子系统可以向已配置整体核心约束的域添加 CPU 核心或从这些域中删除 CPU 核心。在这种情况下,整体核心约束继续保持启用状态,使用该约束的域仍保持仅配置整体核心。