SSDs perdem performance quando a sua ocupação atinge valores perto do máximo. Em que é que isso pode afectar as consolas?

Há quem nunca se tenha apercebido disso, mas os Solid State Drives ou SSDs perdem performance de uma forma que pode chegar a ser dramática quando alcançam uma ocupação perto do seu máximo. Neste artigo vamos abordar esse tema e explicar o porquê de tal acontecer, questionando em que é que isso pode afectar as consolas.

Quem tem um SSD poderá já ter notado que quando o mesmo está muito cheio, ele perde bastante performance. Isto é notório ao abrirem-se programas ou copiar ficheiros, situações que vão passar a demorar bastante mais do que normal. Outras consequências serão paragens no sistema causadas pelo SSD.

Bem, os SSDs foram pensados para ser rápidos, e para transferir dados de forma rápida. Basicamente são memórias, e como tal as suas performances são bastante superiores aos discos tradicionais. Mas as memorias NAND possuem um funcionamento curioso que cria esta situação.

A questão é que, independentemente se ser um disco SSD ou um HDD classico, o funcionamento é semelhante. Quando mandamos dados para serem gravados, o SSD procura por blocos vazios onde possa armazenar os dados. Quando o bloco está vazio o processo de escrita é bastante rápido. Mas se eles não estiverem vazios, eles necessitam de ser esvaziados antes de se poder proceder á escrita. E este processo de escrita, sendo muito mais lento que a leitura, vai afectar a performance do sistema.

Ora o que acontece é que os blocos do SSD são de 256 KB, mas a escrita acontece com uma paginação de blocos de 4KB a 8 KB. E o que acontece é que sempre que não enchermos um desses blocos de 256, o que sobra vai ficar por usar, mas não pode ser usado para outras coisas, a não ser que o ficheiro seja apagado.



Por exemplo, ao gravarmos um ficheiro de 260 KB, o que vai acontecer é que vamos usar dois blocos de 256 KB, um que ficará efectivamente cheio, e outro no qual os 256 KB ficam todos ocupados, mas onde na realidade apenas estão escritos 4 KB de dados.

Ora este tipo de falsa ocupação, vai gastar uma percentagem de espaço no disco que à partida soa a perdida.

Mas na realidade não! Apesar de o bloco estar ocupado, o SSD vai reportar o uso de apenas aquilo que efectivamente está usado. Ora isto quer dizer que a partir de uma determinada altura no uso da vida do SSD, vamos ter espaço livre, mas todos os blocos ocupados. E o espaço livre existente é apenas e exclusivamente esse!

Mas esse espaço se é reportado como livre, pode ser usado? Sim, pode!

Mas para ele ser usado, torna-se necessário ler o conteúdo desse bloco para a cache, juntar parte dos novos dados a gravar, apagar o bloco existente, e re-escrever o mesmo, desta vez com o misto dos dados de ambos os ficheiros, ocupando o sector na sua totalidade.

Ora este processo é algo que, por ser moroso, e cortar performances, não é feito por standard pelo SSD, que recorre apenas a ele quando não tem mais blocos livres para usar.



Uma das formas de se superar este problema passa pela reserva de uma determinada percentagem do disco (o chamado “overprovisioning” ou OP), que o utilizador não vê e é reportado como não alocado. Essa percentagem existe para garantir que o SSD pode ser cheio quase exclusivamente com dados, sem a necessidade de se recorrer ao aglomerar de dados.

Imaginem um exemplo, de um disco de 512 GB, que vos é vendido como sendo de 480 GB. Ele na realidade é de 512, mas o utilizador só terá acesso a 480. Basicamente o disco tem e trabalha com 512 GB, mas como os blocos não cheios não enchem, ele não reporta o espaço restante como livre. E dessa forma o disco fica limitado a uma menor capacidade.

Eis um exemplo no PC:

Isto rouba espaço ao disco, mas garante que a performance nunca se altera.



Naturalmente a ocupação a que o disco poderá ficar sem blocos livres vai depender de muita coisa, mas a performance de um SSD pode começar a degradar a partir dos 50% de ocupação. Mas este valor é para um cenário de pior caso possível.

Um dos motivos pelos quais actualmente os discos estão a ser referidos em Gibibytes em vez de Gigabytes, prende-se com o Overprovisioning. Esta simples mudança da unidade de medida fornece imediatamente um overprovisioning de 7,37%. O motivo é que um gigabyte (GB) são (na unidade usada pelos fabricantes de discos) 1,000,000,000 bytes, e um gibibyte (GiB) é exactamente 2^30 = 1,073,741,824 bytes, ou 7.37% mais que um GB.

Assim, um disco com 128 GiB, reserva imediatamente 7,37% de espaço para OP, ficando com 128 GB livres. Se depois reservar ainda 28% adicionais, ele fica com 100 GB livres. Eis isso em gráfico:

Em que é que isto pode afectar as consolas?

Bem, na realidade, aparentemente muito pouco! As consolas basicamente usarão os seus SSDs para leitura. No entanto, a Microsoft mostrou já algumas características como o mudança entre jogos, em que o SSD procede a escritas de vários GB, sempre que muda entre os jogos (uma situação aliás pouco recomendada dado o desgaste do SSD, mas a Microsoft não parece ter-se mostrado muito preocupada com isso).



Esta característica, para além de obrigar a reservar um determinado espaço do disco, ainda não referenciado, tem como base de funcionamento as escritas. Ao mudarmos de um jogo para o outro, vários GB de dados são escritos no disco, e os GB relativos ao outro jogo são lidos. Tudo isto em apenas alguns segundos. Não será que a consola pode sair prejudicada disto?

Tudo vai depender… porque se a gravação for realizada de forma sequencial usando uma percentagem de blocos constante, e num espaço do disco previamente reservado, com dimensões de ficheiros fixos e independentes dos dados reais do jogo, ela não sofrerá, pois como o gráfico que se segue mostra, numa gravação sequencial, a velocidade é independente da percentagem de espaço reservada para OP.

Mas caso isso não aconteça, e estas gravações sejam feitas nos espaços vazios do SSD, a velocidade de gravação pode ser severamente afectada pela inexistência de OP.



Isto quer dizer que, dependendo de esta questão estar ou não devidamente pensada, as consolas poderão passar ao lado da necessidade de OP. Mas se o seu funcionamento for muito dependente de escritas pensadas em simultâneo com a optimização do espaço do disco existente, a inexistência do OP pode vir a causas sérios problemas à performance.

No entanto, dado que as consolas irão maioritariamente ler dados, os 7,37% de reserva serão o que estará certamente a uso, pois os fabricantes por norma usam 7.37% para leitura intensa, com os restantes 28% para situações de escrita intensa.

 



30 Comentários
Antigos
Recentes
Inline Feedbacks
Ver todos os comentários
Nuno Sousa
Nuno Sousa
20 de Setembro de 2020 11:35

Bom dia Mário

Excelente artigo. Eu sei que sera uma pergunta muito vaga, mas . . . a estranha capacidade do ssd da ps5 nao podera significar uma reserva de blocos constantes ja reservada no op?

Afinal a ps5 tambem permite a navegacao rapida entre jogos.

Acreditando que ambas tomaram em consideracao esse facto, nao estaremos aqui numa situacao em que uma companhia informa o liquido enquanto outra o valor bruto de capacidade do seu ssd por questoes de marketing?

Obrigado

Hiago
Hiago
20 de Setembro de 2020 12:06

Meio OFF

Estou querendo expandir o armazenamento do meu PS4 Pro cuh7015b, dos primeiros modelos que saiu e já ouvi falar que esse faz mais barulho porém esquenta menos que os modelos mais novos e isso será importante nos pontos que coloquei logo abaixo. Mas enfim, eu estou querendo trocar o HD de 1tb para um de 2tb. Queria pedir a opinião de vocês para saber qual modelo ou marca de HDD (já descartei SDD, pelos preços elevados) deveria escolher?

Primeiro ponto: tem a ver com essa questão de superaquecimento, já que eu encotrei alguns HDs de 2tb de 7200rpm com o preço muito bom, mas como dizem que esse tipo de HD pode causar superaquecimento no PS4 e que a Sony não recomenda. Queria saber isso é verdade ou um exagero?

Segundo ponto: Pensei em um HD hibrido, porém como no próprio artigo do Mário demonstra como o Xbox Series pode desgastar a vida útil do seu SSD. Agora quando falamos de HDs hibridos, eu particularmente não encontrei em nenhum lugar alguma explicação sobre a vida últil desse tipo de SSHD, já que ele possui apenas 8gb de SSD. No caso pela forma como funciona, essa memória não será rapidamente desgastada? Também vi alguns comparativos que esse tipo de HD tinha vantagem apenas em programas ou no caso jogos que você executa várias vezes, mas em outros casos ele perdia (mesmo que dentro de uma margem de erro) para HDs de 5400rpm comuns, então parece que não compensa.

Se alguém tiver tempo de responder e saber melhor sobre esse pontos eu agradeço 🙂

Last edited 3 anos atrás by Hiago
bruno
bruno
Responder a  Mário Armão Ferreira
21 de Setembro de 2020 8:19

Aproveitando a tua questao… alguem sabe de um disco interno para PS4 com mais de 2 Tb?

(Atencao que a altura tem que ser inferior a 9.5 mm, ou nao cabe)

Neste momento estou a volta com instalacoes e desinstalacoese gostava de evitar isso.

Ja procurei e nao consigo encontrar. Alias a unica escolha e um SSD de 4 Tb Samsung (nao M.2) que custa tanto quanto uma consola…

Hiago
Hiago
Responder a  Mário Armão Ferreira
20 de Setembro de 2020 12:37

É questão de gosto pessoal, quase como um TOC haha.. gosto das coisas organizadas e um HD “pendurado” com um cabo para fora me incomada bastante, então prefiro optar pela substituição do HD interno mesmo. Só não sei se optar por um HD de 7200rpm poderia acarretar em algum problema futuro para o meu PS4. Muitos foruns que li sobre essa discussão são de 5 anos atrás, creio que a tecnologia está sempre evoluindo, será que os novos HDs de 7200rpm ainda podem esquentar tanto assim comparados com os de 5400rpm?

Last edited 3 anos atrás by Hiago
Rui
Rui
Responder a  Mário Armão Ferreira
20 de Setembro de 2020 14:38

Uma pergunta teórica sr mário, eu tenho uma one X e no futuro como já o disse aqui vou vender a one X e comprar ambas as novas consolas e ambas tem o ssd e poderei satisfazer a minha curiosidade.

A minha pergunta é, no jogo dayz que eu joguei mesmo muito o jogo tem muitos bugs e tudo mais mas a performance em certos sitios é lamentavel, digamos que o dayz a ser jogado na one X é jogavel, e eu suportei os bugs e performance menos boa em certas zonas, a pergunta é, se eu tivesse um ssd na one X ajudaria muito ou não? E a força bruta de uma series X mais o ssd o jogo correria nas grandes cidades como corre fora dos grandes centros que é relativamente bem?

Sei que o problema está no cpu jaguar e no disco a fazer o streaming dos dados e ainda na qualidade da equipa que programa o jogo e o otimiza que não devem ser muito bons.. tenho a curiosidade em saber se um ssd faria diferenças na one X ou como o jogo correria numa series X.

Livio
Livio
Responder a  Hiago
20 de Setembro de 2020 14:28

Eu tenho um de 2T em um Pro da mesma série. Comprei um hd externo da Seagate STEA2000400, abri, retirei o HD e coloquei no Pro. Mas é bom pesquisar porque soube que em alguns modelos a Seagate trocou a conexão sata por usb. No meu caso os externos viam com HD e um adaptador sata usb

Na época um hd externo estava mais barato que o hd avulso

Hiago
Hiago
Responder a  Livio
20 de Setembro de 2020 15:29

mas qual a velocidade desse modelo é 7200rpm ou 5400?

Livio
Livio
Responder a  Hiago
20 de Setembro de 2020 21:32

5400

Felipe Horvath
Felipe Horvath
20 de Setembro de 2020 14:20

Bom dia , Mario ! Acho que a velocidade do ssd do ps5 foi divulgada ja com base nisso , pq no slide em que o Mark Cerny divulgou a velocidade do ssd , estava estava escrito ” pelo menos 5.5gbs”. Então , acho que , apesar de perder velocidade , os 5.5gbs ainda sao garantidos em qualquer situação.

Fernando Cardoso
Fernando Cardoso
20 de Setembro de 2020 16:23

Não sei como vai ser na PS5, mas a PS4 está sempre a gravar o gameplay realizado até um máximo de 60 minutos, sendo que na PS4 Pro esta gravação é no máx 1080p 30fps. Se a PS5 fizer isto da mesma forma (e a uma res. de 4K ainda mais espaço precisa), o ssd vai estar permanentemente a ser escrito, certo? Isto pode não ser relevante para o problema descrito neste artigo, mas poderá afetar a durabilidade do ssd?

