Linus Torvalds diz que acusações ao scheduler do Linux são "lixo puro" | SempreUpdate
Como você deve se lembrar há alguns dias, havia informações sobre o agendador do kernel do Linux causando problemas para os desenvolvedores de jogos do Google Stadia. O agendador era mesmo o culpado e, em particular, os spinlocks do Linux. Linus Torvalds já comentou o assunto e ele diz que o tal agendador do Linux é um "lixo puro".
E por que Linus Torvalds diz que as acusações contra o agendador do Linux são "Lixo puro"?
Em um debate na lista de discussão sobre os problemas relatados no kernel Linux, Linus Torvalds escreveu:
O post inteiro parece estar errado, e está medindo algo completamente diferente do que o autor pensa e afirma que está medindo. Primeiro, spinlocks só podem ser usados se você realmente sabe que não está sendo agendado enquanto os utiliza … Basicamente, lê o tempo antes de liberar o bloqueio e lê depois de adquiri-lo novamente, e afirma que o horário é o momento em que nenhum bloqueio foi mantido. O que é simplesmente insano, inútil e completamente errado. Isso é puro lixo, disse Linus referindo-se à acusação.
Linus acrescentou:
Então, qual é a solução para isso? Use uma trava onde você diz ao sistema que está esperando a trava e onde o encadeamento de desbloqueio informará quando terminar, para que o planejador possa realmente trabalhar com você, em vez de (aleatoriamente) trabalhar contra você. Repito: não use spinlocks no espaço do usuário, a menos que você realmente saiba o que está fazendo. E esteja ciente de que a probabilidade de você saber o que está fazendo é basicamente nula.
Veja o post na íntegra para obter detalhes técnicos muito mais interessantes.
Em outro post Linus continua argumentando que o bloqueio do desenvolvedor de jogos estava fundamentalmente errado. Em outras palavras, o kernel Linux não é o culpado, pelo menos na íntegra, da perspectiva de Linus Torvalds. Porém, como mostrado em outros casos, ainda há espaço para melhorias com o código do Linux kernel scheduler.
Então, para deixar claro o que realmente foi discutido, o criador do Linux descreve como "lixo" as acusações de que o kernel é o culpado pelos problemas de desempenho do Google Stadia.
As acusações foram feitas em pelo desenvolvedor Malte Skarupke em seu blog, no qual ele aponta para o planejador de processos do kernel Linux como responsável pelos problemas de desempenho mostrados pela Stadia.
Skarupke relata que, em seu local de trabalho, ele ouviu alguém "reclamando de alguns problemas misteriosos que surgiram ao tentar portar ' Rage 2 ' para o Google Stadia. A única coisa que esses problemas misteriosos tinham em comum era que todos usavam spinlocks ".