____________________________________________________________________ The 1998 Cache Scandal Edition: 1998-03-01 Cosmetic Revisions: 2002-07-04 Had I been writing for a PC tabloid, the teaser headline might have read: WILL YOUR PC RUN SLOWER IN 1998? No, this is not an obscure "Year 2000" problem two years early. It is a chipset problem that affected most pre-1999 PCs that upgraded their RAM to go above 64 MBytes. When you added more RAM above that magic number, your PC often ran slower, perhaps dramatically, visibly slower. It happened to me. My former Micron P5-133, based on the Micronics M54Hi (Intel 430FX chipset) motherboard, ran slower at 96 MB than at 64 MB. This PC is still in service with a neighbor. You may also have an old PC with this problem. Why Slower? Because that extra RAM above 64MB is not cached on virtually all PCs with the affected chipsets (actually, it is only cached by the on-chip L1 cache, but that is small, and cache faults occur frequently). On Windows 9x/ME in particular tasks are usually dispatched high, into that UNcached RAM, and they take significant wait-state hits whenever the CPU's limited Level 1 16K cache doesn't contain the next instruction or data object required. During 1997, 32 MB was a typical RAM configuration for a new mid-range PC. Many of those users upgraded to 64 MB during the year. As we entered 1998, 64 MB was becoming a typical RAM config. During 1998, many users attempted to install more than 64 MB, and they were not happy when they saw what ensued (I wasn't). With the spot price of DRAM having fallen below $1/MB, adding tons of RAM is still tempting on these old PCs, particularly if you are running memory-intensive apps like image editors for recent "photo-quality" inkjet printers. Moving to 128MB can make a difference on these apps, however; don't go above 64MB unless you know your PC can properly support it. Who Is NOT Affected? * If you are running a - Pentium-II -III or 4, - Pentium PRO, - AMD Athlon or Duron, you may leave the room. These CPUs have their own on-board L2 cache, and have enough tagram to cache at least 512 MB (P-II) or 2 GB (P6) main RAM. * If you are running DOS or Windows 3.1x, you may leave the room, because you can't even address more than 64MB. If you install more than 64MB, and the system even runs, the OS won't even see the RAM above 64M, and presumably will use only the first (fully cached) 64MB. * If you have a machine with a non-Intel chipset (SIS, VIA), you may or may not be affected. I don't have enough info on how these chipsets have to be implemented for full RAM cachability. * If your PC has no L2 cache (as stripped-down "Covington" Pentium-IIs will later in in 1998), or has fake cache (see final note), you may leave the room. Your PC won't run any slower with even more uncached RAM. Who IS Affected? * Anyone running a Pentium (P5) or PentiumMMX (P55C) using the common Intel-brand: "FX" (430FX), "TX" (430TX), "VX" (430VX) and possibly other chipsets, which is the majority of home PCs. * Anyone running a P5 or P55C using an Intel-brand "HX" (i430HX) chipset that does not have a Tag width of 11 bits, typically a Second Cache Tag SRAM, which is most home HX machines. Most vendors shipping consumer HX boards save a few cents by using a single 8Kx8, 16Kx8 or 32Kx8 tag, which only maps 64 MB. What you need is 8Kx16, 16Kx16 or 32Kx16. Can you add the tag later? Often, no. But I Have 512K Cache! Doesn't matter - this is not about how much L2 Cache SRAM you have, but how much cache TAG SRAM you have and how wide it is, and whether or not your chipset supports using that tag to map more than 64 MB main DRAM into cache. But My Machine Can Support 128 MB Total RAM! Doesn't matter - this is not about how much RAM your machine can ACCEPT, or even ADDRESS, but how much it fully SUPPORTS, and frankly, the claim of "128MB support" on PCs of this vintage was at the very least misleading. However, since this issue doesn't seem to be widely known, I suspect that many PC clone vendors could even answer if you asked: "Is the max RAM config fully cachable?" Can I get a BIOS Upgrade to Fix This? Nope. BIOS upgrades can sometime affect how much RAM your PC can address, and what modes to use, but if the tagram isn't there, the high RAM won't be cached, period. What is Going On Here? It appears that Intel was silently creating a brief PC market segmentation. The newer "TX" chipset only intro'd in 1997, yet it also had the 64MB cache barrier. The message seems to have been: - If you want more than 64 MB effective RAM, get a Pentium-II. ______________________________________ What Was That Remark About Fake Cache? If you bought a PC in 1996-1998 from a mom&pop cloner, small mail-order cloner, or some of the sleazier big cloners, there's a non-trivial chance that the L2 cache chips (if any) on your motherboard contain no active components, and your BIOS has been hacked to fraudulently report "256K" or "512K" cache installed at boot time. Do your chips have the faint text words "WRITE BACK" on them? Be afraid; be very afraid. Here are some cache test resources. You might be able to learn more by hitting your favorite search engine (and Google Groups) with the search strings "fake cache" and "64 cache not" (going back well into 1996). Regards, PO Box 248 Bob Niland Enterprise mailto:name@isp-name.domain Kansas which, due to spam, is: 67441-0248 USA rjn AT access DASH one DOT com Unless otherwise specifically stated expressing personal opinions and NOT speaking for any employer, client or Internet Service Provider.