Amazon EC2 Linux 인스턴스용 프로세서 상태 제어
Amazon EC2 Linux 인스턴스용 프로세서 상태 제어 (Processor state control for Amazon EC2 Linux instances)
C-states는 코어가 유휴(idle)일 때 들어갈 수 있는 절전 수준을 제어하고, P-states는 코어가 제공할 수 있는 성능(CPU 주파수)을 제어해요.
출처: 문서
본문
C-states는 코어가 유휴일 때 들어갈 수 있는 절전 수준을 제어해요. C-states는 C0(코어가 완전히 깨어 명령을 실행하는 가장 얕은 상태)부터 C6(코어 전원이 꺼지는 가장 깊은 유휴 상태)까지 번호가 매겨져요.
P-states는 코어가 제공할 원하는 성능(CPU 주파수)을 제어해요. P-states는 P0(코어가 가능하면 주파수를 높이기 위해 Intel Turbo Boost Technology를 쓸 수 있는 최고 성능 설정)부터, P1(최대 기준 주파수를 요청하는 P-state)을 거쳐 P15(가장 낮은 주파수)까지 번호가 매겨져요.
참고: AWS Graviton 프로세서는 전원 절약 모드가 내장되어 있고 고정 주파수로 동작해요. 따라서 운영 체제가 C-states와 P-states를 제어할 수 있는 능력을 제공하지 않아요.
C-states와 P-states 둘 다 (C-states and P-states)
운영 체제가 C-states와 P-states를 모두 제어할 수 있는 인스턴스 유형은 다음과 같아요.
- 범용(General purpose):
m4.10xlarge|m4.16xlarge - 컴퓨팅 최적화(Compute optimized):
c4.8xlarge - 메모리 최적화(Memory optimized):
r4.8xlarge|r4.16xlarge|x1.16xlarge|x1.32xlarge|x1e.8xlarge|x1e.16xlarge|x1e.32xlarge - 스토리지 최적화(Storage optimized):
d2.8xlarge|i3.8xlarge|i3.16xlarge|h1.8xlarge|h1.16xlarge - 가속 컴퓨팅(Accelerated computing):
g3.16xlarge|p3.16xlarge - 베어 메탈(Bare metal): Intel과 AMD 프로세서를 가진 모든 베어 메탈 인스턴스
C-states만 (C-states only)
운영 체제가 C-states만 제어할 수 있는 인스턴스 유형은 다음과 같아요.
- 범용(General purpose):
m5.12xlarge|m5.24xlarge|m5d.12xlarge|m5d.24xlarge|m5n.12xlarge|m5n.24xlarge|m5dn.12xlarge|m5dn.24xlarge|m5zn.6xlarge|m5zn.12xlarge|m6a.24xlarge|m6a.48xlarge|m6i.16xlarge|m6i.32xlarge|m6id.16xlarge|m6id.32xlarge|m6idn.16xlarge|m6in.16xlarge|m6in.32xlarge|m7a.medium|m7a.large|m7a.xlarge|m7a.2xlarge|m7a.4xlarge|m7a.8xlarge|m7a.12xlarge|m7a.16xlarge|m7a.24xlarge|m7a.32xlarge|m7a.48xlarge|m7i.large|m7i.xlarge|m7i.2xlarge|m7i.4xlarge|m7i.8xlarge|m7i.12xlarge|m7i.16xlarge|m7i.24xlarge|m7i.48xlarge|m8a.medium|m8a.large|m8a.xlarge|m8a.2xlarge|m8a.4xlarge|m8a.8xlarge|m8a.12xlarge|m8a.16xlarge|m8a.24xlarge|m8a.48xlarge|m8azn.medium|m8azn.large|m8azn.xlarge|m8azn.3xlarge|m8azn.6xlarge|m8azn.12xlarge|m8azn.24xlarge|m8i.large|m8i.xlarge|m8i.2xlarge|m8i.4xlarge|m8i.8xlarge|m8i.12xlarge|m8i.16xlarge|m8i.24xlarge|m8i.32xlarge|m8i.48xlarge|m8i.96xlarge|m8id.large|m8id.xlarge|m8id.2xlarge|m8id.4xlarge|m8id.8xlarge|m8id.12xlarge|m8id.16xlarge|m8id.24xlarge|m8id.32xlarge|m8id.48xlarge|m8id.96xlarge|m8in.large|m8in.xlarge|m8in.2xlarge|m8in.4xlarge|m8in.8xlarge|m8in.12xlarge|m8in.16xlarge|m8in.24xlarge|m8in.32xlarge|m8in.48xlarge|m8in.96xlarge|m8idn.large|m8idn.xlarge|m8idn.2xlarge|m8idn.4xlarge|m8idn.8xlarge|m8idn.12xlarge|m8idn.16xlarge|m8idn.24xlarge|m8idn.32xlarge|m8idn.48xlarge|m8idn.96xlarge|m8ib.large|m8ib.xlarge|m8ib.2xlarge|m8ib.4xlarge|m8ib.8xlarge|m8ib.12xlarge|m8ib.16xlarge|m8ib.24xlarge|m8ib.32xlarge|m8ib.48xlarge|m8ib.96xlarge|m8idb.large|m8idb.xlarge|m8idb.2xlarge|m8idb.4xlarge|m8idb.8xlarge|m8idb.12xlarge|m8idb.16xlarge|m8idb.24xlarge|m8idb.32xlarge|m8idb.48xlarge|m8idb.96xlarge|m8ine.large|m8ine.xlarge|m8ine.2xlarge|m8ine.4xlarge|m8ine.8xlarge|m8ine.12xlarge - 컴퓨팅 최적화(Compute optimized):
c5.9xlarge|c5.12xlarge|c5.18xlarge|c5.24xlarge|c5a.24xlarge|c5ad.24xlarge|c5d.9xlarge|c5d.12xlarge|c5d.18xlarge|c5d.24xlarge|c5n.9xlarge|c5n.18xlarge|c6a.24xlarge|c6a.32xlarge|c6a.48xlarge|c6i.16xlarge|c6i.32xlarge|c6id.24xlarge|c6id.32xlarge|c6in.32xlarge|c7a.medium|c7a.large|c7a.xlarge|c7a.2xlarge|c7a.4xlarge|c7a.8xlarge|c7a.12xlarge|c7a.16xlarge|c7a.24xlarge|c7a.32xlarge|c7a.48xlarge|c7i.large|c7i.xlarge|c7i.2xlarge|c7i.4xlarge|c7i.8xlarge|c7i.12xlarge|c7i.16xlarge|c7i.24xlarge|c7i.48xlarge|c8a.medium|c8a.large|c8a.xlarge|c8a.2xlarge|c8a.4xlarge|c8a.8xlarge|c8a.12xlarge|c8a.16xlarge|c8a.24xlarge|c8a.48xlarge|c8i.large|c8i.xlarge|c8i.2xlarge|c8i.4xlarge|c8i.8xlarge|c8i.12xlarge|c8i.16xlarge|c8i.24xlarge|c8i.32xlarge|c8i.48xlarge|c8i.96xlarge|c8id.large|c8id.xlarge|c8id.2xlarge|c8id.4xlarge|c8id.8xlarge|c8id.12xlarge|c8id.16xlarge|c8id.24xlarge|c8id.32xlarge|c8id.48xlarge|c8id.96xlarge|c8in.large|c8in.xlarge|c8in.2xlarge|c8in.4xlarge|c8in.8xlarge|c8in.12xlarge|c8in.16xlarge|c8in.24xlarge|c8in.32xlarge|c8in.48xlarge|c8in.96xlarge|c8ib.large|c8ib.xlarge|c8ib.2xlarge|c8ib.4xlarge|c8ib.8xlarge|c8ib.12xlarge|c8ib.16xlarge|c8ib.24xlarge|c8ib.32xlarge|c8ib.48xlarge|c8ib.96xlarge|x8i.large|x8i.xlarge|x8i.2xlarge|x8i.4xlarge|x8i.8xlarge|x8i.12xlarge|x8i.16xlarge|x8i.24xlarge|x8i.32xlarge|x8i.48xlarge|x8i.96xlarge - 메모리 최적화(Memory optimized):
r5.12xlarge|r5.24xlarge|r5b.12xlarge|r5d.12xlarge|r5d.24xlarge|r5n.12xlarge|r5n.24xlarge|r5dn.12xlarge|r5dn.24xlarge|r6a.24xlarge|r6a.48xlarge|r6i.16xlarge|r6i.32xlarge|r6id.16xlarge|r6id.32xlarge|r6in.16xlarge|r6in.32xlarge|r7a.medium|r7a.large|r7a.xlarge|r7a.2xlarge|r7a.4xlarge|r7a.8xlarge|r7a.12xlarge|r7a.16xlarge|r7a.24xlarge|r7a.32xlarge|r7a.48xlarge|r7i.large|r7i.xlarge|r7i.2xlarge|r7i.4xlarge|r7i.8xlarge|r7i.12xlarge|r7i.16xlarge|r7i.24xlarge|r7i.48xlarge|r7iz.large|r7iz.xlarge|r7iz.2xlarge|r7iz.4xlarge|r7iz.8xlarge|r7iz.12xlarge|r7iz.16xlarge|r7iz.32xlarge|r8a.medium|r8a.large|r8a.xlarge|r8a.2xlarge|r8a.4xlarge|r8a.8xlarge|r8a.12xlarge|r8a.16xlarge|r8a.24xlarge|r8a.48xlarge|r8i.large|r8i.xlarge|r8i.2xlarge|r8i.4xlarge|r8i.8xlarge|r8i.12xlarge|r8i.16xlarge|r8i.24xlarge|r8i.32xlarge|r8i.48xlarge|r8i.96xlarge|r8id.large|r8id.xlarge|r8id.2xlarge|r8id.4xlarge|r8id.8xlarge|r8id.12xlarge|r8id.16xlarge|r8id.24xlarge|r8id.32xlarge|r8id.48xlarge|r8id.96xlarge|r8in.large|r8in.xlarge|r8in.2xlarge|r8in.4xlarge|r8in.8xlarge|r8in.12xlarge|r8in.16xlarge|r8in.24xlarge|r8in.32xlarge|r8in.48xlarge|r8in.96xlarge|r8idn.large|r8idn.xlarge|r8idn.2xlarge|r8idn.4xlarge|r8idn.8xlarge|r8idn.12xlarge|r8idn.16xlarge|r8idn.24xlarge|r8idn.32xlarge|r8idn.48xlarge|r8idn.96xlarge|r8ib.large|r8ib.xlarge|r8ib.2xlarge|r8ib.4xlarge|r8ib.8xlarge|r8ib.12xlarge|r8ib.16xlarge|r8ib.24xlarge|r8ib.32xlarge|r8ib.48xlarge|r8ib.96xlarge|r8idb.large|r8idb.xlarge|r8idb.2xlarge|r8idb.4xlarge|r8idb.8xlarge|r8idb.12xlarge|r8idb.16xlarge|r8idb.24xlarge|r8idb.32xlarge|r8idb.48xlarge|r8idb.96xlarge|u-3tb1.56xlarge|u-6tb1.56xlarge|u-6tb1.112xlarge|u-9tb1.112xlarge|u-12tb1.112xlarge|u-18tb1.112xlarge|u-24tb1.112xlarge|u7i-6tb.112xlarge|u7i-8tb.112xlarge|u7i-12tb.224xlarge|u7in-16tb.224xlarge|u7in-24tb.224xlarge|u7in-32tb.224xlarge|u7inh-32tb.480xlarge|x2idn.32xlarge|x2iedn.16xlarge|x2iedn.32xlarge|x2iezn.12xlarge|x8aedz.large|x8aedz.xlarge|x8aedz.3xlarge|x8aedz.6xlarge|x8aedz.12xlarge|x8aedz.24xlarge|z1d.6xlarge|z1d.12xlarge - 스토리지 최적화(Storage optimized):
d3en.12xlarge|dl1.24xlarge|i3en.12xlarge|i3en.24xlarge|i4i.16xlarge|i7i.large|i7i.xlarge|i7i.2xlarge|i7i.4xlarge|i7i.8xlarge|i7i.12xlarge|i7i.16xlarge|i7i.24xlarge|i7i.48xlarge|i7ie.large|i7ie.xlarge|i7ie.2xlarge|i7ie.3xlarge|i7ie.6xlarge|i7ie.12xlarge|i7ie.18xlarge|i7ie.24xlarge|i7ie.48xlarge|r5b.12xlarge|r5b.24xlarge - 가속 컴퓨팅(Accelerated computing):
dl1.24xlarge|f2.6xlarge|f2.12xlarge|f2.48xlarge|g5.24xlarge|g5.48xlarge|g6.24xlarge|g6.48xlarge|g6e.12xlarge|g6e.24xlarge|g6e.48xlarge|g7e.2xlarge|g7e.4xlarge|g7e.8xlarge|g7e.12xlarge|g7e.24xlarge|g7e.48xlarge|g7.2xlarge|g7.4xlarge|g7.8xlarge|g7.12xlarge|g7.24xlarge|g7.48xlarge|inf1.24xlarge|p3dn.24xlarge|p4d.24xlarge|p4de.24xlarge|p5.48xlarge|p5e.48xlarge|p5en.48xlarge|p6-b200.48xlarge|p6-b300.48xlarge|trn1.32xlarge|trn2.3xlarge|trn2.48xlarge|trn2a.3xlarge|trn2a.48xlarge|trn2n.3xlarge|trn2n.48xlarge|trn2p.48xlarge|trn2u.48xlarge|vt1.24xlarge - 고성능 컴퓨팅(High-performance computing):
hpc7a.12xlarge|hpc7a.24xlarge|hpc7a.48xlarge|hpc7a.96xlarge|hpc8a.96xlarge
C-state나 P-state 설정을 바꿔 프로세서 성능 일관성을 높이거나, 지연 시간을 줄이거나, 특정 워크로드에 맞게 인스턴스를 튜닝하고 싶을 수 있어요. 기본 C-state와 P-state 설정은 대부분의 워크로드에 최적인 최대 성능을 제공해요. 다만 애플리케이션이 더 높은 단일·듀얼 코어 주파수 대신 지연 시간 감소의 이점을 얻을 수 있거나, 버스트성 Turbo Boost 주파수 대신 더 낮은 주파수에서 일관된 성능이 도움이 된다면, 이 인스턴스들이 제공하는 C-state나 P-state 설정을 실험해 보는 걸 고려해 보세요.
Amazon Linux의 다양한 프로세서 구성과 구성 효과를 모니터링하는 방법은 Amazon Linux 2 사용자 가이드의 "Processor state control for Amazon EC2 Amazon Linux instance"를 참고하세요. 이 절차는 Amazon Linux용으로 작성되었고 Amazon Linux에 적용되지만, Linux 커널 3.9 이상을 가진 다른 Linux 배포판에서도 동작할 수 있어요. 다른 Linux 배포판과 프로세서 상태 제어에 대한 자세한 내용은 시스템별 문서를 참고하세요.