hi Krassimir, The smallest time quatum moving a thread from sleep queue to ready queue is equal to one tick(about 1 ms). This is dependent of os scheduling mechanism. Even the delay of nanosleep is less than 1 ms, actually 1 ms is the smallest unit.
I guess you should modify the kernel and add clock intr frequency. BR, Sam.Xia > -----Original Message----- > From: Krassimir Slavchev [mailto:[EMAIL PROTECTED] > Sent: Friday, October 31, 2008 5:04 PM > To: Julian Elischer > Cc: freebsd-performance@freebsd.org; Sam Xia > Subject: Re: 1. thread switching time? (Krassimir Slavchev) > > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Hello Julian, > > Julian Elischer wrote: > > Krassimir Slavchev wrote: > > > >> > >> Also, I am able to set HZ=100000 but the thread switching time is > >> still ~1ms. > > > > You must be talking about the time that a thread can run > before it is > > pushed out by other threads? I know I've seem many x > 10,000 context > > switches in some cases, i.e. look at very high interrupt > rates etc. so > > I guess I'm not sure what you are measuring.. > > Okay, I have a thread with: > > while(1) { > clock_gettime(CLOCK_REALTIME, &tv); > nanosleep(&delay, NULL); > clock_gettime(CLOCK_REALTIME, &tv2); > timespecsub(&tv2, &tv); > } > > If the delay is configured to be 0 < delay < 1ms I always get > ~1ms delay. > Since nanosleep() is a cancellation point this means that the > scheduler will switch to another thread. > If the delay = 0 I get ~1600ns delay. > > Yes. You are right. This is "the time that a thread can run > before it is pushed out by other threads". > > Is there a way to decrease this time? > > > > > at one time the scheduling quantum was independent of Hz. > > I am not sure how true that is now.. > > > > It seems to be independent of HZ. > > > Best Regards > > > > > _______________________________________________ > > freebsd-performance@freebsd.org mailing list > > http://lists.freebsd.org/mailman/listinfo/freebsd-performance > > To unsubscribe, send any mail to > > "[EMAIL PROTECTED]" > > > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.7 (FreeBSD) > > iD8DBQFJCsoDxJBWvpalMpkRAteuAJ9Jd8ICvPSiWB/4eGquUunoclpeXgCgjqyE > vBXA0vGoRgsQ9eHZ/YwR/lw= > =AjjC > -----END PGP SIGNATURE----- > _______________________________________________ freebsd-performance@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-performance To unsubscribe, send any mail to "[EMAIL PROTECTED]"