Commit cbe7fc8b authored by Shashi Guruprasad's avatar Shashi Guruprasad

Fixed an error made by ISI during last year's rewriting of the RTSched code

that although appeared to be right was actually causing errors to be
accumalated. This fixes the high error rates in the bandwidth and loss rate
numbers reported in OSDI. There are also code optimizations after profiling
it that reduces the RTSched overhead.

Another source of error was send/consume/request/reply which used to be
given a very rough estimate of the CPU speed (600 instead of 601.37 Mhz for
example). The latter comes from the boot up calibration in FreeBSD which
is supposed to be accurate up to 10 microsecs on a 486.  Using
600 instead of 601.37 causes an error of 0.22 % in the measurement. That is
about 1.3 ms for an RTT of 600 ms. This error is worse when send/consume
are used to calculate throughputs. The longer the period of measurement,
the worse it becomes.  I have committed changes in them as well. Defining
the macro CPU_SPEED_IN_KHZ will get you kernels that take CPU_SPEED
parameters in Khz instead of Mhz. So, you can specify 851940 instead of
850 for a pc850.

boss:/tftpboot/x86/{send,consume,request,reply}.cpuinkhz lets you specify
CPU_SPEED in Khz
parent 08d544d2
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment