Lock pages in memory now available for 64 bit Standard Edition of SQL Server

Great news!!!

Due to over-whelming customer demand for the "Lock pages in memory" support for the Standard Edition of SQL Server 2005 and 2008, Microsoft has released Cumulative Updates that will help SQL Server 64 bit Standard Edition to "lock pages" .

This feature was already available on the Enterprise and Developer Edition. Enabling "Lock pages in memory" enables the SQL Server to use the AWE APIs, thereby avoiding potential performance issues due to trimming of the working set.

"Lock pages in memory" comes as a trace flag that can be enabled on the following cumulative updates:
CU2 for SQL Server 2008 SP1 => https://support.microsoft.com/kb/970315/en-us
CU4 for SQL Server 2005 SP3 => https://support.microsoft.com/kb/970279/en-us

How to enable "Lock pages in Memory" at the Windows level:

  1. On the Start menu, click Run. In the Open box, type gpedit.msc. The Group Policy dialog box opens.
  2. On the Group Policy console, expand Computer Configuration, and then expand Windows Settings.
  3. Expand Security Settings, and then expand Local Policies.
  4. Select the User Rights Assignment folder. The policies will be displayed in the details pane.
  5. In the pane, double-click Lock pages in memory.
  6. In the Local Security Policy Setting dialog box, click Add.
  7. In the Select Users or Groups dialog box, add the account that runs the SQL Server Service.
  8. Restart the machine for these changes to take effect.

If you are running an Enterprise or Developer Edition of SQL Server 2005 or 2008, please stop here. The rest of the steps are for the Standard Edition Only.

  1. Ensure that the build of SQL Server 2008 is Cumulative Update 2 on Service Pack 1. Preferably, run the "select @@version" command against the SQL Server Instance and verify that the build is 10.00.2714.00. In case of SQL Server 2005, please verify that the build is 9.00.4226.

  2. Now set the Trace Flag 845 as a startup trace flag. This can be done by adding
    -T845 to the startup parameters from the SQL Server Configuration Manager. Please refer to the screenshot below:

    SQLConfigManager

  3. Restart the SQL Server Service.

  4. Verify that the following message is written in the SQL Server ErrorLog file at startup:
    Using locked pages for buffer pool

Note: Enabling Locked Pages may have a negative performance impact on your system performance. Please consider all potential effects before you use this option.
Enabling this trace flag on the Enterprise Edition or the Developer Edition has no effect.

Additional Readings:
How to configure SQL Server to use more than 2 GB of physical memory
Enabling Memory Support for Over 4 GB of Physical Memory
How to reduce paging of buffer pool memory in the 64-bit version of SQL Server
SQL Server Working Set Trim Problems? - Consider...
Support for Locked Pages on SQL Server 2005 Standard Edition 64-bit systems and on SQL Server 2008 Standard Edition 64-bit systems

Have a very good day!!!

Disclaimer: All information provided here is my personal opinion and is neither verified nor approved by Microsoft before it is published. All information, and code samples, if any, is provided "AS IS" with no warranties and confers no rights.