<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.technet.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx</link><description>This seems to be one of most favorite questions ever: "How come that Exchange Store.exe keeps on grabbing more and more memory, even on the server that is not very busy? Is there a memory leak?". This is many times followed by "I am rebooting my server</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206118</link><pubDate>Mon, 02 Aug 2004 20:48:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206118</guid><dc:creator>drebin</dc:creator><description>Wow.&lt;br&gt;&lt;br&gt;The was the worst thing I've ever read.&lt;br&gt;&lt;br&gt;I can't believe you just tried to justify a program eating 1.5GB (thats 1,500,000,000 bytes, you know)..&lt;br&gt;&lt;br&gt;If you're car gastank is on empty, do you tell yourself &amp;quot;Is this affecting my driving at all?&amp;quot; or &amp;quot;Is the car still running fine?&amp;quot;&lt;br&gt;&lt;br&gt;Just because it isn't affecting anything right now, that doesn't mean you don't have to do something about it!! How is one to do capacity planning - when your application will eat whatever memory it finds???&lt;br&gt;&lt;br&gt;Wow. That's just horrible.</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206138</link><pubDate>Mon, 02 Aug 2004 21:03:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206138</guid><dc:creator>Nino Bilic</dc:creator><description>Thanks for your comment :)&lt;br&gt;&lt;br&gt;The truth of the matter is - the 1.5 GB figure is quite extreme. I did see it on very busy servers with 1000s of mailboxes though, and it was not a cause of the problem at all.&lt;br&gt;&lt;br&gt;The whole point of this post was to shed some light on this as I have heard people rebooting their servers just because &amp;quot;Store was utilizing XYZ MBs&amp;quot; - so not because there was a performance problem on the server, but because of perception that Store is taking up more RAM than some specific number.&lt;br&gt;&lt;br&gt;That in itself is not a problem - so it does not have to be fixed by a reboot. Especially not when there are 4 GBs of RAM in the machine for example (was true in the case where Store took 1.5 GB), and other applications that run on the server can get all the RAM they need.</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206145</link><pubDate>Mon, 02 Aug 2004 21:07:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206145</guid><dc:creator>Nino Bilic</dc:creator><description>Sorry, just saw teh &amp;quot;capacity planning&amp;quot; part of the questuion - the behavior of Store (taking up more and more RAM if it needs it and if it is available) is not something that you necessarily need to try &amp;quot;compensate&amp;quot; for by adding more RAM to the machine. The process that Store goes through should prevent it from &amp;quot;starving&amp;quot; the OS and other applications on the server - so they have no RAM. So - no matter how much RAM you have on the server (unless it is very small for server application - where you will probably see problems with Exchange or no Exchange) - Store will act accordingly and stop growing after certain point.</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206162</link><pubDate>Mon, 02 Aug 2004 21:17:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206162</guid><dc:creator>Nick Wade</dc:creator><description>When I was responsible for building and running in Exchange 2000 Clusters; if I put 2GB or 3GB of RAM in a box and Store *didn't* use 1.2GB on average (well, obviously user load is a factor here) then I KNEW I had a problem with that box. 1.2GB of RAM and idling on 3 to 4% CPU is a happy cluster node that'll run for months in that state - reboot - are you mad?&lt;br&gt;&lt;br&gt;When you're supporting gobs of users on the one Exchange server, shouldn't it be a dedicated server, and shouldn't it use as much physical RAM as possible? In memory ops are so much more performant than those that must refer out to the page...&lt;br&gt;&lt;br&gt;Next stop - fast fast FAST transaction log volumes :-) - then 2000 / 3000 corp users *concurrent* per box should be no problem at all.&lt;br&gt;&lt;br&gt;Cheers</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206174</link><pubDate>Mon, 02 Aug 2004 21:24:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206174</guid><dc:creator>Nick Wade</dc:creator><description>P.S. Oops, nearly forgot&lt;br&gt;&lt;br&gt;Nino - good, reassuring article, good tips, thanks! ;-)</description></item><item><title>Them there are fightin' words there....</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206510</link><pubDate>Tue, 03 Aug 2004 08:15:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206510</guid><dc:creator>E-Bitz - SBS MVP the Official Blog of the SBS </dc:creator><description /></item><item><title>Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206641</link><pubDate>Tue, 03 Aug 2004 11:50:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206641</guid><dc:creator>Welcome to Flaphead.com @ Home</dc:creator><description /></item><item><title>Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206642</link><pubDate>Tue, 03 Aug 2004 11:51:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206642</guid><dc:creator>Welcome to Flaphead.com @ Home</dc:creator><description /></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206713</link><pubDate>Tue, 03 Aug 2004 11:54:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206713</guid><dc:creator>Jeff Centimano</dc:creator><description>The first comment (while being way too harsh and a little unprofessional) is typical of new Exchange admins.  I run into this quite often as a consultant.  Your article will be added to my &amp;quot;Knowledge Gems&amp;quot; folder to distribute to other newbie admins when this question comes up in the future.  Thanks for taking the time to write this article.  Keep up the good work.&lt;br&gt;</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#206742</link><pubDate>Tue, 03 Aug 2004 12:31:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:206742</guid><dc:creator>drebin</dc:creator><description>Jeff, for the record, I am no longer an Exchange admin - but have done it since the olden days. Secondly, sorry you cried over my post. The concept of having a poorly behaving product is one thing, but to justify it's behaviour was a little over the top for me.&lt;br&gt;&lt;br&gt;To assume that Exchange is the only thing on that box is crazy. There could be other connectors - or what about backup software and a local tape drive. Imagine the backup taking 10 hours because it can't get enough RAM to do it more efficiently?&lt;br&gt;&lt;br&gt;At least something like SQL Server let's you have some control over how much RAM you want to give it.. but this main post was a little out of control in my book.. Sorry I offended.</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#207406</link><pubDate>Tue, 03 Aug 2004 23:04:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:207406</guid><dc:creator>Nino Bilic</dc:creator><description>drebin,&lt;br&gt;&lt;br&gt;I am not sure - I guess it is possible I was not clear enough in my post - obviously it would be bad if Store does not care if anything else is running on the machine and just takes up RAM as it wants. That's why it said:&lt;br&gt;&lt;br&gt;1. Exchange Store will grab as much RAM as it can if it thinks it needs it, yes. But - we constantly monitor the performance of the system in regards to memory usage and we can use this data to infer when we need more memory and when other applications or the OS needs more memory.  We then use this data to act accordingly. This scheme allows the system to act as if there is explicit control when in fact it is actually a few autonomous applications cooperating in a disconnected manner.&lt;br&gt;&lt;br&gt;In other words - we will decrease our (store) memory utilization as needed on the server too. Hope that clears it up?</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#207861</link><pubDate>Wed, 04 Aug 2004 12:34:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:207861</guid><dc:creator>drebin</dc:creator><description>Understood - and sorry to make a stir.. :-)</description></item><item><title>Clearing up the Store.exe mystery</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#217306</link><pubDate>Thu, 19 Aug 2004 22:43:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:217306</guid><dc:creator>Andy Baran's Blog</dc:creator><description /></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#219451</link><pubDate>Tue, 24 Aug 2004 14:04:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:219451</guid><dc:creator>Joey Winn</dc:creator><description>Thank you all for your comments / information.  I'm one of those 'new' Exchange Admins.  I've only been doing it for about three years.  (That's 'new', right?)&lt;br&gt;&lt;br&gt;Well I actually DID encounter some problems with store.exe causing user-side memory errors (Exchange 2003).  Two company users received a &amp;quot;90% memory used&amp;quot; - type of error message on their workstation.  Sure enough, Store.exe had used up a huge amount of RAM (about 650Megs, out of our 1Gig available) which resulted in our server utilizing about 90% of the RAM available.  No, there were no performance problems (unless you count the error and inability to send e-mails with any decent-sized attachment).  Ok yeah, so there WERE performance problems. haha.  Here comes my question....&lt;br&gt;&lt;br&gt;Can I limit store.exe to a specific amount of alloted RAM (perhaps 500 Megs for example)?&lt;br&gt;&lt;br&gt;Thanks. - joeywinn@yahoo.com&lt;br&gt;Joey Winn&lt;br&gt;Network Administrator&lt;br&gt;Bellomy Research, Inc.&lt;br&gt;&lt;br&gt;</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#219587</link><pubDate>Tue, 24 Aug 2004 16:52:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:219587</guid><dc:creator>Nino Bilic</dc:creator><description>Joey,&lt;br&gt;&lt;br&gt;There is no way to actually limit the amount of RAM that Exchange Store will use. So - you can not set a cap (limit) on it. That was always the case for Exchange - even in 5.5, even though the UI in Performance Optimizer suggested that you can do this - it would actually limit the buffers for the store rather than putting the cap on the memory use.&lt;br&gt;&lt;br&gt;That being said - I would really suggest to open up a case with our support on this - if you are seeing memory errors.</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#220605</link><pubDate>Thu, 26 Aug 2004 00:33:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:220605</guid><dc:creator>Colin Lee</dc:creator><description>One check I would do is to ensure that you have the /3GB and /Userva=3030 switch in the boot.ini as you have 1Gb or more of RAM. &lt;br&gt;&lt;br&gt;&lt;a target="_new" href="http://support.microsoft.com/default.aspx?scid=kb;en-us;316739"&gt;http://support.microsoft.com/default.aspx?scid=kb;en-us;316739&lt;/a&gt;&lt;br&gt;&lt;br&gt;</description></item><item><title>re: Why is Exchange Store.exe so RAM hungry?</title><link>http://blogs.technet.com/exchange/archive/2004/08/02/206012.aspx#220615</link><pubDate>Thu, 26 Aug 2004 00:52:00 GMT</pubDate><guid isPermaLink="false">d5e57398-b9ef-4490-9955-07cbb4e4a80d:220615</guid><dc:creator>blast from the past</dc:creator><description>What Nino tried to explain above (memory backoff alogrithm) is called affectionately  DBA which stands for Dynamic Buffer Allocation.    Basically depending on the memory pressure being put on the system (and being sampled at a fairly aggressive rate), the store will release memory back to the system.  For example, go to your Exchange server and start up IE or MMC.   Both spike memory usage at thier load time.  If you are watching the memory allocated to each process you will see Exchange store give up memory to the system (so it can then turn around and give it to IE / MMC).    You will have to trust me.. this is how it works.&lt;br&gt;&lt;br&gt;Now it wont release ALL of it at once, but will release it over (a relatively short) time.  On the flip side, we don't aggressively eat it as it becomes available.  Again based on memory pressure we will consume free memory in chunks.   Think of it as Exchange's private memory manager that takes input from the entire system and is a benevolent participant.&lt;br&gt;&lt;br&gt;The reason for doing it gradually is that you don't end up in a seesaw effect on the server where you are reacting to every absolute request for memory etc.  Realize that the &amp;quot;memory&amp;quot; you are evicting is essentially the database cache and if you evict too aggressively and then re-allocate you end up with unpredictable and in-efficient IO patterns and your hit ratio on the cache drops (plus all the added IO's required to flush the cache pages to disk and the subsequent reads to fill the cache).&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;br&gt;This now explains why on an Exchange server unused memory is essentially a wasted resource and if you can effectively approprirate and evict the resource, you net make your Exchange server as efficient as possible.</description></item></channel></rss>