I needed to upgrade some RAM in an old Sun Ultra 5, but because it was running Solaris 2.6 the prtdiag script did not give enough information regarding the DIMMs already installed.

I knew the server had 256MB installed, and knowing that an Ultra-5 has 4 DIMM slots and you install in pairs it had to have either 4 x 64MB DIMMs or 2 x 128MB DIMMs.

But, how could I tell without hauling my ass up to the server room and taking the cover off?

Google, being my friend, led me to the following link…..

Some very clever people here have written a very good perl script, that you can run as a non-root user to tell you exactly the information you need. It’s called memconf.

The output I got after running the script was as follows: –

hostname: xxxxxxxx
Sun Microsystems, Inc. Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 270MHz) (Ultra 5)
Memory Interleave Factor = 1-way
socket DIMM3 has a 128MB DIMM
socket DIMM4 has a 128MB DIMM
empty sockets: DIMM1 DIMM2
total memory = 256MB

So….also knowing it’s better not to mix DIMM sizes to avoid performance problems, I now know I need 2 x 128MB DIMMs to upgrade this fella.

BTW, this takes this particular model to it’s maximum RAM of 512MB.