O BTRFS é copy on write (CoW), o que significa que (em geral) os blocos de dados são muito fragmentados (eu uso o ZFS, o mesmo problema), incluindo a tabela de arquivos.
Provavelmente, todos os setores que são modificados afetam toda uma unidade shingled, e isso explica por que você vê as terríveis performances: você está escrevendo, por exemplo, 10 blocos de dados (10x4 = 40 KiB)? devido à falta de localidade, você pode, de fato, ler 10x10 MiB (40 MiB) e depois escrever outros 40 MiB. Acrescente o fato de que há latência de busca em várias etapas do processo, e os desempenhos são mortos.
Provavelmente nenhuma solução, exceto a comutação para um drive não-SMR ou para um sistema de arquivos não-CoW.
Editar : informações adicionais link (sistemas de arquivos compatíveis com SMR)
link "O HGST está utilizando Bandas de 256MB em suas ofertas inaugurais. A Seagate indica que os tamanhos das bandas são ajustáveis para cargas de trabalho e aplicativos de drives personalizados "então você está lendo e escrevendo potencialmente 256 MiB por cada setor (4 KiB) que você modifica.