The Advantage of SD-RAM

Does it work fast without L2 cache?

11/07/95 Kazunari Nagahashi


The machine I have made by my self for developing my sharewares, I chose the ASUS TX97-XE for a mainboard, the AMD K6-233 and 64MB of main memory. I was very satisfied with its excellent performance of the AMD K6 especially on its integer performance running with Windows NT. It is really good for using with software development purpose. The 430TX, a chipeset, is adopted for the TX97-XE that is designed for desktop usage. It's fine on this assumption moreover you can get it in low cost. Instead of this assumption, it has an unwanted limitation that it does not allow you to cache larger memory if you install over than 64MB RAM. At first, I planed to use this machine to run one development environment plus a few other tools so that was fine even I have installed 64MB of EDO-RAM. Lately, I run a few MS VC++ at the same time which needs more memory. As the result of this demand, paging activity has increased that drops performance a lot.

To avoid paging, I have removed 64MB of EDO-RAM from my other machine then added it to the above PC. It worked fine that I succeeded to reduce paging and it no longer appears to be painfully slow when I switch some software to others. But it takes 4 minutes to build one of my softwares that was needed 3 minutes and 20 seconds before expanding it. Can you believe that expanding RAM reduce performance? Because of caching limitation of the 430TX, the PB-SRAM that is installed as L2 cache will be disabled when you install over than 64MB of memory.

How can I improve this? There's a few options;

  1. purchase a new motherboard which has capability of caching over than 64MB. It is not necessary to replace the CPU.
  2. buy Pentium II and a motherboard. (the chipset used with Pentium II can cache over than 64MB)
  3. buy some SD-RAMs then replace EDO-RAMs to it.

The first option is good on cost because you have to purchase only motherboard. But I like the power management capability of the TX97 that can stop CPU fan in suspend mode. And there are only a few chipsets supports larger caching. The AMD640 is one of the chipsets to do this but there are only a few motherboards were released and all of these motherboords are designed as an AT board but not an ATX. Option 2 costs you too much. You have to buy both expensive Pentium II and a motherboard. You also have to re-install OS and your softwares. The last option, you have to buy some SD-RAMs but you do not need to re-install any softwares and I do not have to replace favorite mother board.

I liked the last option but I was not sure if it really makes performance fine. Then I read some magazines which carries a benchmark of the SD-RAM. In all of magazines, they did not test it on over 64MB even they describe a limitation of the 430TX. They said that it is not necessary to purchase SD-RAM because you get only a few percentages of performance increase. Why did not they examine it without L2 cache?


The Performance of the SD-RAM

How I have tested;

In order to examine how can the K6 run fast on cacheable and uncacheable environment, both the EDO-RAM and the SD-RAM were installed as 64MB and 96MB respectively. Optionally to see the performance difference on different base clocks, the K6 is set as a normal 233MHz(66MHzX3.5) and 225(75MHzX3.0) respectively.

This is the result of CPUmark of WinBench.

As you can see, EDO 96MB is the lowest performance at less 20% to 25% as 64MB of memory. It is quite unreasonable that it decreases the performance when you add more memory. It is caused by disabled L2 cache. Now we are going to see the performance at the 64MB between the EDO and the SDRAM. The SDRAM takes the advantage of 2-5% as EDO. In this case, it might not be a positive reason to choose the SDRAM. After expanding memory from 64MB to 96MB of the SDRAM, it looses 4-5% than cacheable environment. It means that the SDRAM works like the fast PB-SRAM on the performance point of view.

The next benchmark is for DOS.

You might see the performance difference big between the base clock of 66MHz and 75MHz from the above two figures, but please note that those figures are zoomed in a specific scale. Actually, these two results are very similar. According to this bench we can not see a big difference on any conditions. It probably any cases run in L1 cache area.

The last benchmark is for trying to see how the K6 build my shareware fast on each memory environment. I used MS VC++ Ver4.2 to build it. The listed value of each bars are in Sec. to complete compiling and linking.

The shorter bar means faster. When I added 32MB to EDO 64MB, compiling took more 40 seconds that is about 20% less time to complete it. It is generally considered that compiling is much depending on a CPU performance but VC++ usually generates a lot of temporary files that spends 10-15% in whole build process. Considering this disk I/O, this benchmark back up the result from CPUmark. On the SDRAM, the performance was lost only 4% by expanding memory. It is also fast enough comparing with the fastest result.


Conclusion

We could understand there is no big difference whether you choose the EDO or the SDRAM as long as L2 cache is available. We also could see the SDRAM works very efficiently without L2 cache. In this situation you will lose over than 20% of the performance if you use the EDO but you lose only a few percentages of it when you use the SDRAM. In the point of the bus clock view, you will be able to get better result on a higher bus clock even an internal clock is a bit slower. The bus speed of 75MHz is not recommended by AMD but it works very fine on my environment.


Kazunari Nagahashi