작동하는 프로세서가 더 많은 전력을 사용하는 이유는 무엇입니까?


16

적어도 내가 아는 한 코딩을 시작했을 때의 안개 속에서 프로세서는 모두 고정 된 양의 전력을 사용했습니다. 프로세서가 "유휴"인 것은 없습니다.

요즘 프로세서가 사용량이 많지 않을 때 주로 클록 속도를 동적으로 줄임으로써 전력 사용량을 줄이기위한 모든 종류의 기술이 있습니다.

내 질문은 낮은 클럭 속도로 실행하는 데 더 적은 전력을 사용하는 이유는 무엇입니까?

프로세서에 대한 나의 정신적 인 그림은 이진 1을 나타내는 기준 전압 (예 : 5V)과 0을 나타내는 0V입니다. "off"일 때, 일정한 양의 전력이 사용되고 있음을 의미합니다. 이 게이트가 켜지고 꺼지는 속도는 사용 된 전력과 관련이없는 것 같습니다.

의심 할 여지없이 순진한 그림이지만 전기 기술자는 아닙니다. 누군가가 주파수 스케일링에서 실제로 일어나고있는 일과 그것이 어떻게 전력을 절약하는지 설명 할 수 있습니까? 프로세서가 상태에 따라 더 많거나 적은 전력을 사용하는 다른 방법이 있습니까? 예 : 더 많은 게이트가 열려 있으면 더 많은 전력을 사용합니까?

모바일 / 저전력 프로세서는 데스크탑 사촌과 어떻게 다른가요? 그것들이 더 단순합니까 (트랜지스터가 적습니까?), 아니면 다른 근본적인 디자인 차이가 있습니까?


8
당신은 틀 렸습니다. 프로세서는 시간이 지남에 따라 같은 양의 전력을 사용하지 않았습니다. 일을 크게 단순화하면 전력이 단일 플립 플롭 값을 전환하는 데만 소비된다고 가정 할 수 있습니다. 따라서 초당 더 많은 계산이 수행 될수록 내부 레지스터의 값이 더 많이 변경 될수록 더 많은 전력이 소비됩니다.

2
전자 장치를 올바르게 기억하면 대부분의 "폐기 된"에너지 (일명 "열")는 누설 (유량이 발생하지 않는 곳에서 흐르는 소량의 전류)입니다. 그 일이 당신이있어 때.) 높은 전압 및 b를 사용하여.) 높은 주파수에서 스위칭. 대부분의 최신 CPU 는 저전력 상태에서 전압 주파수를 모두 줄입니다 (그중 하나만 줄더라도 여전히 이득입니다).

3
@ SK-logic : 많은 과거 프로세서는 클럭 속도에 상관없이 거의 동일한 전력을 소비하는 ECL 로직을 사용합니다. Seymour Cray는 CDC 8600, Cray-1, Cray X-MP, Cray Y-MP, Cray T90을 ECL을 사용하도록 설계했습니다. Wikipedia ECL 논리 기사에는 다른 회사의 기사가 더 있습니다. 해당 머신이 존재하지 않았거나 프로세서로 간주되지 않는다고 말하는가?
davidcary

프로세서는 또한 정지 명령을 사용하여 전력을 절약합니다. 운영 체제 커널은 프로세서를 깨우고 해당 명령을 실행하여 프로세서가 잠들도록 타이머를 설정할 수 있습니다.
Oskar Skog

답변:


24

이 게이트가 켜지고 꺼지는 속도는 사용 된 전력과 관련이없는 것 같습니다.

이것은 당신이 틀린 곳입니다. 기본적으로 각 게이트는 매우 작은 정전 용량을 가진 커패시터입니다. 전압을 "연결"및 "연결 해제"하여 전원을 켜거나 끄면 엄청나게 작은 전하가 게이트 안팎으로 움직입니다.

그리고 움직이는 전하는 전류를 사용하는 전류입니다. 초당 수십억 번 전환되는 수십억 개의 게이트에서 나오는 작은 전류는 모두 약간 더해집니다.


그것이 바로 메모리에서 일어나는 일입니다-DRAM 메모리. 프로세서 (캐시)로부터 메모리 ... 커패시터로 구현되지 않고 SRAM을 사용

