![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
I see that there was a another query about this. But to confirm If I wish to have active\active SQL on a server with 6Gb of memory should I use AWE enabled PAE enabled But not /3Gb (even though there are articles which state that you should for 4 to 16Gb of memory server) What recomendations are there for the AWE setting so that SQL can failover? -- Thanks for any help, Alistair |
#3
| |||
| |||
|
|
Is 6GB the total memory? How much do you want each instance of SQL Server to use? They can not both have 6GB. If 6GB is all you have then you probably should not use AWE since the memory is no longer dynamic. If you use /3GB on each instance they will each have 3GB to use but that leaves 0 for the OS. -- Andrew J. Kelly SQL MVP "Alistair Keay" <AlistairKeay (AT) discussions (DOT) microsoft.com> wrote in message news:1ABCEDC3-4218-4CCF-AE80-B4B12A3E11B1 (AT) microsoft (DOT) com... I see that there was a another query about this. But to confirm If I wish to have active\active SQL on a server with 6Gb of memory should I use AWE enabled PAE enabled But not /3Gb (even though there are articles which state that you should for 4 to 16Gb of memory server) What recomendations are there for the AWE setting so that SQL can failover? -- Thanks for any help, Alistair |
#4
| |||
| |||
|
|
That is not my understanding of how the /3GB switch actually works. When you add the /3GB to the boot.ini file it allows ALL applications to use 3GB of working memory and the OS then only gets 1GB (normally is 2GB for App, 2 GB for OS). It does not simply give 3GB to each SQL Instance. If you run WordPad, the two SQL instances and the calculator they will all get 3GB of working memory. As you can see from this example, paging would occur if both SQL's actually need that much memory. Cheers, Rod MVP - Windows Server - Clustering http://www.nw-america.com - Clustering Website http://www.msmvps.com/clustering - Blog "Andrew J. Kelly" <sqlmvpnooospam (AT) shadhawk (DOT) com> wrote in message news:OEx%23Yb4YFHA.3780 (AT) tk2msftngp13 (DOT) phx.gbl... Is 6GB the total memory? How much do you want each instance of SQL Server to use? They can not both have 6GB. If 6GB is all you have then you probably should not use AWE since the memory is no longer dynamic. If you use /3GB on each instance they will each have 3GB to use but that leaves 0 for the OS. -- Andrew J. Kelly SQL MVP "Alistair Keay" <AlistairKeay (AT) discussions (DOT) microsoft.com> wrote in message news:1ABCEDC3-4218-4CCF-AE80-B4B12A3E11B1 (AT) microsoft (DOT) com... I see that there was a another query about this. But to confirm If I wish to have active\active SQL on a server with 6Gb of memory should I use AWE enabled PAE enabled But not /3Gb (even though there are articles which state that you should for 4 to 16Gb of memory server) What recomendations are there for the AWE setting so that SQL can failover? -- Thanks for any help, Alistair |
#5
| |||
| |||
|
|
I see that there was a another query about this. But to confirm If I wish to have active\active SQL on a server with 6Gb of memory should I use AWE enabled PAE enabled But not /3Gb (even though there are articles which state that you should for 4 to 16Gb of memory server) What recomendations are there for the AWE setting so that SQL can failover? -- Thanks for any help, Alistair |
#6
| |||
| |||
|
|
I didn't think that is what I stated. Yes each application (in this case SQL Server) will be able to use up to 3GB of memory. That memory is still dynamic and each instance will only use it as it needs it. The point I was trying to make was there is a real possibility that both instances will use upwards of 3GB. That means they may spend a lot of time allocating and deallocating memory between each other and the OS. SQL Server will always try to leave some memory for the OS (when not using AWE) so that paging does not occur but in this case it very well may. -- Andrew J. Kelly SQL MVP "Rodney R. Fournier [MVP]" <rod (AT) die (DOT) spam.die.nw-america.com> wrote in message news:%23HBx3iIZFHA.2400 (AT) TK2MSFTNGP10 (DOT) phx.gbl... That is not my understanding of how the /3GB switch actually works. When you add the /3GB to the boot.ini file it allows ALL applications to use 3GB of working memory and the OS then only gets 1GB (normally is 2GB for App, 2 GB for OS). It does not simply give 3GB to each SQL Instance. If you run WordPad, the two SQL instances and the calculator they will all get 3GB of working memory. As you can see from this example, paging would occur if both SQL's actually need that much memory. Cheers, Rod MVP - Windows Server - Clustering http://www.nw-america.com - Clustering Website http://www.msmvps.com/clustering - Blog "Andrew J. Kelly" <sqlmvpnooospam (AT) shadhawk (DOT) com> wrote in message news:OEx%23Yb4YFHA.3780 (AT) tk2msftngp13 (DOT) phx.gbl... Is 6GB the total memory? How much do you want each instance of SQL Server to use? They can not both have 6GB. If 6GB is all you have then you probably should not use AWE since the memory is no longer dynamic. If you use /3GB on each instance they will each have 3GB to use but that leaves 0 for the OS. -- Andrew J. Kelly SQL MVP "Alistair Keay" <AlistairKeay (AT) discussions (DOT) microsoft.com> wrote in message news:1ABCEDC3-4218-4CCF-AE80-B4B12A3E11B1 (AT) microsoft (DOT) com... I see that there was a another query about this. But to confirm If I wish to have active\active SQL on a server with 6Gb of memory should I use AWE enabled PAE enabled But not /3Gb (even though there are articles which state that you should for 4 to 16Gb of memory server) What recomendations are there for the AWE setting so that SQL can failover? -- Thanks for any help, Alistair |
#7
| |||
| |||
|
|
I dealt with the exact same thing and unfortunately do not have any good information for you. You can put in the boot switched to your hearts content, but until you set SQL to AWE enabled you won't gain any benefit. The problem is, once you set SQL AWE enabled it can no longer dynamically set it's memory. So say you have 2 nodes with 6 GB of RAM and set both to AWE enabled. SQL will grab up all the memory it can when it starts up. The probelm occurs when you go to fail node A over into node B. Node A will not start because there's not enough memory there for it to start. You can get around this by setting max_memory so there's enough for each server to run on the same node, but then you're wasting the memory. So in your case, you'd need to set max_memory on each SQL server at 2.5 GB so if they both fail into the same node they only use 5 GB, leaving 1 GB free for the SO. There's a good article detailing this here. http://www.sql-server-performance.co..._to_2005_3.asp Check out the bottom of this page discussing memory. Hope it helps. "Alistair Keay" wrote: I see that there was a another query about this. But to confirm If I wish to have active\active SQL on a server with 6Gb of memory should I use AWE enabled PAE enabled But not /3Gb (even though there are articles which state that you should for 4 to 16Gb of memory server) What recomendations are there for the AWE setting so that SQL can failover? -- Thanks for any help, Alistair |
#8
| |||
| |||
|
|
Thanks. Quite a good article. I will follow your advice and test. > I will use AWE with memory capped on SQL as per your advice. I will enable PAE. I am still not clear however if I should use the /3Gb switch. For the memory I have I have found two technet articles _ one which says I should and the other which says I shouldn't. -- Thanks for any help, Alistair "Chris" wrote: I dealt with the exact same thing and unfortunately do not have any good information for you. You can put in the boot switched to your hearts content, but until you set SQL to AWE enabled you won't gain any benefit. The problem is, once you set SQL AWE enabled it can no longer dynamically set it's memory. So say you have 2 nodes with 6 GB of RAM and set both to AWE enabled. SQL will grab up all the memory it can when it starts up. The probelm occurs when you go to fail node A over into node B. Node A will not start because there's not enough memory there for it to start. You can get around this by setting max_memory so there's enough for each server to run on the same node, but then you're wasting the memory. So in your case, you'd need to set max_memory on each SQL server at 2.5 GB so if they both fail into the same node they only use 5 GB, leaving 1 GB free for the SO. There's a good article detailing this here. http://www.sql-server-performance.co..._to_2005_3.asp Check out the bottom of this page discussing memory. Hope it helps. "Alistair Keay" wrote: I see that there was a another query about this. But to confirm If I wish to have active\active SQL on a server with 6Gb of memory should I use AWE enabled PAE enabled But not /3Gb (even though there are articles which state that you should for 4 to 16Gb of memory server) What recomendations are there for the AWE setting so that SQL can failover? -- Thanks for any help, Alistair |
#9
| |||
| |||
|
|
If you don't enable /3GB you can only use 2GB per instance. -- Andrew J. Kelly SQL MVP "Alistair Keay" <AlistairKeay (AT) discussions (DOT) microsoft.com> wrote in message news:1B707F32-9D8C-4A0E-9DE0-B376A88728CD (AT) microsoft (DOT) com... Thanks. Quite a good article. I will follow your advice and test. > I will use AWE with memory capped on SQL as per your advice. I will enable PAE. I am still not clear however if I should use the /3Gb switch. For the memory I have I have found two technet articles _ one which says I should and the other which says I shouldn't. -- Thanks for any help, Alistair "Chris" wrote: I dealt with the exact same thing and unfortunately do not have any good information for you. You can put in the boot switched to your hearts content, but until you set SQL to AWE enabled you won't gain any benefit. The problem is, once you set SQL AWE enabled it can no longer dynamically set it's memory. So say you have 2 nodes with 6 GB of RAM and set both to AWE enabled. SQL will grab up all the memory it can when it starts up. The probelm occurs when you go to fail node A over into node B. Node A will not start because there's not enough memory there for it to start. You can get around this by setting max_memory so there's enough for each server to run on the same node, but then you're wasting the memory. So in your case, you'd need to set max_memory on each SQL server at 2.5 GB so if they both fail into the same node they only use 5 GB, leaving 1 GB free for the SO. There's a good article detailing this here. http://www.sql-server-performance.co..._to_2005_3.asp Check out the bottom of this page discussing memory. Hope it helps. "Alistair Keay" wrote: I see that there was a another query about this. But to confirm If I wish to have active\active SQL on a server with 6Gb of memory should I use AWE enabled PAE enabled But not /3Gb (even though there are articles which state that you should for 4 to 16Gb of memory server) What recomendations are there for the AWE setting so that SQL can failover? -- Thanks for any help, Alistair |
![]() |
| Thread Tools | |
| Display Modes | |
| |