Saturday, December 17, 2005

Disabling CPUs on Linux- Part Two

If the server is supporting Hyperthreading, Linux implements the following mechanism:
  • First all the physical CPU's are enabled and then
  • then the logical CPU's are enabled
This means that all the possible combinations can be enabled by specifying the maxcpu parameter in the boot command mentioned in the earlier post. For instance if the server has more than one physical CPU it is not possible to test one physical CPU with Hyperthreading enabled.

It goes without saying that it is necessary to be careful when limiting the number of CPUs to always create symmetric configurations. What this means is that should be avoided that some physical processors have Hyperthreading enabled and others not. This can can lead to very difficult to analyze queueing effects and perturbation.

Tuesday, December 13, 2005

Granularity of CPU statistics in V$SERVICE_STATS

After making several tests it turns out that the "DB CPU" statistics in the view V$SERVICE_STATS only has a granularity of centiseconds despite what the documentation says.