Amazon Elastic Compute Cloud
Linux 인스턴스용 사용 설명서

CPU 옵션 최적화

Amazon EC2 인스턴스는 여러 개의 스레드를 하나의 CPU 코어에서 동시에 실행할 수 있도록 하는 멀티스레딩을 지원합니다. 각 스레드는 인스턴스에서 가상 CPU(vCPU)로 표현됩니다. 인스턴스에는 인스턴스 유형에 따라 달라지는 기본 CPU 코어 수가 있습니다. 예를 들어 m5.xlarge 인스턴스 유형에는 기본적으로 2개의 CPU 코어와 코어당 2개의 스레드가 있어 vCPU는 총 4개입니다.—

참고

각 vCPU는 T2 인스턴스용을 제외한 CPU 코어의 스레드입니다.

대부분의 경우 워크로드에 적합하도록 메모리와 vCPU 수를 결합한 Amazon EC2 인스턴스가 있습니다. 그러나 특정 워크로드 또는 비즈니스 필요를 위해 인스턴스를 최적화하는 다음 CPU 옵션을 지정할 수 있습니다.

  • CPU 코어 수: 인스턴스에 대한 CPU 코어 수를 사용자 지정할 수 있습니다. 이를 통해 메모리 집약 워크로드용 RAM이 충분한 반면 CPU 코어를 적게 사용하는 인스턴스의 소프트웨어 라이선스 비용을 잠재적으로 최적화할 수 있습니다.

  • 코어당 스레드: CPU 코어당 단일 스레드를 지정하여 멀티스레딩을 비활성화할 수 있습니다. HPC(고성능 컴퓨팅) 워크로드와 같은 특정 워크로드에 대해 이를 수행할 수 있습니다.

인스턴스 시작 중 이러한 CPU 옵션을 지정할 수 있습니다. CPU 옵션 지정에 따른 추가 요금이나 비용 경감은 없습니다. 기존 CPU 옵션으로 시작한 인스턴스와 동일하게 청구됩니다.

CPU 옵션 지정 규칙

인스턴스의 CPU 옵션을 지정하려면 다음 규칙을 알아야 합니다.

  • 현재 CPU 옵션은 Amazon EC2 콘솔, AWS CLI, AWS SDK 또는 Amazon EC2 API를 사용하는 경우에만 지원됩니다.

  • CPU 옵션은 인스턴스 시작 중에만 지정할 수 있으며 시작 후에는 수정할 수 없습니다.

  • 인스턴스를 시작할 경우 요청에서 CPU 코어 수와 코어당 스레드를 모두 지정해야 합니다. 예제 요청은 인스턴스의 CPU 옵션 지정 단원을 참조하십시오.

  • 인스턴스의 vCPU 수는 코어당 스레드를 곱한 CPU 코어 수입니다. 사용자 지정 vCPU 수를 지정하려면 인스턴스 유형에 대해 유효한 CPU 코어 수와 코어당 스레드를 지정해야 합니다. 인스턴스의 기본 vCPU 수를 초과할 수 없습니다. 자세한 내용은 인스턴스 유형별/CPU당 CPU 코어 및 스레드 단원을 참조하십시오.

  • 멀티스레딩을 비활성화하려면 코어당 하나의 스레드를 지정하십시오.

  • 기존 인스턴스의 인스턴스 유형을 변경하면 CPU 옵션이 자동으로 새 인스턴스 유형의 기본 CPU 옵션으로 변경됩니다.

  • 지정한 CPU 옵션은 인스턴스를 중지, 시작 또는 재부팅한 후에도 유지됩니다.

인스턴스 유형별/CPU당 CPU 코어 및 스레드

다음 표는 CPU 옵션 지정을 지원하는 인스턴스 유형을 나열합니다. 각 유형에 대해 표는 기본 및 지원되는 CPU 코어 수와 코어당 스레드를 표시합니다.

액셀러레이티드 컴퓨팅 인스턴스

