Core Parking

Windows 10 코어파킹 (4) 부스트클럭편 노트북편

2019. 1. 19. 23:24

모바일을 위한 코어파킹

코어파킹에 대한 포스트 제목이 "더 조용하게, 더 오래!"였지만 실제로 모바일이나 배터리에 관한 언급은 거의 없었습니다.

오히려 고성능 위주의 HEDT에 적절한 설정값을 공유하거나 추천해드렸습니다.

이번에는 모바일에 대하여 말해보려고 합니다. 클럭이 높을수록 에너지 효율이 떨어지기 때문에 클럭이 낮게 유지될 수 있어야 합니다. 단기적으로는 더 조용하고 오래 사용할 수 있습니다. 발열량이 감소하기 때문에 높은 성능이 필요한 순간에 높은 성능을 낼 수 있고, 장기적으로는 더 높은 성능까지 낼 수 있어야 합니다. 하지만 장기적으로 빠른 처리를 하기 위해 단기적인 관점에서 성능 하락이 크면 안될겁니다.

기존에 코어파킹 강좌에서 언급했거나 설명했던 항목들은 전체적인 부분을 조절하는 항목들입니다.

CPU의 사용량에 따라 설정한 가장 낮은 클럭부터 설정한 가장 높은 클럭 사이를 조절하는 항목이거나, CPU의 사용량에 따라 활성화 된 코어를 설정한 최솟값과 최댓값의 사이에서 조절하는 항목입니다.

이번에는 단순한 클럭 조절을 위한 코어 파킹 설정이 아닙니다. 부스트 클럭을 조절하기 위한 항목에 대해 언급하려고 합니다.

부스트 클럭과 TDP

CPU 제조사들은 코어를 늘리면서 발열을 해소하기 위해 Base Clock을 낮추고, 동시에 특수한 상황에서는 오히려 성능이 낮아지는 단점을 해소하기 위해 Boost Clock이라는 개념을 적용했습니다.

그리고 부스트 클럭과 베이스 클럭의 운영을 조절하기 위해 TDP를 도입합니다.

모바일은 TDP로 발열을 제어합니다. 데스크톱도 발열제어를 하지만 큰 영향을 받지는 않습니다.

TDP에 의한 발열 제어는 CPU만 고려합니다. 그러다보니 CPU의 성능은 남고 GPU의 성능은 부족한데 TDP제한이 작동하지 않았던 경우도 있습니다. 그래서 라이젠 모바일 프로세서의 경우는 TDP를 더 낮춰서(클럭이 더 낮게 유지됨) 더 높은 게이밍 퍼포먼스를 달성하기도 하였습니다. 인텔이든 AMD든 상관 없이 클럭이 높기 때문에 부스트 클럭을 제한함으로써 배터리와 발열은 개선하면서도 체감 차이는 거의 없는 후기가 올라오기도 하였습니다.

데스크톱 프로세서라고 예외는 아닙니다. TDP에 의한 발열 제어는 데스크톱 프로세서와는 관련이 없지만, 부스트 클럭의 조절이 필요합니다. Intel Core i9-9900K의 터보 클럭 스펙은 다음과 같습니다.

출처 : wikichip.org

부스트 클럭으로 작동하는 코어가 많아질수록 최대 클럭은 낮아집니다.
만약 싱글 쓰레드 위주의 프로그램을 실행할 때 모든 코어가 부스트 클럭으로 유지되고 있다면 어떨까요? 해당 쓰레드는 실제로는 4.7Ghz처럼 처리되겠죠. 게다가 파일 탐색기나, 마우스 커서의 움직임처럼 간단한 작업을 처리하는 프로세스들도 불필요하게 4.7Ghz로 처리될겁니다.
하지만 부스트 클럭으로 작동하는 코어를ㄹ 잘 조절하면 높은 성능이 필요한 쓰레드는 5.0Ghz로 작동할 겁니다. 다른 코어에서 실행되는 프로세스들은 베이스 클럭인 3.6Ghz의 속도이지만 체감 차이 없이 처리될 수 있습니다.

