I am experiencing an unusual memory issue with a Cisco 7604 router, specifically the memory on the Supervisor Engine (SUP32-GE-3B) and how it pertains to IOS requirements.
I was preparing the router for a customer, but it crashed when attempting to load the required IOS version due to insufficient memory. The necessary IOS version (AdvIPservices) requires 512MB DRAM, 128MB flash; whereas the IOS version that loads successfully (IPservices) requires 512MB SDRAM, and only 64MB flash. The Supervisor Engine has a 256mb RAM module, and the MSFC2A has another 256mb RAM module. The bootflash card is 256MB.
Herein lies the problem: when I used "sh ver" to check the available memory and verify that the system meets the IOS minimum requirements, here's the memory it reports:
cisco CISCO7604 (R7000) processor (revision 2.0) with 458752K/65536K bytes of memory.
65536K bytes of Flash internal SIMM (Sector size 512K).
Those first two values add up to 512MB, which implies that the system has enough SDRAM, even though it does not (unless it combines the total RAM from the Supervisor and the MSFC). I ruled out the bootflash as being the problem by replacing it with a 512MB card, but the problem persisted.
To make things stranger, I compared this result with some log files from my previous 7604 build, and it reported the following:
cisco CISCO7604 (R7000) processor (revision 2.0) with 458752K/65536K bytes of memory.
65536K bytes of Flash internal SIMM (Sector size 512K)
Except that it reports this while running the AdvIPservices image. I assume that this router also has the two 512MB ram modules lised in the purchase configuration document because it was able to load the IOS image without any problems but, at the time, I had no cause to open the router and physically verify the RAM modules, and I no longer have access to that router.
The only memory difference I see between the two routers is this line that appears during boot-up:
Good Router:
Cat6k-Sup32 platform with 524288 Kbytes of main memory
'Bad' Router:
Cat6k-Sup32 platform with 262144 Kbytes of main memory
However, another line shows up during boot which is identical between each router:
Good Router:
Cat6k-MSFC2A platform with 524288 Kbytes of main memory
'Bad' Router:
Cat6k-MSFC2A platform with 524288 Kbytes of main memory
So here are my questions:
Whare those two different "Cat6k" platform memory values refer to, in terms of hardware?
If the Cat6k values correspond to the RAM modules, why does the 'bad' router state that the MSFC has 512MB RAM, when the MSFC only actually has a 256MB module?
What do the "show version" memory values (specifically the 'Processor with xK/yK bytes of memory' values) correspond to? IE: both PBRs show the same memory values here, but different values for Cat6k-Sup32. How is that possible?
Both the IPservices and AdvIPservices images require 512MB DRAM (according to the Cisco IOS comparison tool), yet the 'bad' router only loads the IPservices image due to running out of memory. Why is this? Is it possible that the memory requirements listed by Cisco are "padded out" for the IPservices image, and it actually only requires 256MB?
The "min flash" size is the only memory requirement diffrerence between the two IOS versions, and the 'bad' router excedes the minmum requirements for both images; yet it will only boot the IPservices image. The problem persists regardless of whether the bootflash card's capacity is 256MB or 512MB.
Is there a preferred command (IOS or ROMMON) I can use to verify memory requirements in the future? The Cisco docs recommend "show version", but I'd prefer a more reliable alternative if possible.
I appreciate any assistance anyone can offer; I have tried searching for information about these values, but my search results keep getting flooded with unrelated example documents, as these values appear during a healthy boot up. I am already planning on upgrading the RAM in the 'bad' router, but I would really like to understand these seemingly incongruous values I'm seeing.
You've already discovered that there's two sets of RAM on the 6500/7600 series supervisors - the switch processor or supervisor RAM, and the MSFC or "route processor" RAM. The terminology isn't helped by there being three different names for each of these two components.
The "sh ver" output is for the MSFC (RP) (add the two values together).
"remote command switch show version" will execute show version on the Supervisor SP).
I suspect as per my comments to your original question that it's actually a 512MB part that's installed given you're basing the assumption that it's 256MB on the markings on the RAM chips themselves rather than a cisco part number.
Essentially answered above; your MSFC and Supervisor have different amounts of RAM installed which accounts for the differences
There might be enough RAM to boot the IPServices image but that might not mean it will reliably operate with all features enabled/in use; so there is going to be an element of "overhead" built into their "minimum specs" as you suggest.
The bootflash is just that - a flash disk. It can't be used to run the image, it's just storage. Changing the bootflash won't fix your low RAM condition. You're likely only asking this question based on the assumption that IPServices "shouldn't work" on 256MB RAM, though (addressed in my answer to point 4).
See my answer to part 1 to get the figures for both the MSFC and the Supervisor
You need to upgrade the RAM in your Supervisor - You want a MEM-SUP32-512MB. Consider MEM-MSFC3-1GB= at the same time, as that's the current recommended amount for the MSFC.
(Edited because markdown was screwing with the numbering of the points)