监视影响 CPU 利用率的资源

线程、网络通信和虚拟处理器会影响 CPU 利用率。可以使用 onstat -g 参数来监视线程、网络通信和虚拟处理器。

使用以下 onstat -g 命令选项来监视线程。

onstat -g 选项 描述
act 显示活动的线程。
ath 显示所有线程。

sqlexec 线程代表客户机会话部分;rstcb 值与 onstat -u 命令的用户字段相对应。

cpu 显示上次运行线程的时间、线程使用了多少 CPU 时间、线程运行的次数以及有关服务器中运行的所有线程的其他统计信息。
rea 显示就绪线程。
sle 显示所有睡眠的线程。
sts 显示每个线程使用的最大堆栈和当前堆栈。
tpf tid 显示 tid 的线程概要文件。

如果 tid0,那么此参数显示所有线程的概要文件。

wai 显示等待的线程,包括所有正在等待互斥或条件或正在让出的线程。

使用以下 onstat -g 命令选项来监视网络。

onstat -g 命令选项 描述
ntd 按服务显示网络统计信息。
ntt 显示网络用户时间。
ntu 显示网络用户统计信息。
qst 显示队列统计信息。

使用以下 onstat -g 命令选项来监视虚拟处理器。

onstat -g 命令选项 描述
glo 显示全局多线程信息,包括有关虚拟处理器的 CPU 使用信息、会话总数以及其他多线程全局计数器。
sch 显示每个 VP 的信号量操作、循环以及忙碌等待的数目。
spi 显示长自旋,它们是虚拟处理器在自旋 10000 次以上之后获得的自旋锁。

要减少长自旋,可以减少虚拟处理器的数量、降低计算机的负载,或者(在某些平台上)使用无年龄处理器亲缘关系功能。

wst 显示等待统计信息。