

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 針對包含 RDS for SQL Server 授權的執行個體最佳化 CPUs
<a name="SQLServer.Concepts.General.OptimizeCPU"></a>

透過 RDS for SQL Server，您可以指定處理器功能來設定資料庫執行個體上的 vCPU 計數，同時維護相同的記憶體和 IOPS，以使用最佳化 CPU。您可以針對特定資料庫工作負載需求達成所需的memory-to-CPU 計數為基礎的 Microsoft Windows 作業系統和 SQL Server 授權成本。

若要指定處理器功能，請使用下列參數：

```
--processor-features "Name=coreCount,Value=value" \ 
	"Name=threadsPerCore,Value=value"
```
+ **coreCount** – 指定資料庫執行個體的 CPU 核心數量，以最佳化資料庫執行個體的授權成本。請參閱 [支援最佳化 CPU 的資料庫執行個體類別資料庫執行個體類別支援](SQLServer.Concepts.General.OptimizeCPU.Support.md) 尋找所選執行個體類型之核心計數的允許值。
+ **threadsPerCore** – 指定每個核心的執行緒，以定義每個 CPU 核心的執行緒數目。請參閱 [支援最佳化 CPU 的資料庫執行個體類別資料庫執行個體類別支援](SQLServer.Concepts.General.OptimizeCPU.Support.md) 以尋找所選執行個體類型的每個核心執行緒的允許值。

使用最佳化 CPU 設定建立 RDS for SQL Server 執行個體的範例命令：

```
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.8xlarge \
    --processor-features "Name=coreCount,Value=8" "Name=threadsPerCore,Value=1"
```

在此範例中，您會建立`db.m7i.8xlarge`執行個體，其 coreCount 預設為 16。透過使用最佳化 CPU，您可以選擇 coreCount 為 8，因此有效的 vCPU 計數為 8。

如果您建立沒有 `--processor-features` 參數的執行個體，則核心計數會設為 16，且每個核心的執行緒會預設為 1，因此預設 vCPU 計數為 16。

指定處理器功能時需要注意的一些考量事項：
+ **建立** – 從允許的值`threadsPerCore`為 `processor-features` 參數指定 `coreCount`和 。請參閱 [支援最佳化 CPU 的資料庫執行個體類別資料庫執行個體類別支援](SQLServer.Concepts.General.OptimizeCPU.Support.md)。
+ **修改** – 從使用最佳化 CPU 設定設定的執行個體類別修改為支援最佳化 CPU 設定的執行個體類別時，您必須使用 `--use-default-processor-features` 參數指定預設處理器設定，或在修改請求期間明確定義選項。
**注意**  
變更 vCPU 計數可能會影響與資料庫執行個體相關聯的授權費用。
+ **快照還原** – 將快照還原至與來源相同的執行個體類型時，還原的資料庫執行個體會從快照繼承最佳化 CPU 設定。如果還原至不同的執行個體類型，您需要定義目標執行個體的最佳化 CPU 設定或指定 `--use-default-processor-features` 參數。
+ **Point-in-time還原** – Point-in-time還原 (PITR) 涉及根據 PITR 的指定時間還原特定快照，然後套用所有交易日誌備份至該快照，從而將執行個體帶到指定的時間點。對於 PITR，最佳化 CPU 設定 `coreCount`和 衍生自來源快照 （而非時間點）`threadsPerCore`，除非在 PITR 請求期間指定自訂值。如果使用最佳化 CPU 設定啟用的來源快照，而且您使用不同的 PITR 執行個體類型，您必須定義目標執行個體的最佳化 CPU 設定或指定 `—-use-default-processor-features` 參數。

## 限制
<a name="SQLServer.Concepts.General.OptimizeCPU.Limitations"></a>

使用最佳化 CPU 時，適用下列限制：
+ 只有 Enterprise、Standard 和 Web Edition 支援最佳化 CPU。
+ 最佳化 CPU 可在特定執行個體上使用。請參閱 [支援最佳化 CPU 的資料庫執行個體類別資料庫執行個體類別支援](SQLServer.Concepts.General.OptimizeCPU.Support.md)。
+ 在 `2xlarge`和更新版本的執行個體大小上，支援自訂 CPU 核心數量。透過這些執行個體類型，最佳化 CPU 支援的 vCPCU 數目下限為 4。
+ 最佳化 CPU 只允許每個核心 1 個執行緒，因為從支援最佳化 CPU 的第 7 代開始的執行個體停用超執行緒。