인스턴스 유형 기본 vCPU 기본 CPU 코어 코어당 기본 스레드 유효한 CPU 코어 수 코어당 유효한 스레드 수
f1.2xlarge 8 4 2 1, 2, 3, 4 1, 2
f1.4xlarge 16 8 2 1, 2, 3, 4, 5, 6, 7, 8 1, 2
f1.16xlarge 64 32 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32 1, 2
g3.4xlarge 16 8 2 1, 2, 3, 4, 5, 6, 7, 8 1, 2
g3.8xlarge 32 16 2 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 1, 2
g3.16xlarge 64 32 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32 1, 2
g3s.xlarge 4 2 2 1, 2 1, 2
p2.xlarge 4 2 2 1, 2 1, 2
p2.8xlarge 32 16 2 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 1, 2
p2.16xlarge 64 32 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32 1, 2
p3.2xlarge 8 4 2 1, 2, 3, 4 1, 2
p3.8xlarge 32 16 2 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 1, 2
p3.16xlarge 64 32 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32 1, 2
p3dn.24xlarge 96 48 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48 1, 2

컴퓨팅 최적화 인스턴스

인스턴스 유형 기본 vCPU 기본 CPU 코어 코어당 기본 스레드 유효한 CPU 코어 수 코어당 유효한 스레드 수
c4.large 2 1 2 1 1, 2
c4.xlarge 4 2 2 1, 2 1, 2
c4.2xlarge 8 4 2 1, 2, 3, 4 1, 2
c4.4xlarge 16 8 2 1, 2, 3, 4, 5, 6, 7, 8 1, 2
c4.8xlarge 36 18 2 2, 4, 6, 8, 10, 12, 14, 16, 18 1, 2
c5.large 2 1 2 1 1, 2
c5.xlarge 4 2 2 2 1, 2
c5.2xlarge 8 4 2 2, 4 1, 2
c5.4xlarge 16 8 2 2, 4, 6, 8 1, 2
c5.9xlarge 36 18 2 2, 4, 6, 8, 10, 12, 14, 16, 18 1, 2
c5.18xlarge 72 36 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36 1, 2
c5d.large 2 1 2 1 1, 2
c5d.xlarge 4 2 2 2 1, 2
c5d.2xlarge 8 4 2 2, 4 1, 2
c5d.4xlarge 16 8 2 2, 4, 6, 8 1, 2
c5d.9xlarge 36 18 2 2, 4, 6, 8, 10, 12, 14, 16, 18 1, 2
c5d.18xlarge 72 36 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36 1, 2
c5n.large 2 1 2 1 1, 2
c5n.xlarge 4 2 2 2 1, 2
c5n.2xlarge 8 4 2 2, 4 1, 2
c5n.4xlarge 16 8 2 2, 4, 6, 8 1, 2
c5n.9xlarge 36 18 2 2, 4, 6, 8, 10, 12, 14, 16, 18 1, 2
c5n.18xlarge 72 36 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36 1, 2

범용 인스턴스

인스턴스 유형 기본 vCPU 기본 CPU 코어 코어당 기본 스레드 유효한 CPU 코어 수 코어당 유효한 스레드 수
m5.large 2 1 2 1 1, 2
m5.xlarge 4 2 2 2 1, 2
m5.2xlarge 8 4 2 2, 4 1, 2
m5.4xlarge 16 8 2 2, 4, 6, 8 1, 2
m5.12xlarge 48 24 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24 1, 2
m5.24xlarge 96 48 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48 1, 2
m5a.large 2 1 2 1 1, 2
m5a.xlarge 4 2 2 2 1, 2
m5a.2xlarge 8 4 2 2, 4 1, 2
m5a.4xlarge 16 8 2 2, 4, 6, 8 1, 2
m5a.12xlarge 48 24 2 6, 12, 18, 24 1, 2
m5a.24xlarge 96 48 2 12, 18, 24, 36, 48 1, 2
m5ad.large 2 1 2 1 1, 2
m5ad.xlarge 4 2 2 2 1, 2
m5ad.2xlarge 8 4 2 2, 4 1, 2
m5ad.4xlarge 16 8 2 2, 4, 6, 8 1, 2
m5ad.12xlarge 48 24 2 6, 12, 18, 24 1, 2
m5ad.24xlarge 96 48 2 12, 18, 24, 36, 48 1, 2
m5d.large 2 1 2 1 1, 2
m5d.xlarge 4 2 2 2 1, 2
m5d.2xlarge 8 4 2 2, 4 1, 2
m5d.4xlarge 16 8 2 2, 4, 6, 8 1, 2
m5d.12xlarge 48 24 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24 1, 2
m5d.24xlarge 96 48 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48 1, 2
t3.nano 2 1 2 1 1, 2
t3.micro 2 1 2 1 1, 2
t3.small 2 1 2 1 1, 2
t3.medium 2 1 2 1 1, 2
t3.large 2 1 2 1 1, 2
t3.xlarge 4 2 2 2 1, 2
t3.2xlarge 8 4 2 2, 4 1, 2
t3a.nano 2 1 2 1 1, 2
t3a.micro 2 1 2 1 1, 2
t3a.small 2 1 2 1 1, 2
t3a.medium 2 1 2 1 1, 2
t3a.large 2 1 2 1 1, 2
t3a.xlarge 4 2 2 2 1, 2
t3a.2xlarge 8 4 2 2, 4 1, 2

