Hi Baoran,
Ik believe I know why a lot of socket 7 systems show this 512MB RAM issue.
All Award socket 7 BIOSes that I've checked have a limitation in the Write-Allocate feature. So this issue is not limited to one particular chipset, but is present on all super socket 7 boards with the Award BIOS.
The code Award uses to enable Write-Allocation on the K6 CPU series is limited to 512MB!
At this amount there is an register overflow and the code starts to count from zero again. So with 512MB RAM you get no WA and with 768MB RAM you get WA for 256MB etc.
This limitation has probably to do with the 508MB WA limit of the original K6 series and the fact that a lot of socket 7 boards couldn’t handle 512MB or more RAM anyway.
As far as I know, Award never fixed this limitation on later SS7 BIOSes, although the K6-2 with CXT core, and all K6-III / K6-2+/-III+ models, can handle WA up to 4092MB!
I have put this assumption to the test on my Aladdin V system (Jetway 542C) with 256MB RAM and a K6-III+/500. As I have no 256MB sticks, I used 2 sticks of 128MB and made 2 runs with 256MB total. First I ran Speedsys with WA On, and then with WA Off to simulate the 512MB issue.
This is what I found:
Exact the same issue!
So what you are seeing is indeed caused by Write-Allocation being disabled with 512MB of RAM, and I believe Phil’s benchmarks showing a performance drop with 512MB is caused by the same issue.
As most programs do more memory reads than writes, the average performance loss with WA OFF is about 10%. With WA OFF, the synthetic memory write test in Speedsys is of course a worst case scenario, that will never happen with “normal” software or games. 😉
So to avoid a performance penalty on these SS7 systems, limit the amount of RAM to 256MB or 384MB or use a utility to enable WA for the full RAM range.
A nice DOS util is K6WAON which can be found at https://www.philscomputerlab.com/k6-2-2-3-resources.html
Cheers, Jan