Como forçaria o Debian a usar o tamanho do setor físico em um disco rígido?

9

Acabei de comprar algumas novas unidades WD de 3 TB. Eles possuem setores físicos de 4k, mas há algum tipo de camada que fornece setores lógicos de 512B (consulte a tabela de partições abaixo).

Para tentar obter mais velocidade dos meus discos rígidos, gostaria de me livrar dessa camada lógica e realmente usar os setores físicos de 4k. No entanto, não consigo descobrir como fazer isso (ou mesmo se possível) nas páginas de manual do fdisk e parted, ou na pesquisa no Google. Alguém sabe como isso pode ser feito?

Por que isso é relevante, esta página demonstra que o alinhamento adequado dos setores já pode fazer até 25% de diferença de velocidade para leituras e mais de 2500% para gravações em alguns casos! Livrar-se dos setores lógicos em favor dos setores físicos deve melhorar ainda mais a velocidade. Obrigado!

$ parted /dev/sdc
GNU Parted 2.3
Using /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: ATA WDC WD30EZRX-00M (scsi)
Disk /dev/sdc: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  3001GB  3001GB               zfs
 9      3001GB  3001GB  8389kB

PS: Eu não ligo para os dados nas unidades, estava apenas brincando com diferentes sistemas de arquivos. Além disso, esta é a primeira vez que publico aqui, por isso, informe-me se minhas postagens devem ser formatadas de forma diferente etc.

Novo sysadmin
fonte

Respostas:

5

De acordo com uma entrevista com um representante da Western Digital publicada em http://www.techarp.com/showarticle.aspx?artno=734, não há opção para desativar a emulação 512e nas atuais unidades de formato avançado.

[...] a Western Digital oferecerá atualizações de firmware que converterão as unidades Advanced Format atuais em execução no modo de emulação, para o formato nativo?

Infelizmente não. As unidades de formato avançado atuais não podem ser convertidas para execução no formato nativo por meio de uma atualização de firmware

Gurken Papst
fonte
1
Se não houver nenhuma maneira de fazer isso no nível do disco, que tal no nível do sistema operacional. Ou seja, diga ao debian para gravar apenas no disco em blocos de 4k. Ou, devido à maneira como o disco funciona, isso não melhoraria realmente as velocidades de leitura / gravação? Obrigado!
Novo sysadmin
Pergunta interessante. Se não houvesse cache de gravação, haveria um grande impacto, como ao escrever pequenos pedaços na memória flash. Mas como existem alguns MB de cache na unidade de disco, acho que isso não será um problema. Se houver uma gravação seqüencial em setores lógicos consecutivos, a unidade poderá atrasar a gravação no disco até que oito setores lógicos tenham sido gravados. Embora a emulação do setor lógico seja desnecessária no seu caso, provavelmente é rápido o suficiente para não diminuir a velocidade da gravação.
Gurken Papst
Hmm. Isso parece lógico, só então por que a página que eu referenciei na postagem original mostraria reduções significativas no desempenho de gravação para partições desalinhadas (isto é, aquelas que iniciam em um setor lógico em vez de físico), mesmo para arquivos grandes. Se o que você está sugerindo fosse a história toda, eu assumiria que o cache também lidaria com isso, mas claramente não ........
Novo sysadmin
Como existem diferenças significativas entre os sistemas de arquivos, meu palpite é que o Reiser usa um padrão bastante complexo e / ou tamanho de bloco adverso ao escrever e o algoritmo de cache não é capaz de eliminar várias gravações no mesmo setor enquanto o faz para ext4. Embora isso seja apenas um palpite, há outro ponto por que a emulação 512e não deve ser penosa em partições alinhadas: se fosse, os fabricantes provavelmente já teriam implementado uma opção para ativar a emulação, já que isso seria trivial e a concorrência forçaria a fazê-lo. .
precisa
1
Esta resposta ainda é válida em 2017?
Fabian Thommen