코어 수가 많아지면서 베이스 클럭과 부스트 클럭의 차이가 커지는 양상을 보이고 있습니다. 또한 부스트 클럭으로 작동하는 코어의 수에 따라 부스트 클럭도 달라집니다. 클럭이 높을 수록 에너지 효율이 떨어지고 연산량 대비 발열량이 증가합니다. 그렇기 때문에 베이스 클럭은 낮추고, 부스트 클럭도 활성 코어 수에 따라 변하게 하는거죠.

베이스 클럭 자체도 낮은 성능은 아닙니다. 그렇기 때문에 베이스 클럭은 자주 사용되고 부스트 클럭은 덜 사용된다면 발열 제어에 여유가 생겨서 필요할 때에 높은 성능을 낼 수도 있고, 체감 성능 하락도 작아질 것입니다. 그렇기 때문에 부스트 클럭을 적절히 조절하면 높은 성능을 유지할 수 있습니다.

부스트 클럭 설정 조정

윈도우는 작업 관리자에 베이스클럭이 표시됩니다. 즉, 윈도우는 베이스 클럭과 부스트 클럭을 인식할 수 있다는 거죠.(물론 맥이나 리눅스도 마찬가지입니다)

그리고 윈도우는 부스트 클럭에 관한 조절 기능도 제공하고 있습니다. 하지만 기본값이 일반 베이스 클럭과 다를 바 없이 대하도록 되어 있습니다. 그렇기 때문에 웹 브라우저를 실행하고, 웹서핑하는 내내 높은 클럭이 유지됩니다.

반면 MacOS의 경우는 베이스클럭에 있는 시간이 부스트 클럭에 있는 시간보다 깁니다. 웹 브라우저를 실행할 때는 부스트 클럭으로 작동하지만, 웹서핑할 때는 베이스 클럭보다 높은 주파수로 올라가지 않습니다. 그러다가 링크를 클릭하여 다른 웹 페이지로 이동할 때는 부스트 클럭으로 작동합니다.

아래 설정을 통해서 윈도우에서도 부스트 클럭에 머무르는 시간을 줄일 수 있습니다.

Windows 10 코어파킹 더 조용하게, 더 오래!

  • 우선 Windows 10 코어파킹 더 조용하게, 더 오래!편을 참고하여 전원 옵션을 활성화 해주세요.
  • 그리고 제어판 -> 시스템 및 보안 -> 전원 설정에 들어갑니다.
  • 사용 중인 프로필의 오른쪽에 있는 "설정 변경" 버튼을 클릭합니다.

  • 그리고 "컴퓨터를 절전 모드로 설정" 아래에 있는 "고급 전원 관리 옵션 설정 변경"을 클릭합니다.

  • 나타나는 창에서 '프로세서 전원 관리' -> 프로세서 성능 향상 모드(영문OS를 사용 중이기 때문에 한글 표현은 다를 수 있습니다.)로 이동합니다.


그러면 위와 같은 옵션들을 확인할 수 있습니다.

꺼짐
활성
적극적
효율적으로 활성
효율적으로 적극적
보장될 때 적극적
보장될 때 효율적으로 적극적

등의 옵션이 있습니다. 번역이 이해하기 조금 힘들긴 하지만 잘 생각해보면 어려운 표현은 아닙니다.

추가로 Microsoft에서 이와 관련한 설명을 제공하고 있습니다.

Name P-state-based behavior CPPC behavior
0 (Disabled) Disabled Disabled
1 (Enabled) Enabled Efficient Enabled
2 (Aggressive) Enabled Aggressive
3 (Efficient Enabled) Efficient Efficient Enabled
4 (Efficient Aggressive) Efficient Aggressive

출처 : Microsoft

여기서 P-state-based behavior와 CPPC는 CPU 성능에 관한 메시지를 전달하는 방법입니다.

꺼짐 : 부스트 클럭은 사용하지 않습니다.
활성 : (P-state : 활성, CPPC : 효율적으로 활성)
적극적 : (P-state : 활성, CPPC : 적극적)
효율적으로 활성 : (P-state : 효율적, CPPC : 효율적으로 활성)
효율적으로 적극적 : (P-state : 효율적, CPPC : 적극적)
보장될 때 적극적 : (P-state : 효율적, CPPC : 효율적으로 활성)
보장될 때 효율적으로 적극적 : (P-state : 효율적, CPPC : 적극적)

