

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

# 選取 Amazon EC2 執行個體，並為您的架構保留 CPU 核心
<a name="agent-instance-selection"></a>

## 支援的 Amazon EC2 執行個體類型
<a name="supported-ec2-instance-types"></a>

 由於運算密集型資料交付工作流程， AWS Ground Station 代理程式需要專用 CPU 核心才能運作。我們支援下列執行個體類型。請參閱 [CPU 核心規劃](#cpu-core-planning)以決定最適合您的使用案例的執行個體類型。

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_tw/ground-station/latest/gs-agent-ug/agent-instance-selection.html)

**注意**  
最大 DigIF 彙總頻寬欄顯示每個執行個體類型上合併的所有 DigIF 資料流程支援的最大彙總頻寬。這些限制是由於配置給指定執行個體類型的 EC2 網路容量所致。這些值代表保守估計，應該在規劃您的 DigIF 組態時使用。實際頻寬可能會因系統負載和其他因素而有所不同。

## CPU 核心規劃
<a name="cpu-core-planning"></a>

 AWS Ground Station 代理程式需要專用處理器核心來共用每個資料流程的 L3 快取。代理程式旨在利用超執行緒 (HT) CPU 對，並需要保留 HT 對供其使用。超執行緒對是包含在單一核心中的一對虛擬 CPUs (vCPU)。下表提供資料流程資料速率映射到為單一資料流程的代理程式預留的必要核心數量。此資料表假設 Cascade Lake 或更新版本CPUs，且適用於任何支援的執行個體類型。如果您的頻寬介於資料表中的項目之間，請選取下一個最高的項目。

 代理程式需要額外的預留核心以進行管理和協調，因此所需的總核心數將是每個資料流程所需的核心總和 （從下表） 加上**單一額外的核心 (2 vCPUs)**。


| AntennaDownlink 頻寬 (MHz) | 預期的 VITA-49.2 DigIF 資料速率 (Mb/s) | 核心數目 (HT CPU 對） | vCPU 總數 | 
| --- | --- | --- | --- | 
|  50  |  1000  |  3  |  6  | 
|  100  |  2000  |  4  |  8  | 
|  150  |  3000  |  5  |  10  | 
|  200  |  4000  |  6  |  12  | 
|  250  |  5000  |  6  |  12  | 
|  300  |  6000  |  7  |  14  | 
|  350  |  7000  |  8  |  16  | 
|  400  |  8000  |  9  |  18  | 

## 收集架構資訊
<a name="agent-cpu-planning-architecture"></a>

 `lscpu` 提供系統架構的相關資訊。基本輸出會顯示哪些 vCPUs（標記為「CPU」) 屬於哪些 NUMA 節點 （以及每個 NUMA 節點共用 L3 快取）。以下我們會檢查`c5.24xlarge`執行個體，以收集必要的資訊來設定 AWS Ground Station 代理程式。這包括有用的資訊，例如 vCPUs、核心和 vCPU-to-node關聯的數量。

```
> lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 96
On-line CPU(s) list: 0-95
Thread(s) per core: 2             <------
Core(s) per socket: 24
Socket(s): 2
NUMA node(s): 2
Vendor ID: GenuineIntel
CPU family: 6
Model: 85
Model name: Intel(R) Xeon(R) Platinum 8275CL CPU @ 3.00GHz
Stepping: 7
CPU MHz: 3601.704
BogoMIPS: 6000.01
Hypervisor vendor: KVM
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 1024K
L3 cache: 36608K
NUMA node0 CPU(s): 0-23,48-71     <------
NUMA node1 CPU(s): 24-47,72-95    <------
```

 AWS Ground Station 代理程式專用的核心應包含每個指派核心vCPUs。資料流程的所有核心都必須存在於相同的 NUMA 節點上。`lscpu` 命令`-p`的選項提供我們設定代理程式所需的核心與 CPU 關聯。相關欄位是 CPU （我們稱之為 vCPU)、Core 和 L3 （指出該核心共用哪個 L3 快取）。請注意，在大多數 Intel 處理器上，NUMA 節點等於 L3 快取。

 請考慮以下 `lscpu -p`輸出的子集 `c5.24xlarge`（為了清楚起見而簡化和格式化）。

```
CPU,Core,Socket,Node,,L1d,L1i,L2,L3
0   0    0      0     0   0   0  0
1   1    0      0     1   1   1  0
2   2    0      0     2   2   2  0
3   3    0      0     3   3   3  0
...
16  0    0      0     0   0   0  0
17  1    0      0     1   1   1  0
18  2    0      0     2   2   2  0
19  3    0      0     3   3   3  0
```

 從輸出中，我們可以看到 Core 0 包含 vCPUs0 和 16，Core 1 包含 vCPUs1 和 17，Core 2 包含 vCPUs2 和 18。換句話說，超執行緒對是：0 和 16、1 和 17、2 和 18。