Fernando Cardoso
Fernando Cardoso
Responder a  Mário Armão Ferreira
20 de Setembro de 2020 16:55

Dar a opção de gravar o gameplay para um disco externo ou mesmo desativar a funcionalidade, mitigariam o potencial problema.

eduard08
eduard08
20 de Setembro de 2020 16:59

E em falar de ssd, ja se conhece o tamanho necessario para instalar os jogos do spider-man e Demon’s Souls
Marvel’s Spider-Man: Miles Morales 50gb livres e se for a versao Ultimate Edition que vem com a portagem do jogo original e preciso 105 gb
Ja o Deamon’s Souls e preciso 66 gb
Isto sem contar certamente se ouver patch day-one, o que aumentara ainda mais o espaço necessário
Desde o anúncio das novas consolas ouvi dizer que o espaço necessário no ssd para instalar os jogos era menor, mas pelos vistos sera a mesma coisa das consolas actuais, ou sera apenas porque sao jogos de inicio e cross-gen?
Eu so espero que que como na gen actual, que hajam consolas collector com um ssd de maior capacidade

Last edited 3 anos atrás by eduard08
eduard08
eduard08
Responder a  Mário Armão Ferreira
20 de Setembro de 2020 18:00

Pensei que fosse menos pois na store da PlayStation marca que o jogo Spider-Man PS4 – Edition Game Of The Year precisa de 55.19 gb

Mas em todo o caso para jogadores como eu que nao gostam de estar sempre a apagar e a instalar jogos, a versao digital rapido ficara com o disco cheio

eduard08
eduard08
Responder a  Mário Armão Ferreira
20 de Setembro de 2020 19:26

O meu na ps4 pro na versao 1.17 ocupa 66.83 ( a versao do jogo é a normal e sem dlc, a unica coisa que tenho e o bonus de reservaçao mas so faz 1mb)

aqui em França na store o jogo (goty) marca que ocupa 55.19

https://store.playstation.com/fr-fr/product/EP9000-CUSA11993_00-000000000MSMGOTY

Kito
Kito
20 de Setembro de 2020 17:25

Obrigado Mário por nos trazer mais conhecimentos sobre os SSD.
Eu só no ano passado comecei a usar SSD no PC. Senti logo a diferença no boot e no carregamento dos jogos. Nos jogos onde vi melhorias foi no Batman Arkham Knight, deixou de travar, mas tb troquei uma RX 470 por uma GTX 1660ti, que poderá ter ajudado tb. Gosto de ter vários jogos instalados e prefiro tê-los no SSD para loading rápido e evitar engasgos nos jogos.
No entanto o SSD só tem 240 Gb e por isso muitas vezes tenho que fazer ginástica a passar jogos do HDD para o SSD e vice versa. Pelo que percebi não o devo fazer muitas vezes.
Permita-me perguntar se nos SSD é aconselhável se fazer a desfragmentação?
Sobre as futuras consolas, espero bem que a Sony esteja a criar soluções para evitar o desgaste rápido do SSD pois estas serão bastante caras. Digo Sony pois vou comprar a PS5.

Carlos Eduardo Santos
Carlos Eduardo Santos
20 de Setembro de 2020 23:09

Eu sei que não tem muito a ver com o assunto, mas já tive a mesma percepção com cartões micro SD nos smartphones.
Principalmente quando você coloca um cartão que ocupe a capacidade de expansão máxima do aparelho, pois fica ainda mais notória a perda de desempenho.

Rodrigo
Rodrigo
22 de Setembro de 2020 18:38

Essa artigo parece uma aula sobre o funcionamento dos SSDs, parabéns Mário.

Uma curiosidade minha. Será que não teria sido melhor para o Séries S a adoção de um HD híbrido? Já que o foco é a redução de custos, e o Séries S necessita ter uma grande capacidade. A Microsoft poderia ter colocado nele por exemplo um Seagate Firecuda de 2TB, já que eles firmaram um acodo com a Seagate. Teria um desempenho superior em relação a um HD padrão, e a grande capacidade por ser um console sem o leitor de disco.

Last edited 3 anos atrás by Rodrigo
bruno
bruno
Responder a  Rodrigo
22 de Setembro de 2020 19:21

A velocidade seria a mesma?… Eu acho que nao seria.

error: Conteúdo protegido