Microsoft 문서에는 "at Guaranteed(보장될 때)"에 대한 설명은 없습니다. 하지만 이 설정을 사용하면 부스트 클럭을 사용하지 않는 것과 다름이 없을 정도라는 커뮤니티 후기가 있습니다.

부스트 클럭 유지 시간 : 적극적 > 활성 > 효율적으로 적극적 > 효율적으로 활성 > 보장될 때 적극적 > 보장될 때 효율적으로 적극적

서버용 Windows의 경우 기본값이 "효율적으로 활성"입니다.

MacOS와 같은 CPU 성능 조절을 원한다면 "효율적으로 활성"이 가장 적절할 것 같습니다.

Windows 10 코어파킹 더 조용하게, 더 오래!

2016. 12. 26. 15:08

안녕하세요~ 오랜만에 글을 쓰네요! 요즘 굉장히 바빴습니다.
딱히 다른 뉴스들 끌어모아서 쓸만한 글도 없었구요. iOS 10과 에어팟은 여러가지 의견들이 있어서 글을 쓸만하기도 했던것 같기도 합니다.

바로 본론으로 넘어가겠습니다.

저는 코어파킹을 Windows 7부터 사용해 왔습니다. 페넘에서 처음 적용했는데, 쿨러 소음의 차이가 굉장히 컸습니다.
이후로도 절전을 목적으로 코어파킹을 사용하고 있습니다.
이후 Windows 8, Windows 10에서 조금 구조가 바뀌었고, 그래서 제가 직접 만들어서 사용했습니다.
그런데 지인에게 알려주려다 보니 Windows 10용 코어파킹을 포스팅한 블로그가 없었습니다. 그래서 직접 작성하게 되었습니다.

글 마지막에 직접 만들어서 쓸수 있는 심화과정도 작성하겠습니다.

코어파킹이란?

대부분의 CPU는 여러 개의 코어로 이루어져 있습니다. 그 코어들을 몇개만 꺼서 전원을 절약하고 발열을 줄일 수 있습니다.

또한 오버클럭을 하는 분들중 몇몇은 클럭을 낮추는 절전기능(Speed Step, Cool & Quiet)을 끕니다. 그러면 최대클럭을 유지하기 때문에 오버클럭한 CPU가 안정적으로 작동하게 됩니다. 여기서 전원을 절약하고 발열을 줄이는 데 코어파킹이 도움이 됩니다.

위 사진은 구글의 데이터베스 센터입니다. 이러한 서버실은 발열이 엄청나기 때문에 에어컨도 켜져있는데요, 에너지 절약 차원에서 Server용 Windows는 기본적으로 코어파킹이 켜져 있습니다.(구글이 Windows Server쓰는 건 아닙니다)

아이러니하게도 노트북에는 코어파킹이 켜져있지 않습니다. 대부분 듀얼코어 노트북이기 때문에 큰 차이가 나지 않기 때문입니다. 그래도 저는 듀얼코어에도 코어파킹을 설정할 것입니다. 노트북의 생명은 절전이니깐요!

하지만 쿼드코어 노트북이라면 필수 과정이라고 생각합니다.

코어파킹 준비

기본적으로는 코어파킹 설정에 접근할 수 없게 되어 있습니다. 때문에 레지스트리 편집기를 통해 제어판 설정에 나타나도록 해야 합니다.

코어파킹(x64,x86) 제어판 활성화.reg
다운로드

