sysfs 센서 파일에서 CPU 온도를 색상으로 구분하기 위해 쉘 프롬프트로 달러 기호를 설정했습니다. 존재하다온도-색상-bash-힌트-두 개의 스크린샷을 포함시켰습니다. 그러나 문제는 단서가 아닌 것 같습니다. 단서는 (매우) 짧은 스파이크를 극적인 방식으로 보이게 할 뿐입니다.
하나의 xterm을 사용하여 온도를 관찰 watch
하고 다른 xterm에서 다른 명령을 실행했습니다.
xterm이 2초(15%) ls -R /usr
동안 표시되고 top
온도 센서가 매우 불안하게 반응합니다. 지금까지는 매우 좋습니다.
상단에서는 아무 일도 일어나지 않기 때문에 ls -R /usr >/dev/null
하나 이상의 센서에서 온도가 빠르게 최고조에 달하며 색상 팁이 이를 정확하게 반영합니다.
그 후 연속으로 세 번 녹색 프롬프트가 표시되고 ls -R /usr >/dev/null
갑자기 1초 이상 밝은 분홍색이 표시됩니다. 즉, 몇 번의 빠른 입력 클릭이 가능합니다. 찾기와 동일합니다.
센서 판독값의 짧고 매우 짧은 스파이크가 현실을 반영합니까? 코어는 어떻게 45에서 70으로 갔다가 1초( watch
) 이내에 다시 돌아오나요(힌트 색상)?
다음과 같습니다. 마지막 부분은 일반적입니다. 두 번의 빠른 입력 클릭으로 녹색에서 빨간색으로 갔다가 다시 돌아옵니다. 어제는 한동안 마젠타색 상태를 유지했습니다. 콘솔에서도 동일한 효과가 나타납니다.
힌트:
PS1='$(systemp-color)$ \e[m'
온도를 색상 순서로 변환하는 기능은 다음과 같습니다.
systemp-color() {
t=$(</sys/class/hwmon/hwmon2/temp1_input)
case $t in
3?000 ) c='1;34';;
4[012]000 ) c=36;;
4[345]000 ) c=32;;
4[6789]000 ) c='33';;
5?000 ) c='31';;
6?000 ) c='1;35';;
* ) c='30';;
esac
echo -ne "\e[${c}m"
}
센서는 다음과 같습니다.
$ cd /sys/class/hwmon/hwmon2/
$ grep "" temp?_label
temp1_label:Package id 0
temp2_label:Core 0
temp3_label:Core 1
temp4_label:Core 2
temp5_label:Core 3
$ grep "" temp?_input
temp1_input:43000
temp2_input:42000
temp3_input:42000
temp4_input:42000
temp5_input:41000
답변1
임계값을 초과하면 CPU가 유휴 상태에서 벗어나 더 높은 전압과 더 높은 주파수를 제공합니다. 실시간 운영 체제를 사용하지 않기 때문에 이 임계값을 통과하기 위해 백그라운드에 있는 다양한 항목이 포그라운드에서 실행 중인 항목과 결합되는 경우가 있습니다.
lscpu | grep MHz
바라보다
Linux CPU 스케줄러에서 사용하는 시간 조각 길이를 변경하는 방법은 무엇입니까?
그리고
https://askubuntu.com/questions/218567/any-way-to-check-the-clock-speed-of-my-processor/218570