* HZ manipulation
@ 2005-12-13 8:31 Wojciech Kromer
2005-12-13 13:36 ` Wojciech Kromer
0 siblings, 1 reply; 2+ messages in thread
From: Wojciech Kromer @ 2005-12-13 8:31 UTC (permalink / raw)
To: linuxppc-embedded
[-- Attachment #1: Type: text/plain, Size: 1771 bytes --]
I have 2.4.25 kernel from denx.de and latest uClibc running on mpc8248.
I'm trying to change HZ value, but still have strange results with
simple test
Recompiling whole uClibc does not change the results.
What could be wrong?
with HZ==1000:
#
alarm_test
alarm fired after
0.099092s
slept 0.999769s
with HZ==500:
#
alarm_test
alarm fired after
0.199622s
slept 0.999761s
with HZ==100:
# alarm_test
alarm fired after 0.999693s
slept 0.999760s
- here is procesor id :
... by kernel:
# cat /proc/cpuinfo
processor : 0
cpu : 8280
core clock : 400 MHz
CPM clock : 200 MHz
bus clock : 100 MHz
revision : 32.20 (pvr 8082 2014)
bogomips : 266.24
... and by u-boot:
MPC8248 Reset Status: External Soft, External
Hard
MPC8248 Clock
Configuration
- Bus-to-Core Mult 4x, VCO Div 2, 60x Bus Freq 25-75 , Core Freq
100-300
- dfbrg 1, corecnf 0x1a, busdf 3, cpmdf 1, plldf 0, pllmf
3
- vco_out 400000000, scc_clk 100000000, brg_clk
25000000
- cpu_clk 400000000, cpm_clk 200000000, bus_clk
100000000
- pci_clk
66666666
CPU: MPC8248 (HiP7 Rev 14, Mask 1.0 1K50M) at 400 MHz
- test code included
[-- Attachment #2: alarm_test.c --]
[-- Type: text/x-csrc, Size: 908 bytes --]
#include <stdio.h>
#include <signal.h>
#include <unistd.h>
#include <sys/time.h>
static void sighand(int sig)
{
}
int main()
{
struct timeval tv1, tv2;
sigset_t set;
sigfillset(&set);
sigdelset(&set, SIGALRM);
sigdelset(&set, SIGINT);
signal(SIGALRM, sighand);
gettimeofday(&tv1, NULL);
alarm(1);
sigsuspend(&set);
gettimeofday(&tv2, NULL);
tv1.tv_sec = tv2.tv_sec - tv1.tv_sec - (tv2.tv_usec < tv1.tv_usec);
tv1.tv_usec = tv2.tv_usec - tv1.tv_usec + (tv2.tv_usec < tv1.tv_usec) * 1000000;
printf("alarm fired after %ld.%06lds\n",tv1.tv_sec, tv1.tv_usec);
//--------------------
gettimeofday(&tv1, NULL);
sleep(1);
gettimeofday(&tv2, NULL);
tv1.tv_sec = tv2.tv_sec - tv1.tv_sec - (tv2.tv_usec < tv1.tv_usec);
tv1.tv_usec = tv2.tv_usec - tv1.tv_usec + (tv2.tv_usec < tv1.tv_usec) * 1000000;
printf("slept %ld.%06lds\n",tv1.tv_sec, tv1.tv_usec);
return 0;
}
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2005-12-13 13:33 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-12-13 8:31 HZ manipulation Wojciech Kromer
2005-12-13 13:36 ` Wojciech Kromer
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).