自动添加 CPU 虚拟处理器

当数据库服务器启动时,CPU 虚拟处理器数 (VP) 自动增加到计算机上 CPU 处理器数的一半。CPU 处理器与 CPU VP 的这一比率是建议的最小值,用于确保数据库服务器在大多数情况下都以最佳状态执行。

启动期间,数据库服务器会计算 CPU VP 目标数(其表示等于或大于 CPU 处理器数一半的偶数),并将该目标数与当前分配的 CPU VP 数进行比较。数据库服务器会添加必要的 CPU VP 数以等于目标数。

如果配置的 CPU VP 少于 8 个,那么服务器可动态添加 CPU VP 以达到总计 8 个(已配置的加上已添加的)。

SINGLE_CPU_VP 配置参数必须设置为 0,才能自动添加 CPU VP。自动添加 CPU VP 时,VPCLASS 配置参数值在 onconfig 文件中不会更新;因此,CPU VP 的 VPCLASS 配置参数值可能与实际的已配置 CPU VP 数不同。

使用调度程序中的 auto_tune_cpu_vps 任务来控制 CPU VP 的自动添加。要防止自动添加 CPU VP,请禁用 sysadmin 数据库中 ph_task 表中的 auto_tune_cpu_vps 任务:

UPDATE ph_task
  SET tk_enable = 'F'
WHERE tk_name = 'auto_tune_cpu_vps';

下表显示可能的配置和将在每个情况中自动添加的 CPU VP 数。

表 1. 有关如何自动添加 CPU VP 的示例
CPU 处理器数 目标 CPU VP 数 已分配的 CPU VP 数 已自动添加的 CPU VP 数
8 4 3 1
3 2 2 0
24 8 6 2