Otimizações foram preparadas para o núcleo Linux, aumentando o desempenho dos escalonadores de entrada/saída.

Jens Axboe, criador do io_uring e dos escalonadores de I/O CFQ, Deadline e Noop, continuou seus experimentos de otimização de I/O no núcleo do Linux. Desta vez, ele se concentrou nos escalonadores de I/O BFQ e mq-deadline, que se mostraram um gargalo pelo menos no caso de unidades NVMe de alta velocidade.

O estudo da situação revelou que uma das causas principais da performance não otimizada dos subsistemas de escalonadores de I/O foram os problemas com bloqueios concorrentes (‘lock contention’, tentativa de obter uma bloqueio mantido por outro thread). Graças a medidas voltadas para a redução da concorrência no gerenciamento de bloqueios, como a serialização do despacho e a inserção de solicitações, a velocidade dos escalonadores aumentou em várias situações (em IOPS).

Nos testes do escalonador BFQ com a ferramenta fio, o desempenho aumentou de 567K para 1551K operações de I/O por segundo, enquanto a concorrência de bloqueios caiu de 96% para 30%. No caso do mq-deadline, o desempenho após a aplicação dos patches propostos ao usar um dispositivo NVMe aumentou de 1070K para 2560K operações de I/O por segundo (IOPS), e a concorrência de bloqueios reduziu de 94% para 23%.

Fonte: opennet.ru

Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS 🔥 Compre hospedagem confiável para sites com proteção contra DDoS, servidores VPS VDS | ProHoster