파일 다운로드가 불가능 할 경우, 이 곳을 확인하시기 바랍니다.
카카오에서 파일 다운로드의 처리 방식(?)을 변경하면서 reg파일을 오디오 파일로 인식하고 카카오 자체의 웹플레이어로 연결하는 것 같습니다.
[https://kollhong.com/34-2/]

첫번째 파일은 제어판에서 코어파킹을 설정할 수 있도록 보이게 하는 설정입니다.
심화과정에서 기존 파일 백업도 확인할 수 있습니다.

2017.03.18 쓰로틀 상태 허용 옵션이 기존의 Windows 7과는 다르게 동작합니다.

Windows 7 에서는 쓰로틀 상태 허용 옵션을 통해 코어 파킹을 활성화/비활성화 할 수 있었습니다.

하지만 Windows 10에서는 옵션을 변경해도 코어파킹은 항상 활성화 되어 있습니다.

프로세서 성능 코어파킹 최소 코어 값은 100%로 바꾸면 코어파킹이 해제됩니다.

2017.03.07 백업 파일 복원이 불가능하다고 하여 새로운 글에서 제 설정값에 대해 공유합니다.

여기서 설정값 확인할 수 있습니다.

기존에는 여러 가지 항목을 이용해보시라고 많은 항목이 제어판의 전원 옵션에 나타나도록 했습니다.

하지만 복원이 어렵기도 하고 직관성이 떨어져 꼭 필요한 옵션만 나타나도록 했습니다.

2017.02.06 멀티 코어 지원 프로그램들이 증가함에 따라 코어 클럭보다 코어 파킹 해제가 더 자주 발생하도록 조절했습니다.

두번째 파일을 실행했어도 다음 단계를 진행해야 합니다.

코어파킹 설정

코어파킹 설정은 시작 -> "제어판"입력(자동으로 검색됨) -> "절전"입력(자동으로 검색됨) -> 전원 옵션 클릭

전원옵션 설정으로 이동합니다.

그러면 위와 같은 화면이 나옵니다.
코어파킹 준비 단계에서 두번째 파일을 실행했다면 왼쪽에서 "고성능"을 체크하면 설정이 끝이 납니다.
전원 옵션을 고성능으로 바꾸고 싶지 않으면 아래 백업 복원 심화를 읽어보세요
하지만 아래에 상세 설명이 있으니 읽어보시기를 추천합니다.

첫번째 파일을 실행했다면 활성화된 설정을 확인하고 설정 변경 버튼을 누릅니다.
그리고 아래에서 "고급 전원 관리 옵션 설정 변경(C)"를 클릭합니다.

그러면 위와 같은 창이 나타납니다.
프로세서 전원 관리 항목에서 다음과 같이 설정합니다.

프로세서 성능 코어파킹 최소 코어 : 5%
스로틀 상태 허용 : 설정
프로세서 성능 코어파킹 최대 코어 : 100%

프로세서 성능 코어파킹 최소 코어 : 코어파킹이 활성화되어도 항상 켜져있어야 하는 코어 수를 지정합니다. 하이퍼쓰레딩을 인식하기 때문에 5%로 설정해도 켜져있는 물리코어에 따라 가상코어도 켜집니다.
스로틀 상태 허용 : 코어파킹을 켜고 끕니다. 코어파킹 때문에 렉걸리는데 기본 설정으로 초기화하고 싶지 않다면 스로틀 상태 항목만 허용하지 않으면 됩니다.
프로세서 성능 코어파킹 최대 코어 : 쿼드코어를 사서 듀얼코어로 쓰고 싶지 않다면 100%로 설정합니다.

노트북의 경우 배터리 상태와 AC전원 상태를 설정할 수 있습니다. 배터리에서는 듀얼코어로 사용하고 싶으면 50%로 설정하면 됩니다.

두번째 파일이 마음에 들지 않는다면 위의 창에서 "전원 관리 옵션 기본값 복원"을 클릭하여 초기화할 수 있습니다.

코어파킹 설정 심화

지금까지는 레지스트리 파일 외에는 어느 블로그에서나 얻을 수 있는 정보입니다.
직접 레지스트리를 돌아보면서 찾아낸 몇가지 기능들이 있습니다.

두번째 레지스트리 파일은 아래 것들을 조금 조작해둔 파일입니다.

프로세서 성능 코어 파킹 동시성 임계값 : 97%(기본값) -> 높을수록 코어파킹 해제가 잘됩니다.
프로세서 성능 코어 파킹 증가/감소 시간 : 2 (기본값) -> 코어파킹/코어파킹해제 주기를 정합니다.
프로세서 성능 코어 파킹 성능 상태 : 최고 성능 상태 -> Windows 7에서는 최고 성능 상태를 하면 Speed Step이 작동하지 않는 버그가 있었지만 Windows 10에서는 괜찮습니다. 클럭도 잘 떨어지고 코어 파킹도 잘 됩니다.
프로세서 성능 코어 파킹 동시성 가용 임계값 : 50 -> 낮을수록 코어파킹이 잘됩니다.

그 외에도
프로세서 성능 증가 정책 : IdealAggressive -> Speed Step을 조절합니다. 조금 더 클럭이 높게 잡혀서 성능이 개선됩니다.
프로세서 성능 강화 모드 : 적극적 -> Turbo Boost를 더 자주 사용합니다.

성능 차이가 좀 있는 기능들에 대한 설정입니다.
실제로는 그 외에도 여러 가지 설정이 활성화됩니다.
직접 사용해보세요~^^

레지스트리 심화

여기서는 백업, 복원, 전원 옵션에서 가리거나 표시하기, 기본값 자체를 변경하는 것들을 쓸겁니다.

제어판에 더 많은 설정 보이기

시작 -> regedit 입력 -> 다음으로 이동 "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings"
이곳에 있는 것들이 "전원 옵션" 창에 보이게 할 수 있는 레지스트리들입니다.
그 중에 "54533251-82be-4824-96c1-47b60b740d00" 안에 있는 것들이 "프로세서 전원 관리" 부분의 항목들입니다.

프로세 전원 관리 안에 있는 키를 선택하고 여기서 Attributes를 수정합니다.
값이 0이면 제어판의 전원 옵션 창에서 수정이 가능하고, 값이 1이면 전원 옵션 창에 나타나지 않습니다.

백업

위에서 작성한 대로 레지스트리 편집기를 통해 프로세서 전원 관리 부분에 들어갑니다.

항목 위에 마우스 우클릭을 하고 내보내기를 하시면 전원 옵션에 보이게 했거나 숨긴 항목의 백업이 가능합니다.

다음은 전원 옵션에서 설정한 내용을 백업하는 방법입니다.

regedit에서"HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power"로 이동합니다.
User안의 PowerSchemes를 내보내기 합니다.

복원

내보내기 한 reg파일을 실행합니다. ~~

복원이 불가능합니다. 백업한 파일을 마우스 우클릭, 편집하여 참조하여 직접 복원합니다.
백업 된 레지스트리 키 순서대로 전원 옵션->프로세서 전원 관리 항목에 차례대로 입력합니다.

백업 복원 심화

컴퓨터란 참 신기하쥬? 백업도 심화가 있습니다.

이렇게 되어 있습니다. 본인이 고성능을 사용중이라면 가운데만 백업하면 됩니다.
반대로 복원할 때도 활용 가능합니다.

이 부분을 381b4222-f694-41f0-9685-ff5bb260df2e 로 바꾸면 전원 옵션 균형 조정에서도 사용이 가능합니다.
한글로 reg파일을 열어서 찾아바꾸기 하시면 됩니다.

전원 옵션에서 가리거나 표시하기

사진에서 오른쪽 Pane을 보면 Attributes라는 항목이 있습니다. 이 값이 0이면 전원옵션에 표시되고, 1이면 표시되지 않습니다.
Attributes가 없는 것은 반드시 표시되어야 하는 항목입니다. Attributes를 만들어도 효과는 없습니다.

기본값 변경하기

각 항목마다 하위메뉴를 열면 "DefaultPowerSchemeValues"가 있습니다.
여기서 절전, 균형 조절, 고성능 모드의 기본값을 설정하거나 확인할 수 있습니다.

결과

작업관리자에 파킹됨이라고 나타납니다.
지금 블로그 작성하는 동안에는 첫번째 코어와 그의 하이퍼쓰레딩만 활성화되어 있습니다.
그러다가 티스토리 사진 첨부 버튼을 누르자 두 개의 코어가 활성화되고, 순간 세 개의 코어가 작동합니다.

+ Recent posts