메모리 최적화 인스턴스

인스턴스 유형 기본 vCPU 기본 CPU 코어 코어당 기본 스레드 유효한 CPU 코어 수 코어당 유효한 스레드 수
r4.large 2 1 2 1 1, 2
r4.xlarge 4 2 2 1, 2 1, 2
r4.2xlarge 8 4 2 1, 2, 3, 4 1, 2
r4.4xlarge 16 8 2 1, 2, 3, 4, 5, 6, 7, 8 1, 2
r4.8xlarge 32 16 2 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 1, 2
r4.16xlarge 64 32 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32 1, 2
r5.large 2 1 2 1 1, 2
r5.xlarge 4 2 2 2 1, 2
r5.2xlarge 8 4 2 2, 4 1, 2
r5.4xlarge 16 8 2 2, 4, 6, 8 1, 2
r5.12xlarge 48 24 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24 1, 2
r5.24xlarge 96 48 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48 1, 2
r5a.large 2 1 2 1 1, 2
r5a.xlarge 4 2 2 2 1, 2
r5a.2xlarge 8 4 2 2, 4 1, 2
r5a.4xlarge 16 8 2 2, 4, 6, 8 1, 2
r5a.12xlarge 48 24 2 6, 12, 18, 24 1, 2
r5a.24xlarge 96 48 2 12, 18, 24, 36, 48 1, 2
r5ad.large 2 1 2 1 1, 2
r5ad.xlarge 4 2 2 2 1, 2
r5ad.2xlarge 8 4 2 2, 4 1, 2
r5ad.4xlarge 16 8 2 2, 4, 6, 8 1, 2
r5ad.12xlarge 48 24 2 6, 12, 18, 24 1, 2
r5ad.24xlarge 96 48 2 12, 18, 24, 36, 48 1, 2
r5d.large 2 1 2 1 1, 2
r5d.xlarge 4 2 2 2 1, 2
r5d.2xlarge 8 4 2 2, 4 1, 2
r5d.4xlarge 16 8 2 2, 4, 6, 8 1, 2
r5d.12xlarge 48 24 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24 1, 2
r5d.24xlarge 96 48 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48 1, 2
x1.16xlarge 64 32 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32 1, 2
x1.32xlarge 128 64 2 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64 1, 2
x1e.xlarge 4 2 2 1, 2 1, 2
x1e.2xlarge 8 4 2 1, 2, 3, 4 1, 2
x1e.4xlarge 16 8 2 1, 2, 3, 4, 5, 6, 7, 8 1, 2
x1e.8xlarge 32 16 2 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 1, 2
x1e.16xlarge 64 32 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32 1, 2
x1e.32xlarge 128 64 2 4, 8, 12, 16, 20, 24, 28, 32, 36, 40, 44, 48, 52, 56, 60, 64 1, 2
z1d.large 2 1 2 1 1, 2
z1d.xlarge 4 2 2 2 1, 2
z1d.2xlarge 8 4 2 2, 4 1, 2
z1d.3xlarge 12 6 2 2, 4, 6 1, 2
z1d.6xlarge 24 12 2 2, 4, 6, 8, 10, 12 1, 2
z1d.12xlarge 48 24 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24 1, 2

스토리지 최적화 인스턴스

