VOGONS


How much ram in a 386sx with only 32k of cache?

Topic actions

First post, by 9646gt

User metadata
Rank Member
Rank
Member

I have a 386sx 20mhz Gateway 2000 with this board in it https://theretroweb.com/motherboards/s ... d-slimline. It only has 32k of cache according to old advertisements I’ve found and does not have an upgrade path anywhere on the board. I plan to use it for very little Windows 3.11 use and more of just a DOS machine for anything that runs too fast on my 486dx2 or dx4 builds.

It currently has 10mb of RAM. Should I drop that to 8mb? 4mb? Looking for the best blend of compatibility and performance while still being able to occasionally boot into Windows 3.11 to do some things here and there

Reply 1 of 21, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie

The easiest way to tell is to get Cachechk (from the DOS Benchmark Pack, or elsewhere) and see if memory gets slower past a 4mb or 8mb boundary

Reply 2 of 21, by kixs

User metadata
Rank l33t
Rank
l33t

Usually 386SX didn't have any cache. So I wonder how does your system perform. Can you do some tests with the usual benchmarks - NSSI, Checkit, comptest, 3dbench, Doom, ...

Visit my AmiBay items for sale (updated: 2025-03-14). I also take requests 😉
https://www.amibay.com/members/kixs.977/#sales-threads

Reply 3 of 21, by Matth79

User metadata
Rank Oldbie
Rank
Oldbie

Can't see any positions for cache on the retroweb board layouts, unless maybe it's a different spec CPU module

Reply 4 of 21, by darry

User metadata
Rank l33t++
Rank
l33t++
9646gt wrote on 2025-05-26, 16:59:

I have a 386sx 20mhz Gateway 2000 with this board in it https://theretroweb.com/motherboards/s ... d-slimline. It only has 32k of cache according to old advertisements I’ve found and does not have an upgrade path anywhere on the board. I plan to use it for very little Windows 3.11 use and more of just a DOS machine for anything that runs too fast on my 486dx2 or dx4 builds.

It currently has 10mb of RAM. Should I drop that to 8mb? 4mb? Looking for the best blend of compatibility and performance while still being able to occasionally boot into Windows 3.11 to do some things here and there

I would not trust an ad, as only some machines based on this board may have had one if multiple CPU card module options and, most, likely only some of those had cache. As Matth79 mentioned, the example unit shown on the Retroweb does not appear to have any cache or any place to install some. If your system matches that one completely, except for the 20MHz clock rating, it almost certainly has no cache.

If you have a different CPU card module and/or a slightly different variant of the motherboard, please share some photos. Please also share a link to that ad, if possible.

Also, it's a 386Sx at 20MHz, unless you plan on taking this thing to the limit and run very memory hungry OSes or applications, I doubt you will have a practical need for more than 4MB of RAM, if even that, if you stick to software/games that runs reasonably well on a machine with such a CPU, but if performance is unaffected, there is no harm in leaving more memory. However, if the BIOS allows tweaking memory timings and wait states, it maybe worth sourcing faster RAM if you can get some cheap, but don't expect miraculous improvements.

Reply 5 of 21, by 9646gt

User metadata
Rank Member
Rank
Member
kixs wrote on 2025-05-26, 17:56:

Usually 386SX didn't have any cache. So I wonder how does your system perform. Can you do some tests with the usual benchmarks - NSSI, Checkit, comptest, 3dbench, Doom, ...

About to upload the only two tests I had time to run but it does confirm 32k of cache. I knew Gateway was usually a more honest OEM in the day

Reply 6 of 21, by 9646gt

User metadata
Rank Member
Rank
Member
darry wrote on 2025-05-26, 23:55:
I would not trust an ad, as only some machines based on this board may have had one if multiple CPU card module options and, mos […]
Show full quote
9646gt wrote on 2025-05-26, 16:59:

I have a 386sx 20mhz Gateway 2000 with this board in it https://theretroweb.com/motherboards/s ... d-slimline. It only has 32k of cache according to old advertisements I’ve found and does not have an upgrade path anywhere on the board. I plan to use it for very little Windows 3.11 use and more of just a DOS machine for anything that runs too fast on my 486dx2 or dx4 builds.

It currently has 10mb of RAM. Should I drop that to 8mb? 4mb? Looking for the best blend of compatibility and performance while still being able to occasionally boot into Windows 3.11 to do some things here and there

I would not trust an ad, as only some machines based on this board may have had one if multiple CPU card module options and, most, likely only some of those had cache. As Matth79 mentioned, the example unit shown on the Retroweb does not appear to have any cache or any place to install some. If your system matches that one completely, except for the 20MHz clock rating, it almost certainly has no cache.

If you have a different CPU card module and/or a slightly different variant of the motherboard, please share some photos. Please also share a link to that ad, if possible.

Also, it's a 386Sx at 20MHz, unless you plan on taking this thing to the limit and run very memory hungry OSes or applications, I doubt you will have a practical need for more than 4MB of RAM, if even that, if you stick to software/games that runs reasonably well on a machine with such a CPU, but if performance is unaffected, there is no harm in leaving more memory. However, if the BIOS allows tweaking memory timings and wait states, it maybe worth sourcing faster RAM if you can get some cheap, but don't expect miraculous improvements.

For sure confirmed 32k of cache. Does the cachechk confirm all 10mb are cached? I don’t understand how to read the result. I’d be fine with just 8mb installed honestly.

Reply 7 of 21, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie

Yes, it does. Being used to 386DX-40 however, the numbers are awful 😁

Reply 8 of 21, by 9646gt

User metadata
Rank Member
Rank
Member
jakethompson1 wrote on 2025-05-27, 01:05:

Yes, it does. Being used to 386DX-40 however, the numbers are awful 😁

They are 🤣. Is all 10mb being cached? And I’m not too worried about low performance.. I have a dx2 dc4 and Pentium build haha

Reply 9 of 21, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie

You would see a drop off past 4MB or 8MB if there were a cacheable region issue, you have the same results all the way up to 10

Reply 10 of 21, by darry

User metadata
Rank l33t++
Rank
l33t++

Glad you actually do have cache on the machine AND that all 10MB of RAM seems to be cached.

Reply 11 of 21, by 9646gt

User metadata
Rank Member
Rank
Member
jakethompson1 wrote on 2025-05-27, 03:23:

You would see a drop off past 4MB or 8MB if there were a cacheable region issue, you have the same results all the way up to 10

Thank you I was hoping I was understanding that correctly! Not terrible for a budget machine of the very early 90s!

Reply 12 of 21, by 9646gt

User metadata
Rank Member
Rank
Member
darry wrote on 2025-05-27, 04:16:

Glad you actually do have cache on the machine AND that all 10MB of RAM seems to be cached.

Thank you, I’m quite happy with it as my low end machine now for sure!

Reply 13 of 21, by Disruptor

User metadata
Rank Oldbie
Rank
Oldbie

With 32 kB of cache on a 16 bit machine and assuming 4x 16 bit cacheline you can deal with 4 MB WT, 2 MB WB.
So I guess you should work with 4 MB.
But your board probably has a wider (or builtin) tag to support full 16 MB.

Reply 14 of 21, by MikeSG

User metadata
Rank Member
Rank
Member

Been reading about some 386sx cache systems recently. Both the Chips 82C835 and VLSI VL82C325 cache controllers support 32KB, as two 8k x 16 = 16KB / set. TAG is built into the controller.

They're both two-way set associative like L1 cache on the CPU, not direct-mapped, and has a LRU (least recently used) list which determines max reach. VLSI's manual says it supports the full 16MB. Chips doesn't say.

If it's like one of those systems, I assume it supports the full 16MB.

Reply 15 of 21, by 9646gt

User metadata
Rank Member
Rank
Member

Interesting. I know this board is based on a Wester Digital chipset

Reply 16 of 21, by Disruptor

User metadata
Rank Oldbie
Rank
Oldbie
MikeSG wrote on 2025-05-27, 14:00:

They're both two-way set associative like L1 cache on the CPU, not direct-mapped, and has a LRU (least recently used) list which determines max reach. VLSI's manual says it supports the full 16MB. Chips doesn't say.

Well, being better than direct-mapped is another hint for an internal TAG ram.

Reply 17 of 21, by LChackr

User metadata
Rank Newbie
Rank
Newbie

I'd leave it at 10MB.

Consider that:

1. Cache is working, and that's already awesome for a 386SX.
2. If there is a non-cacheable region it's likely after 8MB.
3. With no ASLR on old computers, the most important code+data to be cached will most likely appear in the first few MBs of RAM anyway.
4. If you are sticking to period-appropriate software (since you have a 486 and Pentium) a 386SX isn't likely to use more than 8MB. Maybe in Windows, but anything that needs that much RAM is better off with a 486+.
5. A cache-miss situation seems like it would be rare and I doubt you'd ever notice it anyway. 🙃

Reply 18 of 21, by Disruptor

User metadata
Rank Oldbie
Rank
Oldbie

The measurement of cachechk clearly showed that there is NO non-cacheable region.

Reply 19 of 21, by jakethompson1

User metadata
Rank Oldbie
Rank
Oldbie
LChackr wrote on 2025-05-27, 16:50:

3. With no ASLR on old computers, the most important code+data to be cached will most likely appear in the first few MBs of RAM anyway.

Not relevant to this 386SX specifically, but common retro advice is that Win9x allocates physical memory from the top down, so the noncacheable memory gets used first.

This would be an excellent topic for the OS2Museum or Old New Thing blog to investigate, if you're out there listening by any chance...