本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
指定 Amazon EC2 執行個體的 CPU 選項
您可以在執行個體啟動期間或之後指定 CPU 選項。
停用同時多執行緒
若要停用也稱為超執行緒的同時多執行緒 (SMT),請為每個核心指定 1 個執行緒。
- Console
-
在執行個體啟動期間停用 SMT
-
遵照 使用主控台中的啟動執行個體精靈,啟動 EC2 執行個體 程序並視需要設定執行個體。
-
展開進階詳細資訊,然後選取指定 CPU 選項核取方塊。
-
針對 Core count (核心計數),選擇所需的 CPU 核心數量。在本範例中,若要指定
r5.4xlarge執行個體的預設 CPU 核心計數,請選擇8。 -
若要停用 SMT,請在每核心執行緒中選擇 1。
-
在 Summary (摘要) 面板中,檢閱您的執行個體組態,然後選擇 Launch instance (啟動執行個體)。如需詳細資訊,請參閱使用主控台中的啟動執行個體精靈,啟動 EC2 執行個體。
-
- AWS CLI
-
在執行個體啟動期間停用 SMT
使用 run-instances AWS CLI 命令,並為
--cpu-options參數指定1ThreadsPerCore的值。在CoreCount指定 CPU 核心數目。在本範例中,若要指定r7i.4xlarge執行個體的預設 CPU 核心計數,請指定值8。aws ec2 run-instances \ --image-idami-0abcdef1234567890\ --instance-typer7i.4xlarge\ --cpu-options "CoreCount=8,ThreadsPerCore=1" \ --key-namemy-key-pair - PowerShell
-
在執行個體啟動期間停用 SMT
使用 New-EC2Instance 命令,並為
-CpuOptions參數指定1ThreadsPerCore的值。在CoreCount指定 CPU 核心數目。在本範例中,若要指定r7i.4xlarge執行個體的預設 CPU 核心計數,請指定值8。New-EC2Instance ` -ImageId 'ami-0abcdef1234567890' ` -InstanceType 'r7i.4xlarge' ` -CpuOptions @{CoreCount=8; ThreadsPerCore=1} ` -KeyName 'my-key-pair'
注意
若要停用現有執行個體的 SMT,請依照 變更 EC2 執行個體的 CPU 選項 中所示的流程操作,並將每個核心執行的執行緒數量變更為 1。
啟動時指定 vCPU 的自訂數量
當您從 EC2 主控台或 AWS CLI啟動執行個體時,您可以自訂 CPU 核心數量和每個核心的執行緒數量。本節中的範例使用具有下列預設設定的r5.4xlarge 執行個體類型:
-
CPU 核心:8
-
每核心執行緒:2
執行個體啟動時,預設會有執行個體類型可用的 vCPUs 數量上限。對於此執行個體類型,總共 16 個 vCPU (8 個核心,每個執行 2 個執行緒)。如需有關此執行個體類型的詳細資訊,請參閱 記憶體最佳化執行個體。
以下範例啟動有 4 個 vCPU 的 r5.4xlarge 執行個體。
- Console
-
在執行個體啟動期間指定 vCPU 的自訂數量
-
遵照 使用主控台中的啟動執行個體精靈,啟動 EC2 執行個體 程序並視需要設定執行個體。
-
展開進階詳細資訊,然後選取指定 CPU 選項核取方塊。
-
指定 2 個 CPU 核心和每核心 2 個執行緒,即可得到 4 個 vCPU,如下所示:
-
在核心計數中,選擇 2。
-
針對 Threads per core (每核心執行緒),選擇 2。
-
-
在 Summary (摘要) 面板中,檢閱您的執行個體組態,然後選擇 Launch instance (啟動執行個體)。如需詳細資訊,請參閱使用主控台中的啟動執行個體精靈,啟動 EC2 執行個體。
-
- AWS CLI
-
在執行個體啟動期間指定 vCPU 的自訂數量
使用 run-instances AWS CLI 命令,並在
--cpu-options參數中指定 CPU 核心數量和執行緒數量。您可以指定 2 個 CPU 核心和每核心 2 個執行緒,如此便能得到 4 個 vCPU。aws ec2 run-instances \ --image-idami-0abcdef1234567890\ --instance-typer7i.4xlarge\ --cpu-options "CoreCount=2,ThreadsPerCore=2" \ --key-namemy-key-pair或者,指定 4 個 CPU 核心和每核心 1 個執行緒 (停用 SMT),也可以產生 4 個 vCPU:
aws ec2 run-instances \ --image-idami-0abcdef1234567890\ --instance-typer7i.4xlarge\ --cpu-options "CoreCount=4,ThreadsPerCore=1" \ --key-namemy-key-pair - PowerShell
-
在執行個體啟動期間指定 vCPU 的自訂數量
使用 New-EC2Instance 命令,並在
-CpuOptions參數中指定 CPU 核心數量和執行緒數量。您可以指定 2 個 CPU 核心和每核心 2 個執行緒,如此便能得到 4 個 vCPU。New-EC2Instance ` -ImageId 'ami-0abcdef1234567890' ` -InstanceType 'r7i.4xlarge' ` -CpuOptions @{CoreCount=2; ThreadsPerCore=2} ` -KeyName 'my-key-pair'或者,指定 4 個 CPU 核心和每核心 1 個執行緒 (停用 SMT),也可以產生 4 個 vCPU:
New-EC2Instance ` -ImageId 'ami-0abcdef1234567890' ` -InstanceType 'r7i.4xlarge' ` -CpuOptions @{CoreCount=4; ThreadsPerCore=1} ` -KeyName 'my-key-pair'
在啟動範本中指定 vCPU 的自訂數量
可在啟動範本中自訂執行個體的 CPU 核心數量和每個核心的執行緒數量。本節中的範例使用具有下列預設設定的r5.4xlarge 執行個體類型:
-
CPU 核心:8
-
每核心執行緒:2
執行個體啟動時,預設會有執行個體類型可用的 vCPUs 數量上限。對於此執行個體類型,總共 16 個 vCPU (8 個核心,每個執行 2 個執行緒)。如需有關此執行個體類型的詳細資訊,請參閱 記憶體最佳化執行個體。
以下範例建立的啟動範本會指定具有 4 個 vCPU 的 r5.4xlarge 執行個體的組態。
- Console
-
在啟動範本中指定 vCPU 的自訂數量
-
遵照 指定參數來建立啟動範本 程序並視需要設定啟動範本。
-
展開進階詳細資訊,然後選取指定 CPU 選項核取方塊。
-
指定 2 個 CPU 核心和每核心 2 個執行緒,即可得到 4 個 vCPU,如下所示:
-
在核心計數中,選擇 2。
-
針對 Threads per core (每核心執行緒),選擇 2。
-
-
在摘要面板中,檢閱執行個體組態,然後選擇建立啟動範本。如需詳細資訊,請參閱將執行個體啟動參數存放在 Amazon EC2 啟動範本中。
-
- AWS CLI
-
在啟動範本中指定 vCPU 的自訂數量
使用 create-launch-template AWS CLI 命令,並在
CpuOptions參數中指定 CPU 核心數量和執行緒數量。您可以指定 2 個 CPU 核心和每核心 2 個執行緒,如此便能得到 4 個 vCPU。aws ec2 create-launch-template \ --launch-template-nameTemplateForCPUOptions\ --version-descriptionCPUOptionsVersion1\ --launch-template-data file://template-data.json以下是包含啟動範本資料的 JSON 檔案範例,其中包括此範例的執行個體組態的 CPU 選項。
{ "NetworkInterfaces": [{ "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Ipv6AddressCount": 1, "SubnetId": "subnet-0abcdef1234567890" }], "ImageId": "ami-0abcdef1234567890", "InstanceType": "r5.4xlarge", "TagSpecifications": [{ "ResourceType": "instance", "Tags": [{ "Key":"Name", "Value":"webserver" }] }], "CpuOptions": { "CoreCount":2, "ThreadsPerCore":2} }或者,指定 4 個 CPU 核心和每核心 1 個執行緒 (停用 SMT),也可以產生 4 個 vCPU:
{ "NetworkInterfaces": [{ "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Ipv6AddressCount": 1, "SubnetId": "subnet-0abcdef1234567890" }], "ImageId": "ami-0abcdef1234567890", "InstanceType": "r5.4xlarge", "TagSpecifications": [{ "ResourceType": "instance", "Tags": [{ "Key":"Name", "Value":"webserver" }] }], "CpuOptions": { "CoreCount":4, "ThreadsPerCore":1} } - PowerShell
-
在啟動範本中指定 vCPU 的自訂數量
New-EC2LaunchTemplate ` -LaunchTemplateName 'TemplateForCPUOptions' ` -VersionDescription 'CPUOptionsVersion1' ` -LaunchTemplateData (Get-Content -Path 'template-data.json' | ConvertFrom-Json)
變更 EC2 執行個體的 CPU 選項
由於您的需求會隨著時間發生變化,您可能想要變更現有執行個體的 CPU 選項組態。每個在執行個體上執行的執行緒都稱為虛擬 CPU (vCPU)。您可以在 Amazon EC2 主控台、 AWS CLI API 或 SDKs 中變更為現有執行個體執行的 vCPUs 數量。執行個體狀態必須是 Stopped,才能進行此變更。
若要檢視主控台或命令列步驟,請選取符合您環境的標籤。如需 API 請求和回應資訊,請參閱「Amazon EC2 API 參考」中的 ModifyInstanceCpuOptions。
- Console
-
請依照此程序操作,從 AWS Management Console變更執行個體的作用中 vCPU 數量。
前往 https://console.aws.amazon.com/ec2/
開啟 Amazon EC2 主控台。 -
在左側導覽窗格中選擇 (執行個體)。這會開啟為目前 AWS 區域定義的執行個體清單。
-
從執行個體清單中,選取執行個體。或者,您可以選取執行個體連結以開啟執行個體詳細資訊頁面。
-
如果執行個體正在執行,您必須先將其停止才能繼續。從執行個體狀態功能表中,選擇停止執行個體。
-
若要變更 vCPU 組態,請從動作選單中的執行個體設定中選擇變更 CPU 選項。這會開啟變更 CPU 選項頁面。
-
選擇下列其中一個 CPU 選項,以變更執行個體的組態。
- 使用預設 CPU 選項
-
此選項會將執行個體重設為執行個體類型的預設 vCPUs數量。預設為執行所有 CPU 核心的所有執行緒。
- 指定 CPU 選項
-
此選項會啟用在執行個體上執行的 vCPUs 數量組態。
-
如果您選擇指定 CPU 選項,則會顯示作用中 vCPUs 欄位。
-
使用第一個選擇器來設定每個 CPU 核心的執行緒數量。若要停用同時多執行緒,請選擇
1。 -
使用第二個選擇器來設定在執行個體上執行CPUs 數量。
當您變更 CPU 選項選取器時,下列欄位會動態更新。
-
作用中 vCPU:根據您所進行的選擇,CPU 核心的數量乘以每核心執行緒。例如,如果您選取 2 個執行緒和 4 個核心,則等於 8 vCPU。
-
vCPUs 總數:執行個體類型的 vCPU 數量上限。例如,對於
m6i.4xlarge執行個體類型,這是 16 個 vCPU (8 個核心,每個執行 2 個執行緒)。
-
-
若要套用您的更新,請選擇變更。
- AWS CLI
-
請依照此程序操作,從 AWS CLI變更執行個體的作用中 vCPU 數量。
使用 modify-instance-cpu-options
命令,並指定 --core-count參數中執行的 CPU 核心數量,以及--threads-per-core參數中每個核心執行的執行緒數量。下列範例顯示
m6i.4xlarge執行個體類型的兩個可能組態,以在指定的執行個體上執行 8 vCPUs。此執行個體類型的預設值為 16 個 vCPU (8 個核心,每個核心執行 2 個執行緒)。範例 1:執行 4 個 CPU 核心,每個核心有 2 個執行緒,總共 8 個 vCPU。
aws ec2 modify-instance-cpu-options \ --instance-idi-1234567890abcdef0\ --core-count=4\ --threads-per-core=2範例 2:將每個核心執行的執行緒數量變更為
1,停用同時多執行緒。產生的組態也會執行總共 8 vCPUs (8 個 CPU 核心,每個核心 1 個執行緒)。aws ec2 modify-instance-cpu-options \ --instance-id1234567890abcdef0\ --core-count=8\ --threads-per-core=1 - PowerShell
-
變更執行個體的作用中 vCPUs數量
使用 Edit-EC2InstanceCpuOption cmdlet,並指定
-CoreCount參數中執行的 CPU 核心數量,以及ThreadsPerCore參數中每個核心執行的執行緒數量。範例 1:執行 4 個 CPU 核心,每個核心有 2 個執行緒,總共 8 個 vCPU。
Edit-EC2InstanceCpuOption ` -InstanceId 'i-1234567890abcdef0' ` -CoreCount 4 ` -ThreadsPerCore 2範例 2:將每個核心執行的執行緒數量變更為
1,停用同時多執行緒。產生的組態也會執行總共 8 vCPUs (8 個 CPU 核心,每個核心 1 個執行緒)。Edit-EC2InstanceCpuOption ` -InstanceId 'i-1234567890abcdef0' ` -CoreCount 8 ` -ThreadsPerCore 1