Como escolher o melhor escalonador de CPU para melhorar o desempenho da máquina

Um "cpu governor" ou escalonador de CPU é um recurso do Kernel usado para ajustar - dinamicamente ou não - a frequência da CPU com base na carga de trabalho, visando um equilíbrio entre desempenho e eficiência energética. Nesse artigo vamos conhecer os mais usados no kernel Linux e ver qual a melhor opção de uso para a sua máquina.

[ Hits: 2.013 ]

Por: Sidnei Serra em 30/05/2024 | Blog: https://www.youtube.com/channel/UCRgokKtNlttdmg2RJEa2VYw


O que é um escalonador de CPU



Como foi dito no título do artigo, um escalonador de CPU (CPU Scalling) é um recurso do kernel Linux que visa adequar o uso da CPU em relação à demanda de uso do sistema e levando em conta também o consumo de energia. Basicamente cada interface gráfica tem o seu sistema de escolha mas, no Gnome, não há nativamente um modo de escolha direta do que usar, ficando no padrão "schedutil" de escalonador. Para saber os escalonadores disponíveis, digite no Terminal:

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

Deverá aparecer algo assim:

conservative ondemand userspace powersave performance schedutil

Cada um dessas opções tem uma funcionalidade e podem impactar no desempenho geral da máquina. Vamos às explicações:

1. Conservative

Descrição: Ajusta a frequência da CPU gradualmente em pequenos passos.
Comportamento: Aumenta ou diminui a frequência lentamente, o que é útil para economizar energia quando as mudanças de carga não são súbitas.
Uso: Bom para laptops e dispositivos móveis onde a eficiência energética é importante, mas ainda se deseja desempenho razoável.

2. Ondemand

Descrição: Ajusta a frequência da CPU rapidamente com base na carga atual.
Comportamento: Aumenta a frequência da CPU para o máximo quando a carga ultrapassa um certo limite e reduz a frequência quando a carga diminui.
Uso: Adequado para servidores e desktops onde é necessário um bom equilíbrio entre desempenho e economia de energia.

3. Userspace

Descrição: Permite que programas no espaço do usuário definam a frequência da CPU.
Comportamento: Oferece controle total ao usuário ou a programas para definir a frequência da CPU conforme necessário.
Uso: Utilizado principalmente em sistemas embarcados ou em configurações específicas onde um programa personalizado controla o desempenho da CPU.

4. Powersave

Descrição: Define a frequência da CPU para o mínimo permitido.
Comportamento: Mantém a CPU na frequência mais baixa possível, priorizando a economia de energia em detrimento do desempenho.
Uso: Ideal para laptops e dispositivos móveis quando a conservação de energia é crucial, como em situações de bateria baixa.

5. Performance

Descrição: Define a frequência da CPU para o máximo permitido.
Comportamento: Mantém a CPU na frequência mais alta possível para maximizar o desempenho.
Uso: Usado em desktops e servidores onde o desempenho é prioritário, e a economia de energia é menos importante.

6. Schedutil

Descrição: Ajusta a frequência da CPU com base nas informações do escalonador (scheduler) do kernel.
Comportamento: Utiliza o scheduler do kernel para ajustar dinamicamente a frequência da CPU de acordo com a carga de trabalho atual, proporcionando um equilíbrio eficiente entre desempenho e economia de energia.
Uso: Moderno e eficiente, adequado para uma ampla gama de dispositivos, proporcionando um bom equilíbrio entre economia de energia e desempenho responsivo.


Cada modo de energia tem o seu funcionamento mais adequado de acordo com a demanda do sistema. Abaixo o uso mais adequado de acordo com o dispositivo.

Linux: Como escolher o melhor escalonador de CPU para melhorar o desempenho da máquina

No geral em termos de uso, a opção "schedutil" é a adequada para a maioria das situações, onde o kernel aumenta e diminui constantemente a velocidade do processador frente às demandas de desempenho do sistema. Para saber qual o modo ativo da sua máquina, digite o comando abaixo:

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

Se estiver no modo "schedutil" deverá aparecer algo assim:

schedutil
schedutil
schedutil
schedutil

O número de linhas vai depender de quantos núcleos o seu processador tem. Nesse exemplo, são 4 núcleos.


    Próxima página

Páginas do artigo
   1. O que é um escalonador de CPU
   2. Habilitando novas "performances" no CPU Scalling
Outros artigos deste autor

Crie alias para as tarefas que possuam longas linhas de comando - bash e zsh

Criando um gateway de internet com o Debian

Deixando o Gnome bonitão em qualquer distribuição

Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop

Como ativar o módulo de cancelamento de ruído no Pipewire

Leitura recomendada

Como Redimensionar o Guest à Janela no KVM com Virt-Manager

Sound Blaster 128 PCI Ensonic - Modulo es1371

Configurando um Cluster de Tomcat com Balanceamento de Carga

Iniciando seu Linux através do NTLoader do Windows 2000/XP

Slackware no notebook Toshiba Satellite M55-S3262

  
Comentários
[1] Comentário enviado por elton.linux em 02/06/2024 - 16:38h

Mudou, desde já, a inicialização brutalmente, muito mais rápida!
Vamos usar essa configuração for ever... fuck you cooler!

[2] Comentário enviado por raulgrangeiro em 09/07/2024 - 09:22h

Ótima explicação, vou testar aqui rsrs.

Deus abençoe!


Creia no Senhor Jesus Cristo e serás salvo!

[3] Comentário enviado por maurixnovatrento em 20/07/2024 - 14:59h

Excelente artigo.
______________________________________________________________________
Inscreva-se no meu Canal: https://www.youtube.com/@LinuxDicasPro
Repositório GitHub do Canal: https://github.com/LinuxDicasPro
Grupo do Telegram: https://t.me/LinuxDicasPro
Meu GitHub Pessoal: https://github.com/mxnt10


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts