O fenômeno 'Write cliff' só acontece em discos SSD?

O fenômeno 'Write cliff' só acontece em discos SSD?

Em primeiro lugar, sou novo em discos, só conheço o básico. Estou tentando melhorar o desempenho de um software com E/S pesada e preciso entender como meus discos SAS funcionam em termos de velocidade de leitura e gravação.

Fiz testes básicos de leitura/gravação e notei o que parece ser um 'Precipício de gravação'. Os discos têm vários TB de capacidade de armazenamento e a máquina à qual estão conectados possui 630 GB de RAM. Meus testes mostram que após aproximadamente 200 GB de gravação intensiva, a velocidade de gravação cai de aproximadamente 2.000 MBps para aproximadamente 300 MBps.

Acho que existe algum tipo de buffer ou cache grande que fica cheio em algum momento e isso causa diminuição na velocidade de gravação. Como isso realmente funciona? Como posso calcular o tamanho dele? É configurável?

Responder1

300 M/s é uma velocidade de gravação perfeitamente normal para um array SAS conectado diretamente. Tudo acima disso é um artefato de cache do sistema operacional.

É difícil dizer sem saber o que seu aplicativo faz, mas em muitos casos, usar o O_DIRECTsinalizador ao abrir um arquivo proporcionará um comportamento mais realista: faz com que o sistema ignore o cache e vá diretamente para o controlador de disco, removendo assim os artefatos de cache e o penhasco de escrita.

É claro que isso tem o custo de reduzir o desempenho de gravação ao nível real do seu hardware de E/S - mas esse é exatamente o ponto: você não pode gravar mais rápido do que o permitido pelo seu subsistema de disco de maneira sustentável: o cache ajudará muito com cargas de gravação intermitentes, mas não consegue superar as limitações do hardware subjacente para sempre.

informação relacionada