cpu_count: 此参数标明了oracle可用的CPU核数(确切的应该要跟parallel_threads_per_cpu合并考虑)


default 0  --- 自动监控管理与分配

N             ---  db可利用的CPU核数(N核)


parallel_threads_per_cpu:CPU线程 (>1超线程)


总CPUS(db可利用核数)=cpu_count * parallel_threads_per_cpu


parallel_max_servers:  并行SQL所能用的进程数上限

default=cpu_count * parallel_threads_per_cpu*N*5

 

1 MEMORY_TARGET or SGA_TARGET任一参数设置了初始值,那么N=4

2 如果以上两个参数都没有静态设置,那么会检查PGA_AGGREGATE_TARGET参数

1)PGA_AGGREGATE_TARGET>0  N=2

2)PGA_AGGREGATE_TARGET未设置 N=1


parallel_min_servers:Oracle 在instance启动的时预先启动的并行服务进程。


因为每个服务进程都将从pga分配一个chunk,并行服务器如此分配与释放,也需要花费一定时间。所以在实例启动之时设定该值,可以让一部分预定chunk具有了持久性(除非实例关闭)。



操作系统CPU详情:


1 cat /proc/cpuinfo   --- grep physical id|sort|uniq|wc -l


2 lscpu


CPU(s)  --- 操作系统逻辑CPU的总核数

Socket(s)  ---物理CPU的个数

Core(s) per socket  ----每个物理CPU的核数

Thread(s) per core ---线程数