Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/18/84; site ecsvax.UUCP
Path: utzoo!linus!philabs!cmcl2!seismo!harvard!talcott!panda!genrad!decvax!mcnc!ecsvax!hes
From: hes@ecsvax.UUCP (Henry Schaffer)
Newsgroups: net.arch
Subject: Re: Cache revisited
Message-ID: <269@ecsvax.UUCP>
Date: Mon, 19-Aug-85 15:32:27 EDT
Article-I.D.: ecsvax.269
Posted: Mon Aug 19 15:32:27 1985
Date-Received: Fri, 23-Aug-85 20:45:14 EDT
References: <5374@fortune.UUCP> <901@loral.UUCP> <2583@sun.uucp> <5459@fortune.UUCP>
Distribution: net
Organization: NC State Univ.
Lines: 17

>     Someone in replying tomy original article on cache said that 
> the hit rate on the internal cache in the 68020 is about 50%. 
> Anyone care to agree with that?  Anyone care to tell me what 
> reasonable application or operating system spends 50% of its time
> in loops that are smaller that 256 bytes??
The hit rate depends on the total cache size and on the amount loaded
for each miss, as well as program and data locality.  Tight loops do
give programs a high hit rate, and so can other things like character
I/O.  Vectors and matrices are common in scientific computation, and
systematic processing of these data structures also tends to give data
locality and so produces a high hit rate.  (This is why scientific
programmers are usually concerned whether matrices are stored row- or
column-wise.  Cache performance, as well as address calculation are
assisted by accessing sequential addresses.)  On mainframes with large
caches a hit rate of >80% can be achieved.  This is often verified
using a hardware monitor, not by trusting the vendor's opinion.
--henry schaffer  n c state univ