Serious memory pressure

  • Hi,

    I would like to get some opinions on possible paths to take to rectify a physical Windows 2003 Standard server which has 4 GB of RAM installed and is suffering from serious memory pressures. Buffer cache hit ratio is regularly 75% with Page Life expectancy values of a few seconds to 2 or three minutes. There are a number of applications using this server which are all experiencing disconnections and slow queries. SQL is configured to use 2GB of RAM, but only ever gets to 1.6 GB with the OS taking the rest. This is a 32 bit Standard edition of Windows Server so cannot go above the 4 GB threshold for memory.

    As an IT department we have said the server needs to be replaced and we have suggested a new Virtual server running SQL 2008. However, this isn't a quick solution as it means finding cash in the budget etc.

    Is there anything I could do to prop up the server in anyway and try and keep it going for a few more months!? I would be grateful for any suggestions, however wild and wonderful!

  • Hi Dave,

    Life's tough in the trenches. In my last gig I fought a 2 year battle over a Windows2000 SE, SQL2000SE server with 4GB RAM. The management position was "it's worked fine for years and we are going to replace the application soon anyway". That particular server/application is still performing poorly at my FORMER employer's facility. ;P

    If you are stuck with SE for O/S and SQL then you have to turn to non-memory options.

    1. Improving I/O response can help. Spreading database files across disks, segregating Log and Data Files. Faster disks, make sure tempdb is not an issue, etc.

    2. Query tuning. It is a rare database that could not be improved with better indexes.

    3. Are you sure, absolutely sure, positively sure, go check again --- NO OTHER applications run on the server. Not SSIS, Not SSRS, Not IIS, Not Visual Studio, Not SQL Express, ....

    You will probably have to find dozens (hundreds) of little improvements. If you are lucky, management will realize the resource cost of the thing and accept the upgrade. 🙂

  • If you can't change the hardware, tune the queries. Goal being to reduce as much as possible the amount of data the query needs to read.

    https://www.simple-talk.com/sql/performance/finding-the-causes-of-poor-performance-in-sql-server,-part-1/

    https://www.simple-talk.com/sql/performance/finding-the-causes-of-poor-performance-in-sql-server,-part-2/

    Gail Shaw
    Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
    SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

    We walk in the dark places no others will enter
    We stand on the bridge and no one may pass
  • I have similar issues.

    I have 2 32 bit MS Server 2003 boxes, one in production, one in a development instance both with 4GB ram. The PRD box usually consumes about 1.5 GB to 2.5GB max because the OS limits the amount of ram for applications. The dev box has a lot more on it and will get more utilization.

    One change I've done on the dev box is allowed the apps to use more ram but I'd test your system out before making the change recommended in this link. http://technet.microsoft.com/en-us/library/bb124810(v=EXCHG.65).aspx

    On my dev box I see the physical memory all the way up to 3.6 GB with the switch added from above.

    On 32 bit OS there is a physical limitation one specific process thread can consume. I think it's a 2GB virtual address space threshold.

    Couple threads to look at:

    http://bytes.com/topic/c-sharp/answers/708493-there-some-per-process-limit-memory-net-processes-there-any-way-increase-i-keep-getting-system-outofmemoryexception-when-my-box-has-8-gigs-unused-memory

    http://stackoverflow.com/questions/987219/max-amount-of-memory-per-java-process-in-windows

    My dev box boot.ini

    [boot loader]

    timeout=30

    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS

    [operating systems]

    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows Server 2003, Standard" /noexecute=optout /fastdetect /3GB /USERVA=3030

Viewing 4 posts - 1 through 3 (of 3 total)

You must be logged in to reply to this topic. Login to reply