Is using the /3GB statup switch in Windows 2008 x64 only running Sql Server 2008 x64, a good thing?

9,509

Solution 1

The /3GB switch does not apply to 64-bit editions of Windows

http://support.microsoft.com/kb/294418

Applications that are compiled with the /LARGEADDRESSAWARE option, as would be required to take advantage of the /3GB switch in 32-bit Windows, will automatically be able to address 4 GB of virtual memory without any boot time switches or changes to x64 Windows. Plus, of course, the operating system does not have to share that 4 GB of space. Therefore, it is not constrained at all

and

A pool of system Page Table Entries (PTEs) that is used to map system pages such as I/O space, Kernel stacks, and memory descriptor lists. 64-bit programs use a 16-terabyte tuning model (8 terabytes User and 8 terabytes Kernel). 32-bit programs still use the 4-GB tuning model (2 GB User and 2 GB Kernel). This means that 32-bit processes that run on 64-bit versions of Windows run in a 4-GB tuning model (2 GB User and 2GB Kernel). 64-bit versions of Windows do not support the use of the /3GB switch in the boot options. Theoretically, a 64-bit pointer could address up to 16 exabytes. 64-bit versions of Windows have currently implemented up to 16 terabytes of address space

Solution 2

With SQL Server the more memory the better. SQL Server will pretty much take what ever you can give it. You'll want to reserve at least 1 Gig for the OS, and leave the rest for SQL Server.

Because its the 64bit OS you won't need the 3GB or AWE switches for the OS.

Share:
9,509

Related videos on Youtube

Chris Canal
Author by

Chris Canal

Updated on September 17, 2022

Comments

  • Chris Canal
    Chris Canal almost 2 years

    there's plenty of articles that explain the use of the /3GB startup switch. The general explanation is ..

    Regardless of the amount of physical memory in your system, Windows uses a virtual address space of 4 GB, with 2 GB allocated to user-mode processes (for example, applications) and 2 GB allocated to kernel-mode processes (for example, the operating system and kernel-mode drivers). On systems that have 1 GB or more of physical memory, these two startup switches can be used to allocate more memory to applications (3 GB) and less memory to the operating system (1 GB).

    Ok - that's not hard to understand. ... ... but is this a good thing for a Sql Server? Is the answer dependant upon how much total memory exists in the server?

    For this discussion can we relate any answers to

    1. 4 GB ram
    2. 16 GB ram

    ... with a server containing Windows 2008 standard x64 + Sql Server 2008 x64. I hope the # of processors don't impact the answer :P

    So i suppose i'm asking, does Sql Server require a lot of ram for OS + kernal mode drivers?