Opzione awe enabled
In Microsoft SQL Server 2005 è possibile utilizzare l'API AWE (Address Windowing Extensions) per consentire l'accesso alla memoria fisica oltre i limiti impostati sulla memoria virtuale configurata. La quantità di memoria utilizzabile dipende dalla configurazione hardware e dal supporto fornito dal sistema operativo. Con l'introduzione dei sistemi operativi Microsoft , la quantità di memoria fisica supportata è aumentata. La memoria fisica alla quale AWE ha accesso dipende dal sistema operativo in uso.
- Standard Edition supporta fino a 4 GB di memoria fisica.
- Enterprise Edition supporta fino a 32 GB di memoria fisica.
- Datacenter Edition supporta fino a 64 GB di memoria fisica.
[!NOTA] AWE non è necessario e non può essere configurato con sistemi operativi a 64 bit.
Considerazioni sull'utilizzo
Prima di attivare AWE, osservare le seguenti indicazioni in base al sistema operativo in uso:
Windows 2000
- Se la memoria fisica disponibile è inferiore al limite configurato impostato nello spazio degli indirizzi della memoria virtuale, la memoria mappata AWE non può essere attivata. In questo caso la memoria viene allocata in modo dinamico e SQL Server viene eseguito in modalità non AWE, indipendentemente dall'impostazione dell'opzione awe enabled.
- Se la memoria fisica disponibile è maggiore della memoria virtuale accessibile, è possibile attivare la memoria mappata AWE. In questo caso, si verificano le due condizioni seguenti:
- Se la memoria fisica disponibile è superiore al valore dell'opzione max server memory, l'istanza di SQL Server blocca la quantità di memoria specificata in max server memory.
- Se la memoria fisica disponibile è inferiore al valore dell'opzione max server memory o se l'opzione max server memory non è stata impostata, l'istanza di SQL Server blocca tutta la memoria disponibile tranne 128 MB.
- La memoria mappata AWE non viene rilasciata fino alla chiusura di SQL Server. Microsoft consiglia, quando si attiva AWE, di impostare un valore per l'opzione max server memory che tenga in considerazione i requisiti di memoria di altre applicazioni in esecuzione nel server.
Windows Server 2003
- SQL Server 2005 supporta l'allocazione dinamica della memoria mappata AWE con . AWE estende le funzionalità delle applicazioni eseguite in sistemi operativi a 32 bit consentendo l'accesso alla memoria fisica disponibile oltre i limiti impostati nel relativo spazio degli indirizzi della memoria virtuale.
- Durante l'avvio, SQL Server riserva solo una piccola parte della memoria mappata AWE. Man mano che si rende necessaria memoria mappata AWE aggiuntiva, il sistema operativo la alloca in modo dinamico a SQL Server. Analogamente, se sono necessarie meno risorse, SQL Server può restituire memoria mappata AWE al sistema operativo, per l'utilizzo da parte di altri processi o applicazioni. Il bilanciamento tra SQL Server e il sistema operativo è soggetto ai vincoli dei parametri min server memory e max server memory.
- Quando si esegue SQL Server 2005 con , SQL Server risponde alle modifiche apportate alle opzioni di configurazione max server memory e min server memory senza che sia necessario il riavvio dell'istanza di SQL Server. Per ulteriori informazioni su min server memory e max server memory, vedere Opzioni per la memoria server.
- In la memoria mappata AWE dinamica è supportata sui server con memoria fisica inferiore al limite configurato nello spazio degli indirizzi della memoria virtuale. Quando si utilizza AWE in base a questa condizione non si verificano conseguenze sulle prestazioni, ma quando si aggiunge memoria fisica oltre il limite dell'indirizzo della memoria virtuale è possibile utilizzarla senza riavviare il server.
In e non è possibile eseguire lo swapping della memoria AWE nei file di paging. È dunque necessario determinare la quantità di memoria allocabile alle istanze di SQL Server identificando la quantità di memoria disponibile dopo l'avvio di tutte le altre applicazioni che verranno utilizzate nel computer.
Utilizzare il contatore di SQL Server Memoria totale server (KB) in Monitor di sistema per determinare la quantità di memoria allocata dall'istanza di SQL Server eseguita in modalità AWE. Configurare l'opzione max server memory in modo da lasciare libera ulteriore memoria per le possibili esigenze di altre applicazioni, e . Per ulteriori informazioni, vedere Monitoraggio dell'utilizzo della memoria.
![]() |
---|
L'utilizzo concomitante dell'opzione awe enabled e dell'impostazione max server memory può influire negativamente sulle prestazioni di altre applicazioni o di SQL Server se eseguito in un ambiente cluster o con istanze multiple. Per ulteriori informazioni sull'utilizzo della memoria mappata AWE, vedere Gestione della memoria per database di grandi dimensioni. |
Attivazione di AWE
Per attivare AWE, impostare awe enabled su 1. In , a meno che non sia stato specificato un valore per max server memory, SQL Server riserva quasi tutta la memoria disponibile durante l'avvio, lasciando 128 MB o meno di memoria fisica per altre applicazioni. Quando l'opzione AWE non è attivata, è possibile controllare la quantità di memoria fisica lasciata a disposizione delle altre applicazioni tramite l'impostazione max server memory. In la gestione della memoria mappata AWE è dinamica affinché solo una piccola parte della memoria fisica disponibile totale venga allocata nella fase di avvio.
Se l'opzione è attivata, all'avvio dell'istanza di SQL Server 2005 viene scritto un messaggio relativo all'attivazione dell'estensione AWE nel log degli errori di SQL Server.
[!NOTA] Prima dell'attivazione di AWE è necessario concedere l'autorizzazione LOCK PAGE IN MEMORY all'account di SQL Server. Per ulteriori informazioni, vedere Procedura: Attivazione dell'opzione Blocco di pagine in memoria (Windows).
awe enabled è un'opzione avanzata. Se per modificarne l'impostazione si utilizza la stored procedure di sistema sp_configure, sarà possibile modificare awe enabled soltanto quando show advanced options è impostata su 1. Per rendere effettive le modifiche, è necessario riavviare l'istanza di SQL Server.
Esempio
Nel codice di esempio seguente viene illustrato come attivare AWE e configurare min server memory su 1 GB e max server memory su 6 GB:
Innanzitutto, attivare AWE:
sp_configure 'show advanced options', 1
RECONFIGURE
GO
sp_configure 'awe enabled', 1
RECONFIGURE
GO
Dopo il riavvio di SQL Server, nel log degli errori di SQL Server viene visualizzato il seguente messaggio: Address Windowing Extensions enabled
.
Configurare quindi la memoria:
sp_configure 'min server memory', 1024
RECONFIGURE
GO
sp_configure 'max server memory', 6144
RECONFIGURE
GO
Nell'esempio precedente per SQL Server 2005 e Windows Server 2003, le impostazioni della memoria consentono al pool di buffer di eseguire la gestione dinamica della memoria mappata AWE fra 1 GB e 6 GB. Questo esempio di gestione dinamica della memoria AWE non si applica a SQL Server 2000. Se altre applicazioni richiedono memoria aggiuntiva, SQL Server può rilasciare la memoria mappata AWE allocata non necessaria. Nell'esempio è possibile il rilascio della memoria mappata AWE solo fino a un massimo di 1 GB, il limite di memoria minima impostato per il server.
Si noti che impostare l'opzione min server memory su 1 GB non forza automaticamente l'acquisizione di 1 GB di memoria da parte di SQL Server. La memoria verrà allocata su richiesta, in base al carico di lavoro corrente del server di database.
Disattivazione di AWE
Per disattivare AWE, impostare awe enabled su 0 ed eseguire l'istruzione RECONFIGURE. La memoria AWE è disattivata per impostazione predefinita. Il log degli errori di SQL Server registra la modifica all'opzione awe enabled. Dopo il riavvio, SQL Server 2005 opera in una normale modalità di allocazione dinamica della memoria. La memoria disponibile è limitata allo spazio degli indirizzi virtuale o alla memoria fisica, a seconda del valore minore.
Vedere anche
Riferimento
Oggetto Buffer Manager di SQL Server
Concetti
Utilizzo di AWE
Abilitazione del supporto per oltre 4 GB di memoria fisica
Attivazione della memoria AWE per SQL Server
Impostazione delle opzioni di configurazione del server
Altre risorse
RECONFIGURE (Transact-SQL)
sp_configure (Transact-SQL)