7
@ m3th0dman : 커패시터로 의도 된 요소에 대해 이야기하고 있지 않습니다. 모든 트랜지스터 CPU 내부의 모든 요소에는 정전 용량이 있습니다.

7

SK-logic의 의견에 따르면 대부분의 전력은 안정 상태가 아닌 플립 플롭을 전환하는 데 실제로 소비됩니다.

동적 감소를 위해 IIRC를 수행 할 수있는 두 가지 주요 작업이 있습니다.

  1. 칩의 전체 영역이 클럭킹되지 않으면 해당 영역의 전원을 완전히 끌 수 있습니다

  2. 클록 트리 자체는 시스템에서 가장 빠른 스위칭 부분이므로 시스템에서 가장 큰 전력 소모 중 하나입니다. 따라서 클록 트리 자체의 전력을 줄이는 것이 중요합니다.


시계 트리는 무엇입니까?
akaltar

2
@akaltar 클럭 신호를 클럭과 동기화해야하는 프로세서의 모든 요소에 분배하는 모든 라인의 총계.
Michael Borgwardt

6

전자 회로에서 소비하는 전력에는 두 가지 구성 요소가 있습니다.

  • 주파수 상수와 다소 무관하며 기술 및 작동 전압에 따라 달라지는 누설;
  • 주파수에 의존하는 스위칭 전력 (다양한 커패시턴스, 트랜지스터 및 와이어의 로딩 및 언 로딩으로 인한 것)

프로세서 설계자는 소비를 줄이기 위해 여러 가지 기술을 사용합니다.

  • 부하에 따라 주파수 수정 (스위칭 전력에만 적용됨)
  • 필요하지 않을 때 회로의 전력을 줄이거 나 전원을 끌 수도 있습니다.

이러한 기술은 부하에 따라 전력 소비 POV로부터 주파수를 줄이거 나 최대 속도로 "스프린트"를 수행 한 다음 회로의 하위 세트를 차단하는 것이 더 나을 수 있습니다.


주파수를 줄이면 작동 전압을 낮추어 (트랜지스터가 약간 느리기 때문에) 누설을 줄일 수 있습니다.
TEMLIB

0

낮은 클럭 속도로 실행해도 고정 된 작업을 수행하는 데 필요한 에너지에는 영향을 미치지 않습니다. 누출을 설명하고 완전히 끌 수 있으면 필요한 에너지를 증가시킬 수도 있습니다.

낮은 클럭 속도로 에너지를 절약 할 수 있는 경우 에도 작동 전압을 낮출 수 있습니다. 전압을 줄이면 종종 더 오래 작동 할 필요를 보상하기에 충분한 전력이 절약됩니다.


나는 동의하지 않습니다. 클럭 속도를 낮추면 전체 클럭 체인에 수반되는 모든 기생 스위칭 손실이 줄어 듭니다. 이는 전형적인 CPU에서 막대합니다. 1GHz의에서 내 아톰 넷북 실행 내가 500MHz의 아래로 CPU 스로틀 경우 쿨러를 실행하고 눈에 띄게 공급 장치에서 낮은 전력을 그립니다, 그리고 그것을 수행 하는 작업에 영향을 미칠 - 그것은 전체에 한 두 번합니다.
rdtsc

2
@rdtsc 조심하세요. 숀 기록 에너지 ,없는 힘을 .
파이프

@rdtsc 당신은 힘과 에너지를 혼동하고 있습니다. 첫째, 특정 작업에는 고정 된 수의 클럭 사이클이 필요합니다. 배터리가 두 가지 작동 지점에서 작업에 어떻게 반응하는지 생각해보십시오.
Sean Houlihane

아 네 아직도 커피 한 잔을 마시고 있습니다. :) 측정해야하지만 현대 CPU는 초당 처리 할 수있는주기적인 이벤트가 많기 때문에 사용 된 에너지 가 실제로 클럭 속도가 낮을수록 약간 클 것이라고 생각합니다 . 클럭 속도가 느리면 더 많은 시간이 걸리고 작업 완료 시간이 길어집니다.
rdtsc

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.