Solaris 动态跟踪指南

第 29 章 fpuinfo 提供器

fpuinfo 提供器提供了与 SPARC 微处理器中的模拟浮点指令对应的探测器。虽然大多数浮点指令是在硬件中执行的,但有些浮点操作会陷入操作系统以进行模拟。浮点操作需要进行操作系统模拟的条件特定于微处理器实现。需要进行模拟的操作很少。但是,如果应用程序经常使用这些操作之一,则可能会严重影响性能。fpuinfo 提供器通过查看 kstat(1M)fpu_info 内核统计信息或 trapstat(1M)fp-xcp-other 陷阱可以对浮点模拟进行快速调查。

探测器

fpuinfo 提供器为可以模拟的每一种类型的浮点指令都提供了探测器。fpuinfo 提供器包含 CPU 的“名称稳定性”;探测器的名称特定于微处理器实现,不可以在同一系列的不同微处理器中使用。例如,所列出的一些探测器可能仅允许在 UltraSPARC-III 中使用,而不能在 UltraSPARC-III+ 中使用,反之亦然。

表 29–1 中描述了 fpuinfo 探测器。

表 29–1 fpuinfo 探测器

fpu_sim_fitoq

内核模拟 fitoq 指令时将触发的探测器。

fpu_sim_fitod

内核模拟 fitod 指令时将触发的探测器。

fpu_sim_fitos

内核模拟 fitos 指令时将触发的探测器。

fpu_sim_fxtoq

内核模拟 fxtoq 指令时将触发的探测器。

fpu_sim_fxtod

内核模拟 fxtod 指令时将触发的探测器。

fpu_sim_fxtos

内核模拟 fxtos 指令时将触发的探测器。

fpu_sim_fqtox

内核模拟 fqtox 指令时将触发的探测器。

fpu_sim_fdtox

内核模拟 fdtox 指令时将触发的探测器。

fpu_sim_fstox

内核模拟 fstox 指令时将触发的探测器。

fpu_sim_fqtoi

内核模拟 fqtoi 指令时将触发的探测器。

fpu_sim_fdtoi

内核模拟 fdtoi 指令时将触发的探测器。

fpu_sim_fstoi

内核模拟 fstoi 指令时将触发的探测器。

fpu_sim_fsqrtq

内核模拟 fsqrtq 指令时将触发的探测器。

fpu_sim_fsqrtd

内核模拟 fsqrtd 指令时将触发的探测器。

fpu_sim_fsqrts

内核模拟 fsqrts 指令时将触发的探测器。

fpu_sim_fcmpeq

内核模拟 fcmpeq 指令时将触发的探测器。

fpu_sim_fcmped

内核模拟 fcmped 指令时将触发的探测器。

fpu_sim_fcmpes

内核模拟 fcmpes 指令时将触发的探测器。

fpu_sim_fcmpq

内核模拟 fcmpq 指令时将触发的探测器。

fpu_sim_fcmpd

内核模拟 fcmpd 指令时将触发的探测器。

fpu_sim_fcmps

内核模拟 fcmps 指令时将触发的探测器。

fpu_sim_fdivq

内核模拟 fdivq 指令时将触发的探测器。

fpu_sim_fdivd

内核模拟 fdivd 指令时将触发的探测器。

fpu_sim_fdivs

内核模拟 fdivs 指令时将触发的探测器。

fpu_sim_fdmulx

内核模拟 fdmulx 指令时将触发的探测器。

fpu_sim_fsmuld

内核模拟 fsmuld 指令时将触发的探测器。

fpu_sim_fmulq

内核模拟 fmulq 指令时将触发的探测器。

fpu_sim_fmuld

内核模拟 fmuld 指令时将触发的探测器。

fpu_sim_fmuls

内核模拟 fmuls 指令时将触发的探测器。

fpu_sim_fsubq

内核模拟 fsubq 指令时将触发的探测器。

fpu_sim_fsubd

内核模拟 fsubd 指令时将触发的探测器。

fpu_sim_fsubs

内核模拟 fsubs 指令时将触发的探测器。

fpu_sim_faddq

内核模拟 faddq 指令时将触发的探测器。

fpu_sim_faddd

内核模拟 faddd 指令时将触发的探测器。

fpu_sim_fadds

内核模拟 fadds 指令时将触发的探测器。

fpu_sim_fnegd

内核模拟 fnegd 指令时将触发的探测器。

fpu_sim_fnegq

内核模拟 fneqq 指令时将触发的探测器。

fpu_sim_fnegs

内核模拟 fnegs 指令时将触发的探测器。

fpu_sim_fabsd

内核模拟 fabsd 指令时将触发的探测器。

fpu_sim_fabsq

内核模拟 fabsq 指令时将触发的探测器。

fpu_sim_fabss

内核模拟 fabss 指令时将触发的探测器。

fpu_sim_fmovd

内核模拟 fmovd 指令时将触发的探测器。

fpu_sim_fmovq

内核模拟 fmovq 指令时将触发的探测器。

fpu_sim_fmovs

内核模拟 fmovs 指令时将触发的探测器。

fpu_sim_fmovr

内核模拟 fmovr 指令时将触发的探测器。

fpu_sim_fmovcc

内核模拟 fmovcc 指令时将触发的探测器。

参数

fpuinfo 探测器没有参数。

稳定性

fpuinfo 提供器使用 DTrace 的稳定性机制来描述其稳定性,如下表所示。有关稳定性机制的更多信息,请参见第 39 章

元素 

名称稳定性 

数据稳定性 

相关性类 

提供器 

发展中 

发展中 

CPU

模块 

专用 

专用 

未知 

功能 

专用 

专用 

未知 

名称 

发展中 

发展中 

CPU

参数 

发展中 

发展中 

CPU