getconf CLK_TCK and CONFIG_HZ

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Im trying to do a little benchmarking of perl, and have patched its distro files
to run perl's times() function on each of the ~1900 test files.
perl's times() uses man 2 times internally, which I presume reduces to a system-call

The standard distro can be run as: HARNESS_TIMER=1 make test
but this counts only wall-clock time, and is thus sensitive to system load.
times does better, 

Anyway, the 1st thing I noticed on the times numbers was that they all have 10ms granularity.

This agrees with sysconf granularity :
$ getconf CLK_TCK
100

but not with linux kernel HZ:
$ grep _HZ /boot/config-`uname -r`
CONFIG_RCU_FAST_NO_HZ=y
CONFIG_NO_HZ=y
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not set
CONFIG_HZ_1000=y
CONFIG_HZ=1000

Confusingly, man 2 times says :
NOTES
       The number of clock ticks per second can be obtained using:

           sysconf(_SC_CLK_TCK);

       In POSIX.1-1996 the symbol CLK_TCK (defined in <time.h>)  is  mentioned
       as obsolescent.  It is obsolete now.

but linux (fedora 13) seems to disagree :

$ getconf _SC_CLK_TCK
getconf: Unrecognized variable `_SC_CLK_TCK'


So, the Questions:

Why arent they the same ? or what am I missing wrt 
the relationship between sysconf(CLK_TCK) and kernel HZ ?

Is it possible to coax the kernel into counting times in 1ms via some cmd-line option ?
I searched Documentation/kernel-parameters.txt, found nothing.

is it possible to compile kernel with different HZ options to get the 1ms resolution ?

Why doesnt times() also count IO-wait states for a process (and children) ?
I note that top reports it (as a system-wide measure)
and System Monitor 2.30.0 displays it (same system-wide measure)

hypothetically, if IO-wait numbers were collected by times 
(API/ABI change, so never gonna happen) would it be able to reveal anything ?
Id expect it to show measure disk activity due to the process, and arguably be 
sensitive to system load, unlike user, sys, child-user, child-sys numbers
but it still sounds useful.

Could process specific IO-wait numbers reveal anything about cache performance ?

Do cache misses contribute to IO-wait, or do they get counted in other ways ?

_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux