Scheduling do processador (agendamento)

Alguma placa, modem, monitor ou outro hardware/periférico seu não funcionou? Aqui é o seu lugar!

Moderador: Moderadores

Avatar do usuário
BIGBRUNO
BIG ADMINISTRADOR!
Mensagens: 4731
Registrado em: 24 Jun 2004, 04:20
Localização: DF/Brasil
Contato:

Scheduling do processador (agendamento)

Mensagem por BIGBRUNO » 09 Out 2017, 19:49

Os processadores originariamente tinham apenas um núcleo e capacidade de processar apenas uma informação por vez, agora com os multi cores, hyper threading e etc as coisas mudaram um pouco, mas a ideia base permanece, então vamos imaginar o processador antigo de um núcleo simples.

Então quando temos um processador funcionando e vários aplicativos abertos, se cria uma fila, cada aplicativo consome a CPU por alguns instantes e passa para o próximo da fila, essa alternância é para ser tão rápida que se torna imperceptível.

A grande complicação é que para alternar os processos, também se consome processamento, portanto se alternar demais perde capacidade de processamento, se alternar de menos, vai apresentar pequenas travadas no sistema, por exemplo, quando o processamento está muito alto e tentamos rolar a página e ela demora para rolar, alternar janelas demora, as vezes o som engasga, o mouse para de responder.

Existem muitas opções de configuração de schedulling no Linux, seja alternando a parte básica do gerenciador, que se chama CFS e pode ser substituído, por exemplo pelo BFS ou por uma grande quantidade de alternativas menos conhecidas, ou apenas alterando configurações do CFS.

Então para servidores, que geralmente rodam poucos aplicativos simultaneamente, o recomendado é instalar um kernel com configuração de que faça menos alternância de processo, também chamado de alta latência, isso faz aproveitar mais a capacidade de processamento.

Porém para desktop as vezes o usuário tem muitos aplicativos ao mesmo tempo, em outros momentos tem poucos, chegar a um equilíbrio é bem mais complicado, além das diferenças de hardware.

Então em geral temos o kernel padrão, com CFS, que tem uma alternância quase sempre mais lenta, mas que é inteligente e acelera essa alternância em alguns casos. O padrão BFS que é focado em alternância mais rápida, o que faz principalmente computadores mais antigos evitarem problemas como travamentos no mouse ou música picotando. Existe o kenel lowlatency, que tem similaridades com o BFS e ainda tem o kernel RT, que significa realtime, esse é o campeão na alternância, feito para evitar ao máximo todo tipo de atraso na interação com o sistema, usado também em alguns tipos de servidores específicos que necessitam de realtime, porém perde vários ciclos de processamento somente para fazer tantas alternâncias.

É um tipo de discussão muito feita na década passada, porém quase esquecida no uso de desktop atual, porém permanece bastante ativa nos fóruns sobre smartphone android, pois além de mudanças no desempenho, quanto mais alternância, maior o consumo de energia, o que nos celulares representa menos tempo de autonomia da bateria.

galactus51
Mini BIG
Mensagens: 3
Registrado em: 07 Out 2017, 21:55

Re: Scheduling do processador (agendamento)

Mensagem por galactus51 » 09 Out 2017, 22:17

Olá Bruno, tudo bem?

Este tópico vai servir para debate sobre o assunto ou vai servir para escolher os escalonadores do kernel do Big Linux 7.10?

Notei que apesar da grande variedade de kerneis disponíveis no repositórios do Big Linux 7.10, até o momento você preferiu ficar com o kernel 4.9 padrão do Deepin, mesmo com os kerneis Xanmod no repositório.

E esse debate pode ir longe pois não se trata só dos escalonadores, ainda tem uma infinidade de opções de configuração para "tunar" o kernel conforme a necessidade. Acho que o Fórum do Xanmod kernel é um dos melhores sobre isso. Por exemplo, agora se sabe que é melhor usar 500Mhz do que 1000Mhz para velocidade do processador, mesmo com muitos núcleos e Threads.

Avatar do usuário
BIGBRUNO
BIG ADMINISTRADOR!
Mensagens: 4731
Registrado em: 24 Jun 2004, 04:20
Localização: DF/Brasil
Contato:

Mensagem por BIGBRUNO » 09 Out 2017, 22:37

Foi primeiro para tirar algumas dúvidas que estavam tendo no grupo do telegram, mas podemos falar mais sobre coisas ligadas ao kernel.

Nos testes que fiz não consegui perceber vantagem no uso do kernel xanmod, por questão de estabilidade mantive o do deepin mesmo que é um kernel lts.

galactus51
Mini BIG
Mensagens: 3
Registrado em: 07 Out 2017, 21:55

Re: Scheduling do processador (agendamento)

Mensagem por galactus51 » 10 Out 2017, 08:51

Que máquinas você testou? Não percebeu vantagem em que?

Em todas as máquinas que testei o Xanmod deu diferença, para melhor ou para pior. Depende muito do hardware, principalmente por ele usar configurações mais agressivas não vai ficar bom em hardware fraco, mas se colocar em i5 ou i7 a diferença é notória. Principalmente com uma carga alta no sistema.

Avatar do usuário
BIGBRUNO
BIG ADMINISTRADOR!
Mensagens: 4731
Registrado em: 24 Jun 2004, 04:20
Localização: DF/Brasil
Contato:

Mensagem por BIGBRUNO » 10 Out 2017, 15:25

Testo em um i7 4790k e em um i3 2375M.

E pra mim a diferença foi imperceptível.

galactus51
Mini BIG
Mensagens: 3
Registrado em: 07 Out 2017, 21:55

Re: Scheduling do processador (agendamento)

Mensagem por galactus51 » 18 Out 2017, 09:43

Bom dia!

Notei a mudança do kernel para o Xanmod.

Notou diferença mais perceptível no sistema com ele?

Minha esposa usa o Deepin Linux e eu instalei o Xanmod pra ela. A diferença é bastante perceptível em relação ao kernel padrão dele.

Avatar do usuário
BIGBRUNO
BIG ADMINISTRADOR!
Mensagens: 4731
Registrado em: 24 Jun 2004, 04:20
Localização: DF/Brasil
Contato:

Re: Scheduling do processador (agendamento)

Mensagem por BIGBRUNO » 18 Out 2017, 16:31

galactus51 escreveu:
18 Out 2017, 09:43
Bom dia!

Notei a mudança do kernel para o Xanmod.

Notou diferença mais perceptível no sistema com ele?

Minha esposa usa o Deepin Linux e eu instalei o Xanmod pra ela. A diferença é bastante perceptível em relação ao kernel padrão dele.
O que ocorreu foi a adição do painel de instalação de kernel, nele o usuário pode optar por kernel xanmod, ubuntu ou deepin, mas por padrão permanece o kernel deepin.

Responder

Voltar para “Hardwares e Periféricos”

Quem está online

Usuários navegando neste fórum: Bing [Bot], Majestic-12 [Bot] e 5 visitantes