

# Configuração dos núcleos e threads de CPU por núcleo de CPU para uma classe de instância de banco de dados
<a name="SQLServer.Concepts.General.OptimizeCPU.Enabling"></a>

Você pode configurar o número de núcleos e threads de CPU por núcleo para a classe de instância de banco de dados ao executar as seguintes operações:
+ [Criar uma instância de banco de dados do Amazon RDS](USER_CreateDBInstance.md)
+ [Modificar uma instância de banco de dados do Amazon RDS](Overview.DBInstance.Modifying.md)
+ [Restaurar uma instância de banco de dados](USER_RestoreFromSnapshot.md)
+ [Restaurar uma instância de banco de dados para um momento especificado no Amazon RDS](USER_PIT.md)

**nota**  
Ao modificar uma instância de banco de dados para configurar o número de núcleos ou de encadeamentos de CPU por núcleo, há uma breve interrupção semelhante a quando você modifica a classe da instância.

Defina os núcleos da CPU usando o Console de gerenciamento da AWS, a AWS CLI ou a API do RDS.

## Console
<a name="SQLServer.Concepts.General.OptimizeCPU.Enabling.CON"></a>

**Como definir os núcleos**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon RDS em [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Escolha **Create database (Criar banco de dados)**.

1. Ao definir as opções de **configuração da instância**:

   1. Escolha a opção **Otimizar CPU**.

   1. Defina sua opção de **vCPU** escolhendo o número de núcleos.  
![Página Criar banco de dados ao definir as configurações de OCPU.](https://docs.aws.amazon.com/pt_br/AmazonRDS/latest/UserGuide/images/OCPU-screenshot.png)

1. Depois de concluir outras seleções, selecione **Criar banco de dados**.

## AWS CLI
<a name="SQLServer.Concepts.General.OptimizeCPU.Enabling.CLI"></a>

**Como definir os núcleos**

1. Para configurar a opção Otimizar a CPU usando a AWS CLI, inclua a opção `--processor-features` no comando. Especifique o número de núcleos da CPU com `coreCount` e `threadsPerCore` como `1`.

1. Use a seguinte sintaxe:

   ```
   aws rds create-db-instance \
       --engine sqlserver-ee \
       --engine-version 16.00 \
       --license-model license-included \
       --allocated-storage 300 \
       --master-username {{myuser}} \
       --master-user-password {{xxxxx}} \
       --no-multi-az \
       --vpc-security-group-ids myvpcsecuritygroup \
       --db-subnet-group-name mydbsubnetgroup \
       --db-instance-identifier my-rds-instance \
       --db-instance-class db.m7i.4xlarge \
       --processor-features "Name=coreCount,Value=6" "Name=threadsPerCore,Value=1"
   ```

**Example de visualização dos valores válidos do processador para uma classe de instância de banco de dados**  
Use o comando `describe-orderable-db-instance-options` para mostrar as vCPUs padrão, núcleos e encadeamentos por núcleo. Por exemplo, o resultado do comando a seguir mostra as opções de processador para a classe de instância db.r7i.2xlarge.  

```
aws rds describe-orderable-db-instance-options --engine sqlserver-ee \
--db-instance-class db.r7i.2xlarge

Sample output: 
-------------------------------------------------------------
|            DescribeOrderableDBInstanceOptions             |
+-----------------------------------------------------------+
||               OrderableDBInstanceOptions                ||
|+------------------------------------+--------------------+|
||  DBInstanceClass                   |  db.r7i.2xlarge    ||
||  Engine                            |  sqlserver-ee      ||
||  EngineVersion                     |  13.00.6300.2.v1   ||
||  LicenseModel                      |  license-included  ||
||  MaxIopsPerDbInstance              |                    ||
||  MaxIopsPerGib                     |                    ||
||  MaxStorageSize                    |  64000             ||
||  MinIopsPerDbInstance              |                    ||
||  MinIopsPerGib                     |                    ||
||  MinStorageSize                    |  20                ||
||  MultiAZCapable                    |  True              ||
||  OutpostCapable                    |  False             ||
||  ReadReplicaCapable                |  True              ||
||  StorageType                       |  gp2               ||
||  SupportsClusters                  |  False             ||
||  SupportsDedicatedLogVolume        |  False             ||
||  SupportsEnhancedMonitoring        |  True              ||
||  SupportsGlobalDatabases           |  False             ||
||  SupportsIAMDatabaseAuthentication |  False             ||
||  SupportsIops                      |  False             ||
||  SupportsKerberosAuthentication    |  True              ||
||  SupportsPerformanceInsights       |  True              ||
||  SupportsStorageAutoscaling        |  True              ||
||  SupportsStorageEncryption         |  True              ||
||  SupportsStorageThroughput         |  False             ||
||  Vpc                               |  True              ||
|+------------------------------------+--------------------+|
|||                   AvailabilityZones                   |||
||+-------------------------------------------------------+||
|||                         Name                          |||
||+-------------------------------------------------------+||
|||  us-west-2a                                           |||
|||  us-west-2b                                           |||
|||  us-west-2c                                           |||
||+-------------------------------------------------------+||
|||              AvailableProcessorFeatures               |||
||+-----------------+-----------------+-------------------+||
|||  AllowedValues  |  DefaultValue   |       Name        |||
||+-----------------+-----------------+-------------------+||
|||  1,2,3,4        |  4              |  coreCount        |||
|||  1              |  1              |  threadsPerCore   |||
||+-----------------+-----------------+-------------------+||
```
Além disso, você pode executar os seguintes comandos para informações de processador de classe de instância de banco de dados:  
+ `describe-db-instances`: mostra as informações do processador da instância de banco de dados especificada.
+ `describe-db-snapshots`: mostra as informações do processador da instância de banco de dados especificada.
+ `describe-valid-db-instance-modifications`: mostra as modificações válidas no processador da instância de banco de dados especificada.
Na saída do comando anterior, os valores dos recursos do processador serão `null` se a opção Otimizar a CPU não estiver configurada.

**Example de definição do número de núcleos de CPU de uma instância de banco de dados**  
O exemplo a seguir modifica {{mydbinstance}} definindo o número de núcleos de CPU para 4 threadsPerCore como 1. Aplique as alterações imediatamente usando `--apply-immediately`. Caso queira aplicar as alterações durante a próxima janela de manutenção programada, omita `--apply-immediately option`.  

```
aws rds modify-db-instance \
    --db-instance-identifier {{mydbinstance}} \
    --db-instance-class db.r7i.8xlarge \
    --processor-features "Name=coreCount,Value={{4}}" "Name=threadsPerCore,Value={{1}}" \
    --apply-immediately
```

**Example de retorno às configurações de processador padrão de uma instância de banco de dados**  
O exemplo a seguir modifica a {{mydbinstance}} retornando-a para os valores de processador padrão.  

```
aws rds modify-db-instance \
    --db-instance-identifier {{mydbinstance}} \
    --db-instance-class db.r7i.8xlarge \
    --use-default-processor-features \
    --apply-immediately
```