October 14, 2009 at 9:06 pm
Comments posted to this topic are about the item Poor Man's Enterprise Feature - Lock Pages in Memory
-------------------------------------------------
-Amit
Give a man a fish and he'll ask for a lemon. Teach a man to fish and he wont get paged on weekends !! :w00t: - desparately trying to fish [/size]
October 15, 2009 at 6:00 am
October 15, 2009 at 6:16 am
ta.bu.shi.da.yu (10/15/2009)
All the Microsoft links point to info about the 64-bit versions of Windows. Is this feature restricted to this platform?
No, but it tends to be most useful (and most necessary) on 64 bit.
On 32 bit, Lock pages is required to use AWE.
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
October 15, 2009 at 9:21 am
What about SQL 2008? Is this an option there?
October 15, 2009 at 9:34 am
we had this when we first went to x64 and there was almost nothing on the internet to document the differences except a MSDN blog post by a Microsoft developer who now works in another department.
we ended up enabling it and all the problems went away. Funny thing is that out of our 3 main servers we only saw the problem on one of them. even on the server that does a lot of huge batch processing we didn't see this. the problem server was tens of millions of queries daily all with different parameters and variables
October 15, 2009 at 9:37 am
Steve Vassallo (10/15/2009)
What about SQL 2008? Is this an option there?
Yes.
SQL 2008 SP1 CU2 allows locked pages on standard edition. Good reference for this topic is the PSS Engineers' blog
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
October 15, 2009 at 9:44 am
the definitive blog on this:
which has a link to blog Gail posted..................
last line added by edit
---------------------------------------------------------------------
October 15, 2009 at 2:59 pm
according to microsoft this is supprtedin standard 32 bit edition prior to sp3cu4
i have seen the errors you get in the log when you need to add the lock pages in mem policy to the id running sql server and adding stopped the error messages. this is for 32 biut standard edition. i am not so sure I believe any of this blog.
Locked pages in memory operating system (OS) privilege (Allows locking physical memory, preventing OS paging of the locked memory.)4
SQL Server Standard, Enterprise, and Developer editions: Required for SQL Server process to use AWE mechanism. Memory allocated through AWE mechanism cannot be paged out.
Granting this privilege without enabling AWE has no effect on the server.
http://technet.microsoft.com/en-us/library/ms187499(SQL.90).aspx
October 16, 2009 at 9:45 am
ta.bu.shi.da.yu (10/15/2009)
All the Microsoft links point to info about the 64-bit versions of Windows. Is this feature restricted to this platform?
The problem only affects 64-bit Standard Edition.
In 32-bit Standard Edition, we could grant 'lock pages in memory' and enable AWE to lock buffer pool pages.
In 64-bit Standard Edition, prior to SP3 CU4 (2005) or SP1 CU2 (2008), there was no way to achieve the same effect.
This was a shocking omission by Microsoft - it is a shame it has taken them so long to correct it. Using a trace flag to enable it seems overly conservative: a trace flag to disable it would seem more sensible, but never mind.
Not sure why anyone should regard this as more useful or necessary on 64-bit systems (which tend to have more memory, if anything) compared to 32-bit systems, but hey.
October 16, 2009 at 1:09 pm
Heh... wouldn't a reasonable alternative be to only have SQL Server on the SQL Server box? 😉
--Jeff Moden
Change is inevitable... Change for the better is not.
October 16, 2009 at 1:14 pm
we always install the HP management software, anti-virus, Emulex HBA Anywhere. The HP software also installs a light version of Apache or Tomcat, forget which one. a lot of people will also install SSIS and other SQL components other than the database engine as well as other database vendors' drivers
October 16, 2009 at 1:19 pm
Jeff Moden (10/16/2009)
Heh... wouldn't a reasonable alternative be to only have SQL Server on the SQL Server box? 😉
Unfortunately not. I've heard of a case where SQL was the only thing installed on the box (other than OS) and and it was still getting paged out if max memory was set about about 60% of the total memory. This is a server with >16GB.
Suspicion was a driver bug, but couldn't be sure.
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
October 16, 2009 at 1:32 pm
few years ago Emulex and Windows 2003 x64 SP2 had an I/O bug and it caused one of our servers to lock up and reboot. MS released a series of hotfixes and everyone from Emulex to HP released updated drivers for HBA's and RAID controllers
October 16, 2009 at 5:42 pm
Jeff Moden (10/16/2009)
Heh... wouldn't a reasonable alternative be to only have SQL Server on the SQL Server box? 😉
On the face of it, yes. And, most of the time, this will work well. However, you are then at the mercy of Window's memory manager - any sudden requests for memory from any other process are likely to result in some of SQL Server's address space being paged out. It is an inviolable law of the universe that it will occur at the most inconvenient time.
There are many things that can cause sudden demands for memory from Windows, even if you lock the server down and carefully control who has access and what processes can run. Not being able to lock memory for SQL Server on 64-bit Standard Edition just introduced a whole new set of avoidable problems.
Paul
October 27, 2009 at 8:25 am
How about Enterprise edition 64 bit?
Viewing 15 posts - 1 through 15 (of 25 total)
You must be logged in to reply to this topic. Login to reply