성능

CPU steal time란 무엇인가요?

다른 이름: st time
정의

Steal time is the proportion of time a virtual CPU was ready to run but the hypervisor gave the physical core to another guest. It appears as the "st" column in top and vmstat. Sustained values above 2–3% indicate contention and show up as tail-latency spikes rather than as uniformly slow throughput.

CPU steal time가 중요한 이유

이는 top 및 vmstat에서 "st" 열로 나타납니다. 2~3% 이상의 지속적인 값은 경합을 나타내며 균일하게 느린 처리량이 아닌 꼬리 지연 시간 스파이크로 나타납니다.

CPU steal time 실제 적용

서버를 운영할 때 top과 vmstat에서 st 열을 주시하세요. 이 값이 지속적으로 2~3%를 넘는다면 CPU가 워크로드가 예상하는 것보다 더 많이 공유되고 있는 것입니다. 비용은 균일한 속도 저하가 아니라 시간에 민감한 작업을 망치는 꼬리 지연 시간 급증입니다. 인스턴스 크기를 변경하거나 덜 혼잡한 호스트로 이동할 수 있습니다. 이를 무시하면 실제 병목 지점이 하이퍼바이저 쪽에 있는 동안 자체 튜닝에서 유령을 쫓게 됩니다.

CPU steal time에 대한 사람들의 오해

사람들은 CPU 스틸 시간을 자신의 프로세스가 CPU를 너무 많이 소비한다는 신호로 오해하는 경우가 많습니다. 그렇지 않습니다. 스틸 시간은 가상 CPU가 준비되었지만 하이퍼바이저가 물리적 코어를 다른 게스트에게 주었다는 뜻입니다. 수정 방법: user 또는 system 열이 아닌 st 열을 보세요. 스틸이 높으면 문제가 인스턴스 외부에 있다는 뜻이지 내부에 있는 것이 아닙니다.

CPU steal time — 일반적인 질문

Why is CPU steal time so high on my VPS?

높은 steal time은 일반적으로 하이퍼바이저가 과도하게 구독되었음을 의미합니다. 동일한 물리적 호스트의 다른 게스트가 코어를 놓고 경쟁하고 있습니다. 이는 단순히 워크로드만의 문제가 아닙니다. st가 2–3% 이상 유지된다면, 경합이 적은 제공업체나 전용 코어로 이전하는 것을 고려하세요.

Can I reduce CPU steal time myself?

인스턴스 내부에서 직접적으로는 불가능합니다. Steal time은 하이퍼바이저에 의해 부과됩니다. 코드를 최적화하여 CPU 의존도를 줄일 수는 있지만, 실제 steal은 호스트의 경합이 줄어들 때만 감소합니다. 때로는 다른 물리적 호스트로 마이그레이션하는 것이 도움이 될 수 있습니다.

성능에서 더 보기

RTT
RTT는 패킷이 목적지까지 이동하고 응답이 돌아오는 시간으로 밀리초 단위로 측정됩니다.
지터
지터는 평균 지연 자체와 구별하여 시간에 따른 패킷 지연의 변화입니다.
TTFB
TTFB 测量从发送请求到收到响应的第一个字节的时间。