UNPKG

arch-wiki-md-repo

Version:

All arch-wiki articles in markdown format, updated every two days.

156 lines (100 loc) 6.21 kB
## Contents * [1 Sumário](#Sum.C3.A1rio) * [2 Instalação](#Instala.C3.A7.C3.A3o) * [3 Configuração](#Configura.C3.A7.C3.A3o) * [3.1 Controlador da Frequência do CPU](#Controlador_da_Frequ.C3.AAncia_do_CPU) * [3.2 Reguladores de Escalonamento](#Reguladores_de_Escalonamento) * [3.3 Modo daemon](#Modo_daemon) ## Sumário [cpufrequtils](https://www.archlinux.org/packages/?name=cpufrequtils) trata-se de um conjunto de utilitários projectados para assistir ao escalonamento da frequência do processador, tecnologia usada principalmente nos portáteis para permitir ao sistema operativo reduzir ou aumentar a frequência do processador consoante a necessidade actual, tornando o consumo energético mais eficiente. ## Instalação O pacote [cpufrequtils](https://www.archlinux.org/packages/?name=cpufrequtils) está disponível no repositório. [Official repositories (Português)](/index.php/Official_repositories_(Portugu%C3%AAs) "Official repositories (Português)") ## Configuração A configuração do escalonamento do CPU é um processo de 3 passos: 1. Carregar o controlador apropriado para o CPU 2. Carregar o regulador de frequência desejado 3. Configurar e carregar o daemon de escalonamento de frequência (opcional) ### Controlador da Frequência do CPU Para que o escalonamento de frequência funcione, o sistema operativo precisa de saber os limites do(s) teu(s) CPU(s). Para isso, temos de carregar um módulo do kernel que permita ler e gerir as espeficicações do(s) teu(s) CPU(s). Os portáteis e desktops mais modernos podem simplesmente usar o driver `acpi-cpufreq`, apesar de existirem outras opções: `p4-clockmod`, `powernow-k6`, `powernow-k7`, `powernow-k8` e `speedstep-centrino`. Para carregar o módulo do kernel manualmente: ``` # modprobe acpi-cpufreq ``` Para carregar automaticamente no arranque do sistema, adiciona o o driver respectivo ao array `MODULES` no ficheiro `/etc/rc.conf`. Por exemplo: ``` MODULES=( ***acpi-cpufreq*** vboxdrv fuse fglrx iwl3945 ... ) ``` Uma vez carregado do driver apropriado, podes ver informação detalhado do(s) teu(s) CPU(s) executando: ``` $ cpufreq-info ``` Exemplo de output de `cpufreq-info` de um Intel Core 2 Duo T7200: ``` cpufrequtils 002: cpufreq-info (C) Dominik Brodowski 2004-2006 Report errors and bugs to linux@brodo.de, please. analyzing CPU 0: driver: acpi-cpufreq CPUs which need to switch frequency at the same time: 0 1 hardware limits: 996 MHz - 1.99 GHz available frequency steps: 1.99 GHz, 1.66 GHz, 1.33 GHz, 996 MHz available cpufreq governors: ondemand, performance current policy: frequency should be within 996 MHz and 1.99 GHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 996 MHz. analyzing CPU 1: driver: acpi-cpufreq CPUs which need to switch frequency at the same time: 0 1 hardware limits: 996 MHz - 1.99 GHz available frequency steps: 1.99 GHz, 1.66 GHz, 1.33 GHz, 996 MHz available cpufreq governors: ondemand, performance current policy: frequency should be within 996 MHz and 1.99 GHz. The governor "ondemand" may decide which speed to use within this range. current CPU frequency is 996 MHz. ``` ### Reguladores de Escalonamento Os reguladores podem ser vistos como definições pré-configuradas de energia para o CPU. Estes reguladores têm de ser carregados como módulos do kernel para serem vistos por programas como o kpoewrsave ou o gnome-power-manager. Podes carregar tantos quantos quiseres, mas não pode haver mais do que um activos em simultâneo. Reguladores disponíveis: performance **(omissão)** O regulador performance está embutido no kernel e corre o(s) CPU(s) à frequẽncia máxima. cpufreq_ondemand *(recomendado)* Aumenta/diminui, de forma dinâmica, a velocidade do(s) CPU(s) baseado na necessidade do sistema. cpufreq_conservative Semelhante a 'ondemand', mas mais conservador (as mudanças de frequência não são tão repentinas, mas mais baseadas em médias de utilização). cpufreq_powersave Corre o(s) CPU(s) à velocidade mais baixa. cpufreq_userspace Velocidades definidas pelo utilizador. Adiciona os reguladores desejados ao array MODULES no ficheiro `/etc/rc.conf`: ``` MODULES=(acpi-cpufreq ***cpufreq_ondemand cpufreq_powersave*** vboxdrv fuse fglrx iwl3945 ... ) ``` Em alternativa, podes definir manualmente o regulador executando (como root) o comando `cpufreq-set`, mas o estado não será salvo quando o sistema for reiniciado. Por exemplo: ``` # cpufreq-set -g ondemand ``` Executa **`cpufreq-set --help`** ou **`man cpufreq-set`** para mais informação. ### Modo daemon O `cpufrequtils` também instala um daemon que te permite definir o regulador desejado para velocidades mínimas/máximas no arranque sem a necessidade de ferramentas como kpowersave. Esta solução e perfeita para quem corre ambientes de trabalho leves, como Openbox. Antes de iniciar o daemon, edita o ficheiro `/etc/conf.d/cpufreq` como root, seleccionando o regulador e definindo a velocidade mínima/máxima para o(s) teu(s) CPU(s), por exemplo: ``` #configuration for cpufreq control # valid governors: # ondemand, performance, powersave, # conservative, userspace governor="ondemand" # valid suffixes: Hz, kHz (default), MHz, GHz, THz min_freq="800MHz" max_freq="2GHz" ``` **Nota:** Os valores min/max exactos para o(s) teu(s) CPU(s) podem ser verificados executando `cpufreq-info` depois de carregado o módulo referido no início (e.g. `modprobe acpi-cpufreq`). Contudo, estes valores são opcionais. Podes omiti-los completamente eliminando ou comentando as linhas respectivas, que tudo funcionará automaticamente, uma vez que o kernel consegue detectar os valores necessários. Com o ficheiro de configuração tratado, podes agora iniciar o daemon com o seguinte comando: ``` # /etc/rc.d/cpufreq start ``` Para iniciar o daemon automaticamente no arranque, adiciona `cpufreq` ao array `DAEMONS` no ficheiro `/etc/rc.conf`, por exemplo: ``` DAEMONS=(syslog-ng hal ***cpufreq*** network netfs @alsa @crond @cupsd @fam @ntpd @sshd) ```