Saturday, February 25, 2012

AWE + 8GB

I have the \PAE switch in the boot.ini file. Do I also need the \3GB ? What
is that used for ? If i dont use it, can i still enable AWE ?
I have 8GB of RAM and also enabled AWE option. Just wondering what the \3GB
switch does in addition to \PAE/PAE is an OS switch needed if you want any application to have access to
memory beyond 4GB.
Normally, applications cannot address or use any memory beyond 2GB. However,
if you have /PAE on in the OS, you can configure AWE in SQL Server so that
SQL Server, as an application, can access memory above 2 GB. It access that
memory sort of like a page fault, using some memory as a map, to be able to
access the memory in the higher range.
/3GB is an OS flag that allows any app to ADDRESS memory up to 3GB. That
means that if you have both /3GB and AWE in SQL Server, the memory in the
203GB range can be directly accessed, rather than going through the AWE
maps. Direct access is always faster than mapped addressing.
So to summarize the two OS flags:
/PAE allows an app within the OS to use memory beyond 4GB
/3GB allows an app to directly address memory in the 2-3GB range
--
HTH
--
Kalen Delaney
SQL Server MVP
www.SolidQualityLearning.com
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:#L1K98nkDHA.688@.TK2MSFTNGP10.phx.gbl...
> I have the \PAE switch in the boot.ini file. Do I also need the \3GB ?
What
> is that used for ? If i dont use it, can i still enable AWE ?
> I have 8GB of RAM and also enabled AWE option. Just wondering what the
\3GB
> switch does in addition to \PAE
>|||So its best advisable then even though we may set a max limit to say 5 or
6GB on an 8GB RAM box to use both switches right ?
"Kalen Delaney" <replies@.public_newsgroups.com> wrote in message
news:%2376kiKokDHA.2732@.TK2MSFTNGP11.phx.gbl...
> /PAE is an OS switch needed if you want any application to have access to
> memory beyond 4GB.
> Normally, applications cannot address or use any memory beyond 2GB.
However,
> if you have /PAE on in the OS, you can configure AWE in SQL Server so
that
> SQL Server, as an application, can access memory above 2 GB. It access
that
> memory sort of like a page fault, using some memory as a map, to be able
to
> access the memory in the higher range.
> /3GB is an OS flag that allows any app to ADDRESS memory up to 3GB. That
> means that if you have both /3GB and AWE in SQL Server, the memory in the
> 203GB range can be directly accessed, rather than going through the AWE
> maps. Direct access is always faster than mapped addressing.
> So to summarize the two OS flags:
> /PAE allows an app within the OS to use memory beyond 4GB
> /3GB allows an app to directly address memory in the 2-3GB range
> --
> HTH
> --
> Kalen Delaney
> SQL Server MVP
> www.SolidQualityLearning.com
>
> "Hassan" <fatima_ja@.hotmail.com> wrote in message
> news:#L1K98nkDHA.688@.TK2MSFTNGP10.phx.gbl...
> > I have the \PAE switch in the boot.ini file. Do I also need the \3GB ?
> What
> > is that used for ? If i dont use it, can i still enable AWE ?
> > I have 8GB of RAM and also enabled AWE option. Just wondering what the
> \3GB
> > switch does in addition to \PAE
> >
> >
>|||Yes, up to 16 GB you should use both. After 16, the memory maps that AWE
needs take so much space and must be directly accessible, so if you use /3GB
and only leave 1 GB for the OS and the AWE maps, it is not enough. So after
16GB, you should not use AWE and /3GB both.
--
HTH
--
Kalen Delaney
SQL Server MVP
www.SolidQualityLearning.com
"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:OXA4IdokDHA.1948@.TK2MSFTNGP12.phx.gbl...
> So its best advisable then even though we may set a max limit to say 5 or
> 6GB on an 8GB RAM box to use both switches right ?
>
> "Kalen Delaney" <replies@.public_newsgroups.com> wrote in message
> news:%2376kiKokDHA.2732@.TK2MSFTNGP11.phx.gbl...
> > /PAE is an OS switch needed if you want any application to have access
to
> > memory beyond 4GB.
> > Normally, applications cannot address or use any memory beyond 2GB.
> However,
> > if you have /PAE on in the OS, you can configure AWE in SQL Server so
> that
> > SQL Server, as an application, can access memory above 2 GB. It access
> that
> > memory sort of like a page fault, using some memory as a map, to be able
> to
> > access the memory in the higher range.
> >
> > /3GB is an OS flag that allows any app to ADDRESS memory up to 3GB. That
> > means that if you have both /3GB and AWE in SQL Server, the memory in
the
> > 203GB range can be directly accessed, rather than going through the AWE
> > maps. Direct access is always faster than mapped addressing.
> >
> > So to summarize the two OS flags:
> > /PAE allows an app within the OS to use memory beyond 4GB
> > /3GB allows an app to directly address memory in the 2-3GB range
> >
> > --
> > HTH
> > --
> > Kalen Delaney
> > SQL Server MVP
> > www.SolidQualityLearning.com
> >
> >
> > "Hassan" <fatima_ja@.hotmail.com> wrote in message
> > news:#L1K98nkDHA.688@.TK2MSFTNGP10.phx.gbl...
> > > I have the \PAE switch in the boot.ini file. Do I also need the \3GB ?
> > What
> > > is that used for ? If i dont use it, can i still enable AWE ?
> > > I have 8GB of RAM and also enabled AWE option. Just wondering what the
> > \3GB
> > > switch does in addition to \PAE
> > >
> > >
> >
> >
>|||"Hassan" <fatima_ja@.hotmail.com> wrote in message
news:%23L1K98nkDHA.688@.TK2MSFTNGP10.phx.gbl...
> I have the \PAE switch in the boot.ini file. Do I also need the \3GB ?
What
> is that used for ? If i dont use it, can i still enable AWE ?
> I have 8GB of RAM and also enabled AWE option. Just wondering what the
\3GB
> switch does in addition to \PAE
Just to add to what has already been said, be careful of AWE because it does
not always provide benefit. The additional level of indirection has some
overhead: I ran a large number of benchmarks a couple of years ago on a 16Gb
32 way machine and we found that every test process of our application ran
slightly _slower_ with AWE switched on!
If your application is using AWE as cache, demanding Gb of data to be
present in RAM for it to run at an acceptable speed, it is likely that you
have an inefficient application. In this case, tweaking the app will provide
you orders of magnitude better performance than throwing hardware at the
problem.
Of course, this is assuming you live in a perfect world...
On the other hand you may be using a single SQL Server instance to host many
SQL Server applications on different databases, in which case I can see that
AWE may provide some benefit in that case. In this case, however, it may
well be that you have partitioned the applications onto separate SQL Server
instances instead.
AWE gives me palpitations from the old x86 DOS days with the 640k/1Mb memory
barrier, paging LIM/EMS banks, upper memory and extended memory. I had a
little cottage industry crafting config.sys and autoexec.bat to make
combinations of apps work together without having to reboot or crash. Ahhh
those were the days.
Kind Regards, Howard|||I want to use AWE cos we have 8GB of RAM sitting on the box and do not wish
to see it go waste . The folks always say to throw as much memory as you can
and were just doing that ...How can we determine if our AWE is using cache
as you mentioned and that we might need to tweak the app bcos of the same ?
"Howard Long" <howard@.howardlongxxx.com> wrote in message
news:bmj3ap$df8$1@.sparta.btinternet.com...
> "Hassan" <fatima_ja@.hotmail.com> wrote in message
> news:%23L1K98nkDHA.688@.TK2MSFTNGP10.phx.gbl...
> > I have the \PAE switch in the boot.ini file. Do I also need the \3GB ?
> What
> > is that used for ? If i dont use it, can i still enable AWE ?
> > I have 8GB of RAM and also enabled AWE option. Just wondering what the
> \3GB
> > switch does in addition to \PAE
> Just to add to what has already been said, be careful of AWE because it
does
> not always provide benefit. The additional level of indirection has some
> overhead: I ran a large number of benchmarks a couple of years ago on a
16Gb
> 32 way machine and we found that every test process of our application ran
> slightly _slower_ with AWE switched on!
> If your application is using AWE as cache, demanding Gb of data to be
> present in RAM for it to run at an acceptable speed, it is likely that you
> have an inefficient application. In this case, tweaking the app will
provide
> you orders of magnitude better performance than throwing hardware at the
> problem.
> Of course, this is assuming you live in a perfect world...
> On the other hand you may be using a single SQL Server instance to host
many
> SQL Server applications on different databases, in which case I can see
that
> AWE may provide some benefit in that case. In this case, however, it may
> well be that you have partitioned the applications onto separate SQL
Server
> instances instead.
> AWE gives me palpitations from the old x86 DOS days with the 640k/1Mb
memory
> barrier, paging LIM/EMS banks, upper memory and extended memory. I had a
> little cottage industry crafting config.sys and autoexec.bat to make
> combinations of apps work together without having to reboot or crash. Ahhh
> those were the days.
> Kind Regards, Howard
>

No comments:

Post a Comment