Reports emulated instruction counts.
emstat [ Interval ] [ Count ]
The emstat command reports statistics about how many instructions the system must emulate. The emulated instruction count should be used to determine whether an application needs to be recompiled to eliminate instructions that must be emulated on 601 PowerPC or 604 PowerPC processors. If an instruction has to be emulated, more CPU cycles are required to execute this instruction than an instruction that does not have to be emulated.
If an application was compiled on AIX Version 3, the application may contain instructions that are not available on 601 or 604 processors. The 601 has most of the POWER instructions; it lacks about five instructions that are rarely executed, so problems are rarely seen. The 604 processor lacks about 35 of the POWER instructions, so the chances for emulation are higher.
This emulated instruction phenomenon occurs with applications that were not compiled in common mode on AIX Version 3 and that are now running on a 601 or 604 processor without being recompiled. If the application was compiled on AIX Version 4, the default compilation option is common, so only instructions that are common to all the processors would be included in the executable. Emulated instructions could also occur on a 601 or a 604 processor if an application was compiled for a specific architecture, such as POWER or POWER2.
The resolution is to recompile the application, either on AIX Version 4 or on AIX Version 3.2.5 using the qarch=com option. For compiling in common mode on AIX Version 3.2.5, an APAR that introduces this common code is required.
The Interval parameter specificies the amount of time in seconds between each report. The first report contains statistics for the time since system startup. Subsequent reports contain statistics collected during the interval since the previous report. If the Interval parameter is not specified, the emstat command generates a single report and then exits.
The Count parameter can only be specified with the Interval parameter. If the Count parameter is specified, its value determines the number of reports generated. If the Interval parameter is specified without the Count parameter, reports are continuously generated. A Count parameter of 0 is not allowed.
The first column is the total number of emulated instructions since the last system reboot. The second column is the number of emulated instructions during the interval.