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