## CPU 指派範例
<a name="agent-cpu-planning-example"></a>

 例如，我們將使用`c5.24xlarge`執行個體進行 350MHz 的雙極性寬頻下行。從 的表格中，[CPU 核心規劃](#cpu-core-planning)我們知道 350 MHz 下行需要單一資料流程的 8 個核心 (16 vCPUs)。這表示使用兩個資料流程的雙極性設定總共需要 16 個核心 (32 個 vCPUs) 加上一個核心 (2 vCPUs) 的代理程式。

 我們知道 的`lscpu`輸出`c5.24xlarge`包含 `NUMA node0 CPU(s): 0-23,48-71`和 `NUMA node1 CPU(s): 24-47,72-95`。由於 NUMA 節點0 的容量超過我們的需求，因此我們只會從核心指派：0-23 和 48-71。

 首先，我們將為每個共用 L3 快取或 NUMA 節點的資料流程選取 8 個核心。然後，我們將在 的`lscpu -p`輸出中查詢對應的 vCPUs （標記為「CPU」)[附錄：c5.24xlarge 的`lscpu -p`輸出 （完整）](#agent-cpu-planning-appendix-lscpu-full)。核心選取程序範例可能如下所示：
+ 為作業系統保留核心 0-1。
+ 流程 1：選取對應至 vCPUs 2-9 和 50-57 的核心 2-9。
+ 流程 2：選取對應至 vCPUs 10-17 和 58-65 的核心 10-17。
+ 代理程式核心：選取對應至 vCPUs 18 和 66 的核心 18。

 這會導致 vCPUs2-18 和 50-66，因此提供代理程式的清單為 `[2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66]`。您應該確保自己的程序不會在這些 CPUs上執行，如 中所述[與 AWS Ground Station 客服人員一起執行服務和程序](best-practices.md#avoiding-contested-cores)。

 請注意，在此範例中選取的特定核心有些任意。只要符合所有共用每個資料流程 L3 快取的需求，其他核心集就可以運作。

## 附錄：c5.24xlarge 的`lscpu -p`輸出 （完整）
<a name="agent-cpu-planning-appendix-lscpu-full"></a>

```
> lscpu -p
# The following is the parsable format, which can be fed to other
# programs. Each different item in every column has an unique ID
# starting from zero.
# CPU,Core,Socket,Node,,L1d,L1i,L2,L3
0,0,0,0,,0,0,0,0
1,1,0,0,,1,1,1,0
2,2,0,0,,2,2,2,0
3,3,0,0,,3,3,3,0
4,4,0,0,,4,4,4,0
5,5,0,0,,5,5,5,0
6,6,0,0,,6,6,6,0
7,7,0,0,,7,7,7,0
8,8,0,0,,8,8,8,0
9,9,0,0,,9,9,9,0
10,10,0,0,,10,10,10,0
11,11,0,0,,11,11,11,0
12,12,0,0,,12,12,12,0
13,13,0,0,,13,13,13,0
14,14,0,0,,14,14,14,0
15,15,0,0,,15,15,15,0
16,16,0,0,,16,16,16,0
17,17,0,0,,17,17,17,0
18,18,0,0,,18,18,18,0
19,19,0,0,,19,19,19,0
20,20,0,0,,20,20,20,0
21,21,0,0,,21,21,21,0
22,22,0,0,,22,22,22,0
23,23,0,0,,23,23,23,0
24,24,1,1,,24,24,24,1
25,25,1,1,,25,25,25,1
26,26,1,1,,26,26,26,1
27,27,1,1,,27,27,27,1
28,28,1,1,,28,28,28,1
29,29,1,1,,29,29,29,1
30,30,1,1,,30,30,30,1
31,31,1,1,,31,31,31,1
32,32,1,1,,32,32,32,1
33,33,1,1,,33,33,33,1
34,34,1,1,,34,34,34,1
35,35,1,1,,35,35,35,1
36,36,1,1,,36,36,36,1
37,37,1,1,,37,37,37,1
38,38,1,1,,38,38,38,1
39,39,1,1,,39,39,39,1
40,40,1,1,,40,40,40,1
41,41,1,1,,41,41,41,1
42,42,1,1,,42,42,42,1
43,43,1,1,,43,43,43,1
44,44,1,1,,44,44,44,1
45,45,1,1,,45,45,45,1
46,46,1,1,,46,46,46,1
47,47,1,1,,47,47,47,1
48,0,0,0,,0,0,0,0
49,1,0,0,,1,1,1,0
50,2,0,0,,2,2,2,0
51,3,0,0,,3,3,3,0
52,4,0,0,,4,4,4,0
53,5,0,0,,5,5,5,0
54,6,0,0,,6,6,6,0
55,7,0,0,,7,7,7,0
56,8,0,0,,8,8,8,0
57,9,0,0,,9,9,9,0
58,10,0,0,,10,10,10,0
59,11,0,0,,11,11,11,0
60,12,0,0,,12,12,12,0
61,13,0,0,,13,13,13,0
62,14,0,0,,14,14,14,0
63,15,0,0,,15,15,15,0
64,16,0,0,,16,16,16,0
65,17,0,0,,17,17,17,0
66,18,0,0,,18,18,18,0
67,19,0,0,,19,19,19,0
68,20,0,0,,20,20,20,0
69,21,0,0,,21,21,21,0
70,22,0,0,,22,22,22,0
71,23,0,0,,23,23,23,0
72,24,1,1,,24,24,24,1
73,25,1,1,,25,25,25,1
74,26,1,1,,26,26,26,1
75,27,1,1,,27,27,27,1
76,28,1,1,,28,28,28,1
77,29,1,1,,29,29,29,1
78,30,1,1,,30,30,30,1
79,31,1,1,,31,31,31,1
80,32,1,1,,32,32,32,1
81,33,1,1,,33,33,33,1
82,34,1,1,,34,34,34,1
83,35,1,1,,35,35,35,1
84,36,1,1,,36,36,36,1
85,37,1,1,,37,37,37,1
86,38,1,1,,38,38,38,1
87,39,1,1,,39,39,39,1
88,40,1,1,,40,40,40,1
89,41,1,1,,41,41,41,1
90,42,1,1,,42,42,42,1
91,43,1,1,,43,43,43,1
92,44,1,1,,44,44,44,1
93,45,1,1,,45,45,45,1
94,46,1,1,,46,46,46,1
95,47,1,1,,47,47,47,1
```