Guia de rastreamento dinâmico Solaris

Capítulo 29 Provedor fpuinfo

O provedor fpuinfo disponibiliza os testes que correspondem à simulação de instruções de ponto flutuante nos microprocessadores SPARC. Enquanto a maioria das instruções de ponto flutuante são executadas em hardware, algumas operações de ponto flutuante são feitas no sistema operacional para simulação. As condições sob as quais as operações de ponto flutuante requerem simulação do sistema operacional são específicas de uma implementação de microprocessador. As operações que requerem simulação são raras. Entretanto, se um aplicativo usasse uma dessas operações freqüentemente, o efeito no desempenho poderia ser grave. O provedor fpuinfo permite a rápida investigação da simulação de ponto flutuante vista através de kstat(1M) e da estatística do kernel fpu_info ou trapstat(1M) e da interceptação fp-xcp-other.

Testes

O provedor fpuinfo disponibiliza um teste para cada tipo de instrução de ponto flutuante que pode ser simulada. O provedor fpuinfo possui uma Estabilidade de Nome de CPU; os nomes dos testes são específicos de uma implementação de microprocessador, e podem não estar disponíveis em microprocessadores diferentes na mesma família. Por exemplo, alguns dos testes listados podem estar disponíveis somente no UltraSPARC-III e não no UltraSPARC-III+ ou vice-versa.

Os testes do fpuinfo estão descritos na Tabela 29–1.

Tabela 29–1 Testes fpuinfo

fpu_sim_fitoq

Teste que é acionado sempre que uma instrução fitoq é simulada pelo kernel.

fpu_sim_fitod

Teste que é acionado sempre que uma instrução fitod é simulada pelo kernel.

fpu_sim_fitos

Teste que é acionado sempre que uma instrução fitos é simulada pelo kernel.

fpu_sim_fxtoq

Teste que é acionado sempre que uma instrução fxtoq é simulada pelo kernel.

fpu_sim_fxtod

Teste que é acionado sempre que uma instrução fxtod é simulada pelo kernel.

fpu_sim_fxtos

Teste que é acionado sempre que uma instrução fxtos é simulada pelo kernel.

fpu_sim_fqtox

Teste que é acionado sempre que uma instrução fqtox é simulada pelo kernel.

fpu_sim_fdtox

Teste que é acionado sempre que uma instrução fdtox é simulada pelo kernel.

fpu_sim_fstox

Teste que é acionado sempre que uma instrução fstox é simulada pelo kernel.

fpu_sim_fqtoi

Teste que é acionado sempre que uma instrução fqtoi é simulada pelo kernel.

fpu_sim_fdtoi

Teste que é acionado sempre que uma instrução fdtoi é simulada pelo kernel.

fpu_sim_fstoi

Teste que é acionado sempre que uma instrução fstoi é simulada pelo kernel.

fpu_sim_fsqrtq

Teste que é acionado sempre que uma instrução fsqrtq é simulada pelo kernel.

fpu_sim_fsqrtd

Teste que é acionado sempre que uma instrução fsqrtd é simulada pelo kernel.

fpu_sim_fsqrts

Teste que é acionado sempre que uma instrução fsqrts é simulada pelo kernel.

fpu_sim_fcmpeq

Teste que é acionado sempre que uma instrução fcmpeq é simulada pelo kernel.

fpu_sim_fcmped

Teste que é acionado sempre que uma instrução fcmped é simulada pelo kernel.

fpu_sim_fcmpes

Teste que é acionado sempre que uma instrução fcmpes é simulada pelo kernel.

fpu_sim_fcmpq

Teste que é acionado sempre que uma instrução fcmpq é simulada pelo kernel.

fpu_sim_fcmpd

Teste que é acionado sempre que uma instrução fcmpd é simulada pelo kernel.

fpu_sim_fcmps

Teste que é acionado sempre que uma instrução fcmps é simulada pelo kernel.

fpu_sim_fdivq

Teste que é acionado sempre que uma instrução fdivq é simulada pelo kernel.

fpu_sim_fdivd

Teste que é acionado sempre que uma instrução fdivd é simulada pelo kernel.

fpu_sim_fdivs

Teste que é acionado sempre que uma instrução fdivs é simulada pelo kernel.

fpu_sim_fdmulx

Teste que é acionado sempre que uma instrução fdmulx é simulada pelo kernel.

fpu_sim_fsmuld

Teste que é acionado sempre que uma instrução fsmuld é simulada pelo kernel.

fpu_sim_fmulq

Teste que é acionado sempre que uma instrução fmulq é simulada pelo kernel.

fpu_sim_fmuld

Teste que é acionado sempre que uma instrução fmuld é simulada pelo kernel.

fpu_sim_fmuls

Teste que é acionado sempre que uma instrução fmuls é simulada pelo kernel.

fpu_sim_fsubq

Teste que é acionado sempre que uma instrução fsubq é simulada pelo kernel.

fpu_sim_fsubd

Teste que é acionado sempre que uma instrução fsubd é simulada pelo kernel.

fpu_sim_fsubs

Teste que é acionado sempre que uma instrução fsubs é simulada pelo kernel.

fpu_sim_faddq

Teste que é acionado sempre que uma instrução faddq é simulada pelo kernel.

fpu_sim_faddd

Teste que é acionado sempre que uma instrução faddd é simulada pelo kernel.

fpu_sim_fadds

Teste que é acionado sempre que uma instrução fadds é simulada pelo kernel.

fpu_sim_fnegd

Teste que é acionado sempre que uma instrução fnegd é simulada pelo kernel.

fpu_sim_fnegq

Teste que é acionado sempre que uma instrução fneqq é simulada pelo kernel.

fpu_sim_fnegs

Teste que é acionado sempre que uma instrução fnegs é simulada pelo kernel.

fpu_sim_fabsd

Teste que é acionado sempre que uma instrução fabsd é simulada pelo kernel.

fpu_sim_fabsq

Teste que é acionado sempre que uma instrução fabsq é simulada pelo kernel.

fpu_sim_fabss

Teste que é acionado sempre que uma instrução fabss é simulada pelo kernel.

fpu_sim_fmovd

Teste que é acionado sempre que uma instrução fmovd é simulada pelo kernel.

fpu_sim_fmovq

Teste que é acionado sempre que uma instrução fmovq é simulada pelo kernel.

fpu_sim_fmovs

Teste que é acionado sempre que uma instrução fmovs é simulada pelo kernel.

fpu_sim_fmovr

Teste que é acionado sempre que uma instrução fmovr é simulada pelo kernel.

fpu_sim_fmovcc

Teste que é acionado sempre que uma instrução fmovcc é simulada pelo kernel.

Argumentos

Não há argumentos para testes do fpuinfo.

Estabilidade

O provedor fpuinfo usa o mecanismo de estabilidade do DTrace para descrever suas estabilidades, conforme mostrado na tabela seguinte. Para obter mais informações sobre o mecanismo de estabilidade, consulte o Capítulo 39Estabilidade.

Elemento 

Estabilidade de nome 

Estabilidade de dados 

Classe de dependência 

Provedor 

Desenvolvendo 

Desenvolvendo 

CPU

Módulo 

Privada 

Privada 

Desconhecida 

Função 

Privada 

Privada 

Desconhecida 

Nome 

Desenvolvendo 

Desenvolvendo 

CPU

Argumentos 

Desenvolvendo 

Desenvolvendo 

CPU