기본 총재를 변경하는 방법?


12

파이의 기본 관리자를 주문형에서 성능으로 변경하고 싶습니다. 이 방법이 있습니까?

답변:


21

커널을 다시 컴파일하지 않고 기본값 을 변경할 수 있다고 생각하지 않습니다 . 즉, 부팅 할 때 커널이 선택하는 것을 의미합니다.

그러나 실행 중에 다른 관리자를 사용하도록 지시 할 수 있으므로 재 컴파일하지 않고 기본값을 효과적으로 설정하려면 무언가 /etc/rc.local또는 다른 시작 스크립트 에 무언가를 추가 할 수 있습니다 .

/sys디렉토리는 디스크에없는; 실제로 RAM 가짜 파일 시스템이며 실제로 커널에서 정보를 얻고 명령을 보내기위한 인터페이스입니다. 이것은 모두에 상대적 /sys/devices/system/cpu이므로 다음과 같습니다.

> cd /sys/devices/system/cpu

또한 쓰기 ( echo blahblah >) 를 수행하려면 루트 여야합니다 . 어쨌든 위의 디렉토리와 관련하여 사용 가능한 총재를 확인하십시오.

> cat cpu0/cpufreq/scaling_available_governors
conservative ondemand userspace powersave performance

분명히 당신은 ondemand(그러나 이것에 대해 아래의 "Gotcha"를 읽으십시오 ); 확인하다:

> cat cpu0/cpufreq/scaling_governor
ondemand

그것을 바꾸려면 :

echo performance > cpu0/cpufreq/scaling_governor

이것은 루트 또는 이와 같이 수행되어야합니다.

sudo sh -c "echo performance > cpu0/cpufreq/scaling_governor"

sudo리디렉션이 있으므로 일반 기능 이 작동하지 않습니다 >.

이제 알 수 있습니다 /sys/devices/system/cpu/cpufreq디렉토리, (같은 NOT /sys/devices/system/cpu/cpu0/cpufreq이전 디맨드 주지사를 구성하는 파일 핸들을 포함!), 비어 있습니다.


잡았다 ...

Raspbian에는 혼란스러운 이름을 가진 init 스크립트가 있습니다 raspi-config(아니오, 다른 스크립트와 는 아무런 관련이 없습니다 (첫 번째 부팅시 혼란스럽게도 이름이 지정됨 apply_noobs_os_config.sh)).이 기술을 사용 ondemand하여 Shift 키 가 없으면 주지사를 설정합니다 (라즈 비안 커널이 powersave컴파일 한 스톡 ) 다른 작업을 수행하지 않으므로이 ( systemctl disable raspi-config) 를 비활성화하는 것이 안전 하거나 Gorkamorka의 답변에 따라 편집 할 수는 있지만 시스템 업데이트 등으로 편집하지 않을 위험이 있습니다. 누군가가 그걸로 무엇을하려고하는지 알고 있습니다.

위의 비 스도 버전을에 추가해 볼 수 /etc/rc.local있습니다. raspi-config스크립트가 종료 된 후에 발생할 수 있습니다 .


의견은 긴 토론을위한 것이 아닙니다. 이 대화는 채팅 으로 이동 되었습니다 .
— goldilocks

2
오히려 그럼 그냥 사용, 루트로 전환이 필요합니다 tee: echo performance | sudo tee /sys/devices/system/cpu/cpu*/cpufreq/scaling_governor.
— 가짜 이름

2
다른 방법 : sudo sh -c "에코 성능> cpu0 / cpufreq / scaling_governor"
— Moonchild

Raspbian 데비안을 기반으로하기 때문에, 당신은 패키지를 찾을 수 있어야 cpufrequtils하고 sysfsutils. 을 설치 한 후, 당신은에서 주지사 및 기타 매개 변수를 설정할 수 있습니다 /etc/default/cpufrequtils와 /etc/sysfs.conf- 여기 참조 : wiki.debian.org/HowTo/CpuFrequencyScaling을
— mbirth


3

RPi 스택 교환에 대한 비슷한 질문이 있습니다.

다시 말하면 CPU가 95 % 사용 중일 때 온 디맨드 속도가 최대치까지 올라갑니다. 다음과 같은 방법으로 통화 중 시간을 더 낮은 백분율로 낮출 수 있습니다 (즉, 통화 중이 아닐 때 더 높은 시간이 걸리는 것을 의미).

"파일에 정수 값 쓰기 (예 : /etc/rc.local 시작 파일에 다음을 입력 할 수 있음) : echo 60> / sys / devices / system / cpu / cpufreq / ondemand / up_threshold"

이론적으로 ...이 백분율을 10 또는 5와 같이 매우 낮은 값으로 설정할 수 있습니다. 즉, 항상 최대로 실행됩니다.

도움이 되었기를 바랍니다. 링크 된 기사에 이것을 올린 사람의 점수를 올리십시오!


3
실제로는 주지사를 온 디맨드에서 성과로 바꾸는 방법 (두 가지 다른 주지사)을 묻는 질문에 대한 답은 아닙니다 .
— goldilocks

1
@ goldilocks 나는이 답변이 여전히 quesiton에 유용한 것을 추가한다고 생각합니다.
— Dmitry Grigoryev

2

대체 솔루션 (Raspbian을 실행중인 경우)은 스케일링 조정기를 항상 비활성화하도록 /etc/init.d/raspi-config에서 init.d 스크립트를 수정하는 것입니다. 기본 동작은 Shift 키 중 하나를 눌렀을 때 시작시에만 활성화하는 것입니다.

#!/bin/sh
### BEGIN INIT INFO
# Provides:          raspi-config
# Required-Start: udev mountkernfs $remote_fs
# Required-Stop:
# Default-Start: S
# Default-Stop:
# Short-Description: Switch to ondemand cpu governor (unless shift key is pressed)
# Description:
### END INIT INFO

. /lib/lsb/init-functions

case "$1" in
  start)
    log_daemon_msg "Checking if shift key is held down"
    timeout 1 thd --dump /dev/input/event* | grep -q "LEFTSHIFT\|RIGHTSHIFT"
    if [ $? -eq 0 ]; then
      printf " Yes. Not enabling ondemand scaling governor"
      log_end_msg 0
    else
      printf " No. Switching to ondemand scaling governor"
      SYS_CPUFREQ_GOVERNOR=/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor      if [ -e $SYS_CPUFREQ_GOVERNOR ]; t
hen
        echo "ondemand" > $SYS_CPUFREQ_GOVERNOR
        echo 50 > /sys/devices/system/cpu/cpufreq/ondemand/up_threshold
        echo 100000 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_rate
        echo 50 > /sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor
        echo 1 | sudo tee /sys/devices/system/cpu/cpufreq/ondemand/io_is_busy
      fi
      log_end_msg 0
    fi
    ;;
  *)
    echo "Usage: $0 start" >&2
    exit 3
    ;;
esac

-3

에코 "성능"| 스 도이 티 / sys / devices / system / cpu / cpu0 / cpufreq / scaling_governor


이것이 질문에 대한 답변이 될 수 있지만, 좋은 답변을 얻으려면 여기에 제공 한 것보다 많은 정보가 필요합니다. 또한 귀하의 답변에는 위의 답변이 아직 제공하지 않은 내용이 없습니다.
— Steve Robillard
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.