무엇이 바뀌었나

무엇이 바뀌었나

2018년 1월 15일 업데이트됨

.gif시작하는 동안 "정상적인" 동작을 보여주는 90초 Conky를 만들었습니다 .

  • Conky가 시작된 지 몇 초 후에 시작했습니다.
  • 몇 초 후에 Peek를 시작했고 3초 후에 .gif 기록이 시작되었습니다. 이때 시스템 가동 시간은 약 30초였습니다.
  • .gif가 실행되면 Firefox 10 탭과 두 개의 창(하나는 비디오(Flash 플레이어) 포함)을 로드합니다.
  • 가동 시간의 첫 1분 동안 .gif는 터보 모드에서 더 높은 빈도와 중간 정도의 CPU 로드를 보여줍니다.
  • cron작업(예: 일일 이메일 백업)은 @reboot에서 실행되어 단일 코어 최대치를 100%로 가져옵니다.
  • 1분 후에 주파수는 2.6GHz 아래로 떨어지며, 이는 터보가 아닌 "정상"으로 간주됩니다.
  • 시스템 실행 시간이 2분 10초에 도달하면 .gif가 종료됩니다.

정상 시작 .gif:

콘키스타트.gif

이는 동일한 코어에 속하지만 4.14.13전체 세션 동안 주파수가 터보 모드로 유지되었던 2018년 1월 13일의 비정상적인 동작을 설명하지 않습니다.

2018년 1월 14일 업데이트됨

오늘 커널 4.14.13으로 재부팅했는데 어제의 4.14.12와 똑같이 작동합니다. 나는 차이점을 설명할 수 없으며 이 질문에 대한 최종 투표에 반대하지도 않습니다.

높은 CPU 비율(낮은 빈도)과 낮은 CPU 비율(높은 빈도)

FireFox를 사용하여 노트북의 내장 1080p 디스플레이에서 전체 화면이 아닌 10개의 탭을 열고 ThunderBolt 3 USB-C-HDMI 어댑터를 통해 연결된 외부 TV에서 전체 화면으로 1개의 탭을 열 때의 두 결과 영화를 스트리밍할 때 FireFox를 사용하십시오. 모든 테스트는 Skylake i7 6700HQ에서 수행되었습니다.

커널 4.14.12

모든 코어가 샘플링되었으며 4.4( 버전 4.14.13까지) 낮은 주파수에서 높은 CPU %를 나타냈습니다 4.10.4.14

CPU 고주파수 low.gif

커널 4.14.13

Meltdown 보안 결함의 영향을 확인하기 위해 다른 코어를 시도하는 동안 클럭 주파수가 터보 속도로 계속 실행되고 온도가 10도 증가한다는 점에서 관련 없는 변화를 발견했습니다.

CPU 저주파 고주파.gif

무엇이 바뀌었나

유일한 차이점은 부팅 커널 버전 4.14.12(높은 CPU, 낮은 빈도)과 커널 버전 4.14.13(낮은 CPU, 높은 빈도)입니다.

apt-get두 테스트 모두 Ubuntu 16.04.3 LTS를 사용하여 중간에 변경 사항 없이 수행되었습니다 .

두 테스트 모두에서 Intel HD530 통합 그래픽만 사용하여 nVidia GTX 970M이 비활성화되었습니다. 커널 4.14.4에서 nVidia를 활성화하면 CPU 비율이 크게 줄어들지 않는 것 같지만 데스크톱에서 Windows를 이동하는 것이 Intel iGPU만큼 원활하지 않습니다.

나는 Ivy Bridge 3630QM CPU를 탑재한 또 다른 노트북을 가지고 있는데, 지난 3년 동안 매우 다른 동작을 보였습니다. CPU %는 약한 프로세서이기 때문에 약간 높지만 주파수는 낮음과 높음 사이를 계속 오가며 대부분의 시간을 중간에서 보냅니다. 나는 주파수 동작이 바람직하다고 생각하지만 그것은 주관적입니다. 누군가 관심이 있다면 나중에 3630QM CPU에 대한 Conky .gif를 만들겠습니다.

질문

주파수가 높은 낮은 CPU를 갖는 것이 더 낫습니까, 아니면 주파수가 낮은 높은 CPU를 갖는 것이 더 낫습니까?

이 17인치 노트북은 5.5인치 1080p 스마트폰처럼 코트 주머니에 쉽게 들어가지 않기 때문에 꺼내서 가지고 다닐 수 없기 때문에 배터리 사용량은 실제로 문제가 되지 않습니다. 낮은 CPU %와 낮은 주파수가 배터리 수명에 더 좋은지 알아두면 좋을까요?

답변1

이 질문에 대한 대답은 실제로 사용 사례에 따라 다르지만 Haswell 포스트 코어 속도는 각 코어의 필요에 따라 증가할 수 있으며 "언코어" 또는 비 CPU 제약 조건(예: 메모리 제한)이 증가할 수 있다는 점을 명심하세요. 코어의 전력 예산에 영향을 주지 않고 속도 주파수를 조정합니다.

일반적으로 추가된 대기 시간이 상호 작용의 느낌에 영향을 주지 않는 경우 빈도를 최대한 낮추는 것이 좋습니다.

CPU의 터보 속도는 패키지의 전력 및 열 예산에 의해 제한되며, 대부분의 코어가 더 낮은 주파수에서 실행되는 경우 단일 스레드는 더 빠르고, 더 오랫동안, 더 오랫동안 터보를 사용할 수 있습니다.

또한 일부 기능(예: AVX2)에는 정수 연산보다 더 많은 전력이 필요하며 대부분의 칩에서는 모든 코어가 고속인 경우 CPU 주파수를 기본 주파수 아래로 줄입니다.

나는 당신이 사용하는 도구에 대해 잘 모르지만 이러한 변화로 인해 일부 사람들은 핵심 주파수 대신 TSC 주파수를 보고 있으며 이를 관찰하지 못할 수도 있습니다.

안타깝게도 Turbo Boost의 동적 특성과 코어 및 패키지 온도와 관련된 일부 보이지 않는 PID 기능으로 인해 %used 숫자는 그다지 유용하지 않습니다.

허용 가능한 대기 시간(Linux의 최신 확장 드라이버 반복에서 훨씬 더 좋음)과 최소 온도를 목표로 하면 단일 스레드 성능이 향상될 가능성이 높습니다.

내가 확인합니다

$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_available_governors

그리고:

/sys/devices/system/cpu/*/cpufreq/scaling_governor

당신이 아닌지 확인하기 위해성능거버너는 대기 시간을 위해 개별 스레드 성능을 희생합니다.

관련 정보