O velho Linus Torvalds está de volta

Linus Torvalds critica colaborador do kernel do Google
Linus Torvalds

O líder do desenvolvimento do Linux, Linus Torvalds, acha que hoje é “mais autoconsciente” e está “tentando ser menos enfático” após sua breve ausência de direcionar os desenvolvedores do kernel Linux por causa de sua linguagem abusiva na lista de discussão do kernel Linux. Porém, para ser fiel a si, ele ainda não é necessariamente diplomático em suas comunicações com os mantenedores. Portanto, O velho Linus Torvalds está de volta e descumpriu, ao que parece o Código de Conduta que havia sido estabelecido.

Linus retoma uso de palavras mais duras

O velho Linus Torvalds está de volta
Dave Chinner

A explosão pós-hiatus de Torvalds foi dirigida a Dave Chinner, um programador australiano que mantém o sistema de arquivos XFS criado pela Silicon Graphics (SGI) suportado por muitas distribuições Linux .

Besteira, Dave, disse Torvalds a Chinner em uma lista de discussão.

O comentário de Chinner que provocou a repreensão de Torvalds foi que “o cache de páginas ainda está longe, muito mais lento que IO direto” – um problema que Chinner acha que se tornará mais aparente com a chegada da nova  especificação de interface de placa mãe conhecida como Peripheral Express Interconnect. Express (PCIe) versão 4.0. 

Chinner acredita que o cache de páginas pode ser necessário para suportar o armazenamento baseado em disco. Porém, há um custo de desempenho.

Dito isso, o cache de páginas ainda está longe, muito mais lento do que o IO direto, e a diferença está ficando cada vez maior à medida que os SSDs nvme ficam cada vez mais rápidos. Os SSDs PCIe 4 vão tornar isso ainda mais óbvio – está chegando o ponto em que a única razão para ter um cache de página é suportar mmap () e sistemas baratos com armazenamento de ferrugem girando, escreveu Chinner.

Termo ‘cache’ gera desavenças

No entanto, o criador do Linux, nascido na Finlândia, disse ao australiano para não vir com “raw prawn” uma gíria australiana que significa: “Não me trate como um idiota!”

Você já fez essa afirmação antes, e já foi uma besteira grande”, escreveu Torvalds. Por que você continua fazendo este argumento lixo?

De acordo com Torvalds, o cache de páginas serve seu propósito correto como…um cache.

A palavra chave no nome do ‘ ‘page cache’ é ‘cache’, escreveu Torvalds.

Por que a treta?

Chinner vinha debatendo o papel do cache de páginas em um e-mail aberto, comentando que “o cache de páginas simplesmente não é projetado para permitir que operações de alcance atômico sejam executadas” e que ele e outros desenvolvedores não conseguiram “arrastá-lo” para fora dos anos 80.

Escrevemos o código fs /iomap.c para poder fazer mapeamento de extensão baseado em intervalo para IOs em vez do mapeamento de bloco página por página. É horrível e ineficiente que o código genérico de cache de página faz – que nos deu um aumento de 30% taxa de transferência de E / S armazenada porque só fazemos uma única pesquisa de mapeamento por E / S, em vez de uma por página …, escreveu Chinner.

Torvalds não comprou o argumento e disse que qualquer um que estivesse vendendo essa ideia era “incompetente”.

Caches funcionam, Dave. Qualquer um que pense que caches não funcionam é incompetente. 99% de todos os acessos ao sistema de arquivos são armazenados em cache, e eles nunca fazem nenhum IO, e o cache da página os manipula maravilhosamente, escreveu Torvalds. Quando você diz que o cache de páginas é mais lento do que o IO direto, é porque você nem vê ou se preocupa com o * fast *. Você só se envolve quando há um IO real a ser feito.

Chinner, em resposta a Torvalds lembrou ao chefão do Linux sobre seu compromisso com a “discussão civil” e tentando criar um ambiente profissional para os desenvolvedores do kernel:

Sim, eles fazem, respondeu Chinner. Eu vejo muitos casos em que o cache de páginas funciona muito bem, porque ainda é mais rápido do que a maioria do armazenamento. Contudo, não foi isso que eu disse.

Chinner disse que Torvalds não pediu que ele esclarecesse a que ele estava se referindo na declaração citada por Torvalds.

Você tomou uma única declaração que fiz de um enorme e-mail sobre complexidades ao lidar com a concorrência de IO, o cache de página e falhas arquitetônicas no código existente, citou fora de contexto, fabricou um contexto completamente novo e começou a reclamar que eu não sabia nada sobre como os caches ou o cache de páginas funcionam, reclamou Chinner.

Isso não é muito profissional, porém, infelizmente, uma resposta inteiramente previsível e esperada. Linus, ninguém pode falar sobre IO direto sem você gritar e jogar todos os seus brinquedos fora do berço. Se você não pode ser civilizado ou se encontra escrevendo algum “Uma explicação condescendente para o caching 101” para alguém que passou os últimos 15 anos trabalhando com sistemas de arquivos e caches, então é melhor não dizer nada.

Fonte