Existe uma maneira de descobrir o tamanho da página SSD no Linux / Unix? O que é "bloco físico" na saída do fdisk?

5

Em todos os lugares que eu li que internamente SSDs são estruturados em 4K ou maiores "páginas", que agrupados em "blocos" de cerca de 128-256 páginas ( 1 , 2 ). Os SSDs funcionam com essas páginas e blocos, "eles só podem apagar dados no nível do bloco" (assim, o bloco de páginas é chamado de "bloco de apagamento [NAND]"). E os blocos 512B para a partição são emulados (o que é feito por motivos legados).

Estou tentando aprender sobre SSDs, já que tenho alguns atrasos / congelamentos estranhos durante gravações no meu Sandisk U100 no laptop Samsung 9 np900x3c. E uma coisa útil seria descobrir corretamente quais páginas / blocos meu SSD tem?

Existe um utilitário ou arquivo /sys/... no Linux para determinar o tamanho da página SSD?

Ou "a unidade e pesquisando os números de peça nos chips NAND podem ser necessários", como em o comentário ?

Pesquisando no meu Sandisk SSD Não consigo encontrar uma folha de dados / especificação adequada. Mas Sandisk e pessoas mencionam" leituras / gravações aleatórias de 4K ". Isso significa que o disco tem páginas 4K?

Além disso, fdisk mostra o tamanho do setor (físico e lógico) e o E / S 512 byte:

Disk /dev/sda: 128.0 GB, 128035676160 bytes
255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x4b914713

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048    50331647    25164800   83  Linux
/dev/sda2        50331648   239583231    94625792   83  Linux
/dev/sda4       239583232   250068991     5242880   82  Linux swap / Solaris

Qual é o tamanho do setor "físico" aqui? Não parece ser o parâmetro da própria unidade SSD, já que todos dizem que as páginas SSD são 4K +. É o parâmetro emulado para o disco? E "lógico" é o tamanho do setor para a partição? Além disso, qual é o tamanho de E / S?

PS

Esta questão é provavelmente a mesma que este para flash USB - a resposta está faltando o ponto lá, man fsstat says fsstat displays the details associated with a file system e a questão é sobre o próprio disco. Meu post tem mais detalhes, talvez atraia melhores respostas?

    
por xealits 04.01.2017 / 14:36

2 respostas

5
  • O tamanho do bloco físico relatado por fdisk é o tamanho do bloco físico informado pelo disco quando solicitado. Raramente tem qualquer relação com páginas SSD ou apagar blocos.

  • 4 As leituras / gravações do KiB são uma medida comum do desempenho de E / S, representando operações de E / S "pequenas".

  • Não existe uma maneira padrão para um SSD reportar seu tamanho de página ou apagar tamanho de bloco. Poucos se algum fabricante os reportar nas fichas técnicas. (Porque eles podem mudar durante o tempo de vida de um SKU, por exemplo, devido à mudança de fornecedores.) Há um whitepaper da Intel que sugere que o alinhamento de 4 KiB é suficiente.

  • Para uso prático, basta alinhar todas as suas estruturas de dados (partições, carga útil de contêineres LUKS, volumes lógicos LVM) para limites de 1 ou 2 MiB. É um SSD depois de tudo - ele é projetado para lidar com sistemas de arquivos comuns, como o NTFS (que usa unidades de alocação de 4 KiB). Se o Windows considerar que o alinhamento de partições para 1 MiB é suficiente, você pode apostar que qualquer fabricante de SSD garantirá que seus produtos funcionem bem com essa configuração.

  • Melhor deixar cerca de 5% a 10% de espaço não alocado fora de qualquer partição. Ter um espaço superprovisionado é de grande ajuda para os SSDs manterem seu desempenho no tempo.

por 04.01.2017 / 14:50
4

smartctl (disponível em smartmontools ) deve fazer isso por você.

    
por 04.01.2017 / 14:45

Tags