인스턴스 유형 기본 vCPU 기본 CPU 코어 코어당 기본 스레드 유효한 CPU 코어 수 코어당 유효한 스레드 수
i3en.24xlarge 96 48 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48 1, 2
d2.xlarge 4 2 2 1, 2 1, 2
d2.2xlarge 8 4 2 1, 2, 3, 4 1, 2
d2.4xlarge 16 8 2 1, 2, 3, 4, 5, 6, 7, 8 1, 2
d2.8xlarge 36 18 2 2, 4, 6, 8, 10, 12, 14, 16, 18 1, 2
h1.2xlarge 8 4 2 1, 2, 3, 4 1, 2
h1.4xlarge 16 8 2 1, 2, 3, 4, 5, 6, 7, 8 1, 2
h1.8xlarge 32 16 2 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 1, 2
h1.16xlarge 64 32 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32 1, 2
i3.large 2 1 2 1 1, 2
i3.xlarge 4 2 2 1, 2 1, 2
i3.2xlarge 8 4 2 1, 2, 3, 4 1, 2
i3.4xlarge 16 8 2 1, 2, 3, 4, 5, 6, 7, 8 1, 2
i3.8xlarge 32 16 2 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16 1, 2
i3.16xlarge 64 32 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32 1, 2
i3en.large 2 1 2 1 1, 2
i3en.xlarge 4 2 2 2 1, 2
i3en.2xlarge 8 4 2 2, 4 1, 2
i3en.3xlarge 12 6 2 2, 4, 6 1, 2
i3en.6xlarge 24 12 2 2, 4, 6, 8, 10, 12 1, 2
i3en.12xlarge 48 24 2 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24 1, 2
i3en.24xlarge 96 48 2 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48 1, 2

인스턴스의 CPU 옵션 지정

인스턴스 시작 중 CPU 옵션을 지정할 수 있습니다. 다음 예는 r4.4xlarge 인스턴스 유형을 위한 것이며 다음과 같은 기본값을 포함합니다.

  • 기본 CPU 코어: 8

  • 코어당 기본 스레드: 2

  • 기본 vCPU: 16(8 * 2)

  • 유효한 CPU 코어 수: 1, 2, 3, 4, 5, 6, 7, 8

  • 코어당 유효한 스레드 수: 1, 2

멀티스레딩 비활성화

멀티스레딩을 비활성화하려면 코어당 하나의 스레드를 지정하십시오.

인스턴스 시작 중 멀티스레딩을 비활성화하려면(콘솔)

  1. 시작 인스턴스 마법사를 사용하여 인스턴스 시작의 절차를 따르십시오.

  2. Configure Instance Details(인스턴스 정보 구성) 페이지에서 CPU options(CPU 옵션)에 대해 CPU 옵션 지정을 선택합니다.

  3. 코어 수에 대해 필요한 CPU 코어 수를 선택합니다. 이 예에서 r4.4xlarge 인스턴스에 필요한 기본 CPU 코어 개수를 지정하려면 8을 선택합니다.

  4. 멀티스레딩을 비활성화하려면 코어당 스레드1을 선택하십시오.

  5. 마법사에 표시되는 지침에 따라 계속합니다. 인스턴스 시작 검토 페이지에서 옵션 검토를 마쳤으면 시작을 선택합니다. 자세한 내용은 시작 인스턴스 마법사를 사용하여 인스턴스 시작를 참조하십시오.

인스턴스 시작 중 멀티스레딩을 비활성화하려면(AWS CLI)

  • run-instances AWS CLI 명령을 사용하여 --cpu-options 파라미터의 ThreadsPerCore에 값을 1로 지정합니다. CoreCount에 대해 CPU 코어 수를 지정합니다. 이 예에서 r4.4xlarge 인스턴스에 필요한 기본 CPU 코어 개수를 지정하려면 값을 8로 지정합니다.

    aws ec2 run-instances --image-id ami-1a2b3c4d --instance-type r4.4xlarge --cpu-options "CoreCount=8,ThreadsPerCore=1" --key-name MyKeyPair

vCPU 수 사용자 지정

인스턴스의 코어당 CPU 코어와 스레드 수를 사용자 지정할 수 있습니다.

인스턴스 시작 중 사용자 지정 vCPU 수를 지정하려면(콘솔)

다음 예는 6개의 vCPU로 r4.4xlarge 인스턴스를 시작합니다.

  1. 시작 인스턴스 마법사를 사용하여 인스턴스 시작의 절차를 따르십시오.

  2. Configure Instance Details(인스턴스 정보 구성) 페이지에서 CPU options(CPU 옵션)에 대해 CPU 옵션 지정을 선택합니다.

  3. 6개의 vCPU를 얻기 위해 다음과 같이 3개의 CPU 코어와 코어당 2개의 스레드를 지정합니다.

    • 코어 수3을 선택합니다.

    • 코어당 스레드2를 선택합니다.

  4. 마법사에 표시되는 지침에 따라 계속합니다. 인스턴스 시작 검토 페이지에서 옵션 검토를 마쳤으면 시작을 선택합니다. 자세한 내용은 시작 인스턴스 마법사를 사용하여 인스턴스 시작 단원을 참조하십시오.

인스턴스 시작 중 vCPU 수를 사용자 지정하려면(AWS CLI)

다음 예는 6개의 vCPU로 r4.4xlarge 인스턴스를 시작합니다.

  1. run-instances AWS CLI 명령을 사용하여 --cpu-options 파라미터에서 CPU 코어 수와 스레드 수를 지정합니다. 6개의 vCPU를 얻기 위해 3개의 CPU 코어와 코어당 2개의 스레드를 지정할 수 있습니다.

    aws ec2 run-instances --image-id ami-1a2b3c4d --instance-type r4.4xlarge --cpu-options "CoreCount=3,ThreadsPerCore=2" --key-name MyKeyPair
  2. 또는 6개의 vCPU를 얻기 위해 6개의 CPU 코어와 코어당 하나의 스레드(멀티스레딩 비활성화)를 지정합니다.

    aws ec2 run-instances --image-id ami-1a2b3c4d --instance-type r4.4xlarge --cpu-options "CoreCount=6,ThreadsPerCore=1" --key-name MyKeyPair

인스턴스의 CPU 옵션 보기

Amazon EC2 콘솔에서 또는 AWS CLI를 사용해 인스턴스를 설명하여 기존 인스턴스의 CPU 옵션을 볼 수 있습니다.

인스턴스의 CPU 옵션을 보려면(콘솔)

  1. https://console.aws.amazon.com/ec2/에서 Amazon EC2 콘솔을 엽니다.

  2. 왼쪽 탐색 창에서 인스턴스를 선택하고 인스턴스를 선택합니다.

  3. 설명을 선택하고 vCPU 수 필드를 확인합니다.

  4. 코어 수와 코어당 스레드 수를 확인하려면 vCPU 수 필드 값을 선택합니다.

인스턴스의 CPU 옵션을 보려면(AWS CLI)

  • 아래와 같이 describe-instances AWS CLI 명령을 사용합니다.

    aws ec2 describe-instances --instance-ids i-123456789abcde123
    ... "Instances": [ { "Monitoring": { "State": "disabled" }, "PublicDnsName": "ec2-198-51-100-5.eu-central-1.compute.amazonaws.com", "State": { "Code": 16, "Name": "running" }, "EbsOptimized": false, "LaunchTime": "2018-05-08T13:40:33.000Z", "PublicIpAddress": "198.51.100.5", "PrivateIpAddress": "172.31.2.206", "ProductCodes": [], "VpcId": "vpc-1a2b3c4d", "CpuOptions": { "CoreCount": 34, "ThreadsPerCore": 1 }, "StateTransitionReason": "", ...

    반환된 출력에서 CoreCount 필드는 인스턴스의 코어 수를 나타냅니다. ThreadsPerCore 필드는 코어당 스레드 수를 나타냅니다.

또는 인스턴스에 연결하고 lscpu와 같은 도구를 사용하여 인스턴스에 대한 CPU 정보를 봅니다.

AWS Config를 사용하여 종료된 인스턴스를 포함한 인스턴스의 구성 변경을 기록, 액세스, 감사 및 평가할 수 있습니다. 자세한 내용은 AWS Config Developer GuideAWS Config시작하기 를 참조하십시오.