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

Re: bogomips



On Tue, 10 Nov 1998, Oz Dror wrote:

> Hi
> I have a pentium-II 400Mhz and a pentium MMX 200Mhz
> both have 400.59 bogomips
> Why?

SWAG (Silly Wild-Assed Guess):

The memory is the same speed? Since Intel guesses wrong in the branch
prediction, it must refetch the instruction residing at the address of the
result of the branch from cache. The bottleneck is not CPU speed, it is
the cache RAM. In other words, the CPU is sees a branch instruction coming
and assumes that the resulting target of the branch will be ahead ... it
does not expect that someone is going to be running a tight loop. It never
even looks for that since it is so rare in real life. As a result, the
next instruction is not in its prefetch store and it has to go out to
external cache to get it ... again and again and again. 

I get 200 bogomips on an AMD-K5100 while I get around 60 on a Pentium-166.

This is because of the microcode design and has nothing to do with
internal CPU processing power. If it timed the execution of straight-line
code rather than a loop you would get a better indication of system
performance. The problem then becomes how to execute enough straight-line
code for the system clock to measure it without making the program huge.
Maybe the key is opening up the loop ... maybe executing a bunch more
instructions before it loops back. 

George Bonser

The Linux "We're never going out of business" sale at an FTP site near you!


Reply to: