Skip to main content
Participant
May 12, 2006
Question

JRun using excessively large amounts of swap/virtual memory

  • May 12, 2006
  • 3 replies
  • 829 views
We are running CFMX 7.01 Standard on Win 2003 Server in single server configuration. Upgraded the memory from 1G (2-512) to 2G (2-1G) after a memory failure. Seeing we have more memory, we changed the Minimum JVM Heap Size from 256 to 512 and the Maximum JVM Heap Size from 512 to 1280.

Since doing so, jrun.exe runs using around 128mb of physical memory and almost 1G of virtual memory/swap.

Any one have any ideas on what may be causing the up in virtual memory usage? Seems silly to be gobbling up all that swap file when it still has almost a full gig of physical.

Mike
    This topic has been closed for replies.

    3 replies

    bytor2112Author
    Participant
    May 12, 2006
    Thanx for the feedback. But it doesn't seem to make a difference. We decreased the MaxHeap and the virtual memory usage went down, but the real issue/question is why is it taking up so much virtual/swap when there is 1.5G of free physical memory available?

    Looking at task manager, jrun is only using 128mb of physical memory yet almost 600mb of virtual when there is 1.5G of free physical memory.

    This is our main production server that is running 1 Coldfusion website and MDaemon. MDaemon is used only for sending out our website emails. There is a separate, dedicated company email server for all other emails such as orders from the website and all company emails. Our SQL server is also separate.

    We also have a dev server that runs about 5 CF sites and a handful of .NET sites. On that machine, jrun is using 350mb of physical memory and max virtual memory usage is a little over 100mb. That has a setting of Max Heap of 512 and MaxPerm of 128. This server probably gets beat up as much as the live seeing it hosts the maint site for the website and the companies intranet/reporting sites.

    The only real setting differences except for the MaxHeap-Perm is that the dev server is not set to save the class files. The production server has more memory than the dev server yet it wants to take more virtual memory than physical. I just don't get it!

    Any help would be greatly appreciated!

    Mike
    May 16, 2006
    You might want to have a look see at your CF admin settings. Specifically the cached templates and queries. Both of those will suck up memory.

    Also, if you've got your mail spooler set to write email to memory instead of disk, that'll suck up memory too.
    Participating Frequently
    May 12, 2006
    With Windows you don't really want to go above 1GB for your Max Heap, bearing in mind that you then have to add your Permanent generation size on top of that.

    Depending on what else is running on your box, e.g. SQL Server, you may want to tone down even further.

    Andy
    May 12, 2006
    With only 2GB of physical memory I'd back the -Xms to 256 and -Xmx to 768 or 1024. FWIW, our servers have 4GB we're running -Xms384m -Xmx1024m.

    With a -Xmx1280m, you're heap is going to float a little higher than that, so I could see it going into swap pretty quick with only 2GB of memory.