Por que os planejadores BFQ e BFS não estão incluídos no kernel oficial do Ubuntu?

24

Ontem eu li um artigo sobre a aceleração do Ubuntu. Uma sugestão no artigo foi substituir o agendador de E / S padrão por BFQ , que, de acordo com o artigo é otimizado para desempenho interativo.

Um artigo similar aponta as vantagens em desempenho da área de trabalho ao usar o agendador de processos BFS .

Ambos os agendadores são incluídos em vários conjuntos de atualizações e núcleos alternativos que são conhecidos por aumentar a interatividade e o desempenho da área de trabalho (por exemplo, linux-pf , liquorix- kernel e linux-ck ).

Então, minha pergunta é : como o Ubuntu está se esforçando para obter uma ótima experiência de desktop, como é que as compilações não-servidor do sistema operacional não vêm com esses agendadores quando eles provaram ser melhores em termos de desempenho interativo?

Mais informações sobre os dois agendadores podem ser encontradas aqui:

por Musto 01.09.2013 / 08:51

1 resposta

14

Resposta rápida:

  1. Ambos os agendadores não funcionam de todo ou funcionam bem para todas as plataformas suportadas Linux (frequência, arquitetura, consumo de recursos, ...)
  2. Parece que Torvalds simplesmente não quer mais suportar um agendador

Explicações:

Como os agendadores são iniciativas isoladas (o que não é suportado pelo kernel), o simples fato de incluí-lo significa concentrar as pessoas nesses agendadores (patch de segurança, patch de manutenção, acelerar a adaptação aos novos releases do kernel, ... ). Significa investimento financeiro para um projeto que ainda não tem certeza sobre sua existência no futuro.

Eles ainda são muito jovens. O melhor exemplo é o que é explicado no FAQ do BFS em "Quão escalável é?" .

Por trás das linhas desta parte nos diz que o BFS tem problemas de desempenho quando você tem muita CPU lógica. Este ponto único leva para os servidores e PC high-end (o número de 16 é dado por isso significa que um simples servidor de 1000 USD teria problemas de desempenho com isso). Então você exclui o Ubuntu Server desse patch, você também exclui as configurações do bi físico da CPU que agora alcançam facilmente esse número.

O Ubuntu não consegue alcançar massas se usar outro agendador. A escalabilidade ganha em relação ao desempenho.

Como sempre, com muitos "se" ...:

  • Se todo usuário do Ubuntu é um usuário de desktop
  • Se todas as máquinas de cada usuário do Ubuntu forem o computador correto para os agendadores

Na verdade, a melhor abordagem é a atual: permitir que o usuário aplique os agendadores que quiserem, se tiverem hardware e estiverem interessados nele.

Aplicá-lo pode funcionar melhor para alguns durante algum tempo (porque, como eu disse, a escalabilidade é um grande problema e o futuro aumentará o número de processadores). Mas vai dar sérios problemas aos outros.

Fontes extras:

O link pode não ficar para sempre, aqui está um artigo que eu encontrei sobre o BFS em h-online . É o mais oficial que encontrei. No entanto, se você procurar no Google, poderá encontrar a declaração real. Eu acho que pode estar no kerneltrap.

Veja o terceiro parágrafo do título de fênix do artigo. Vou citar aqui caso o link morra:

  

Atualmente, a integração do BFS no desenvolvimento principal do Linux   filial parece muito improvável, como Linus Torvalds já fez isso   claro que ele não quer manter vários agendadores. Dentro   Além disso, os distribuidores Linux tendem a preferir uma única imagem do kernel   que alcança um ótimo desempenho em uma ampla variedade de sistemas sem   requerendo configuração especial. Pode ser que os desenvolvedores do CFS   melhorará seu escalonador nas áreas cobertas pelo BFS - um bônus para   a comunidade de usuários.

Linus Torvalds Discussão sobre isso.

    
por Antoine Rodriguez 06.10.2013 / 00:11

Tags