Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Choisir un SSD

104 réponses
Avatar
fra
Bonjour/soir

Pour la nowel je vais (me faire) offir un SSD à mon mac mini 2009.
Il ira à la place de l'ancien DD et l'ancien ira dans un caddy à la
place du graveur qui est mort depuis belle lurette.

Le budget est de maxi 100 euros.
Lequel pouvez-vous me conseiller ?
La star du moment semble être le Vertex 3 ; qu'en pensez vous ?
60 Go me semble un strict minimum pour ce que j'ai à y mettre.
(Je vous demanderais plus tard quoi mettre dessus, système, applis...)

Merci d'avance
--
Fra

10 réponses

7 8 9 10 11
Avatar
yapu
patpro ~ patrick proniewski wrote:

> pour une utilisation en cache disque, quel est l'interet de la Flash ?
> la RAM standard est quand meme plus rapide ! C'est juste au moment du
> redemarrage que ça peut jouer.

bien sur, la RAM est plus rapide, mais je ne pense pas que l'OS aille
jusqu'à ce volume de cache en RAM pour les block de disque.



je me suis mal expliqué ; je m'interrogeais : pourquoi le fabricant
utilise de la flash, alors qu'il pourrait utiliser de la RAM normale,
avec 4 G à la place des 64 MO actuels.

--
Philippe Manet
en fait, c'est manet avant @
Avatar
patpro ~ patrick proniewski
In article <1kc1bch.4f3z401x4m1cyN%,
(Philippe Manet) wrote:

patpro ~ patrick proniewski wrote:

> > pour une utilisation en cache disque, quel est l'interet de la Flash ?
> > la RAM standard est quand meme plus rapide ! C'est juste au moment du
> > redemarrage que ça peut jouer.
>
> bien sur, la RAM est plus rapide, mais je ne pense pas que l'OS aille
> jusqu'à ce volume de cache en RAM pour les block de disque.

je me suis mal expliqué ; je m'interrogeais : pourquoi le fabricant
utilise de la flash, alors qu'il pourrait utiliser de la RAM normale,
avec 4 G à la place des 64 MO actuels.



Ça s'est fait. Mais tu comprendras que l'effet puisse être dévastateur
en cas de panne de courant :)
Le premier à ma connaissance à avoir fait un disque hybride RAM+plateau
classique c'est Quantum, vers la fin des années 90, avec je crois une
batterie de backup en plus. Je n'ai pas retrouvé la référence du modèle.
Quoi qu'il en soit, l'histoire des SSD remonte à plus loin que les gens
pensent. Autrefois (années 70-80-90) c'était de la RAM, et à la toute
fin des années 90 les SSD en flash sont apparus (Bitmicro par exemple,
pour les avions, l'espace, les missiles...). Il a par exemple existé une
carte SSD à base de RAM, spécialement conçue pour Mac (compatible avec
le slot d'extension des 7100, nubus si mes souvenirs sont bons).

Si on ne les a pas vu plus tôt chez le grand public c'est juste du au
fait que beaucoup de gens ont investi dans la recherche sur le stockage
à plateau (augmentation des perf, de la densité, évolution des bus,
etc.). Cette abondance de R&D a fait chuter le prix au Mo, puis le prix
au Go, tout en autorisant des performances toujours plus alléchantes.

patpro

--
A vendre : KVM IP 16 ports APC
http://patpro.net/blog/index.php/2008/01/12/133
Avatar
pehache
Le 09/12/11 07:24, patpro ~ patrick proniewski a écrit :

pour une utilisation en cache disque, quel est l'interet de la Flash ?
la RAM standard est quand meme plus rapide ! C'est juste au moment du
redemarrage que ça peut jouer.



bien sur, la RAM est plus rapide, mais je ne pense pas que l'OS aille
jusqu'à ce volume de cache en RAM pour les block de disque. Et de toute
maniere, ça vient en plus de ce que ton OS peut mettre en cache dans la
RAM.
Comme tu le soulignes ce n'est pas persistant quand c'est en RAM, et
l'OS n'utilise jamais la RAM comme cache pour l'écriture,



Ben, si... Quand on écrit dans un fichier on n'est pas sûr que c'est
physiquement écrit sur le disque, à moins de le forcer par un "flush" ou
en fermant le fichier.

ce que sera
amené à faire le momentus XT après que son firmware aura été mis à jour.
Quand un soft dit qu'il faut flusher les données sur le disque, tu écris
sur ton disque, pas dans ta RAM. Alors qu'avec un système de cache en
écriture géré par le disque lui-même, l'OS n'a aucun moyen de savoir
qu'il écrit dans le cache en flash plutôt que sur les plateaux du disque.
Et c'est là aussi que c'est important. Écrire sur un support volatile
comme la RAM quand on croit écrire sur un support persistant c'est
risqué :)
Avatar
patpro ~ patrick proniewski
In article ,
pehache wrote:

Le 09/12/11 07:24, patpro ~ patrick proniewski a écrit :
>>
>> pour une utilisation en cache disque, quel est l'interet de la Flash ?
>> la RAM standard est quand meme plus rapide ! C'est juste au moment du
>> redemarrage que ça peut jouer.
>
> bien sur, la RAM est plus rapide, mais je ne pense pas que l'OS aille
> jusqu'à ce volume de cache en RAM pour les block de disque. Et de toute
> maniere, ça vient en plus de ce que ton OS peut mettre en cache dans la
> RAM.
> Comme tu le soulignes ce n'est pas persistant quand c'est en RAM, et
> l'OS n'utilise jamais la RAM comme cache pour l'écriture,

Ben, si... Quand on écrit dans un fichier on n'est pas sûr que c'est
physiquement écrit sur le disque, à moins de le forcer par un "flush" ou
en fermant le fichier.



C'est vrai, mais c'est écrit sur le disque dans la foulée en général.
Entre la milliseconde et quelques secondes, suivant la file d'attente.
On ne peut pas vraiment dire que tu as à ta disposition un vrai cache de
quelques Go, même si effectivement une grande quantité de RAM influe sur
les résultats des benchmarks d'écriture.
Et ça va dépendre de l'application que tu utilises. Typiquement les
appli de base de données écrivent tout de suite sur le disque pour
éviter les pertes de données et les incohérences (potentiellement
causées par la "réordonnation" par le disque des écritures dans sa file
d'attente). Et des bases de données tu en as plein dans l'OS, comme
spotlight par exemple.

Je serais aussi curieux de savoir si ce tampon est vidé une fois que le
fichier est écrit sur le disque, ou si une nouvelle lecture d'un
document écrit sur le disque peu de temps avant utilise aussi ce tampon
pour aller plus vite.

Au final tu as raison, la RAM est aussi utilisée en cache d'écriture,
mais pas selon le même principe que pour la lecture, et surtout dans des
proportions moins intéressantes.

patpro

--
A vendre : KVM IP 16 ports APC
http://patpro.net/blog/index.php/2008/01/12/133
Avatar
pehache
Le 16/12/11 07:05, patpro ~ patrick proniewski a écrit :

Ben, si... Quand on écrit dans un fichier on n'est pas sûr que c'est
physiquement écrit sur le disque, à moins de le forcer par un "flush" ou
en fermant le fichier.



C'est vrai, mais c'est écrit sur le disque dans la foulée en général.
Entre la milliseconde et quelques secondes, suivant la file d'attente.
On ne peut pas vraiment dire que tu as à ta disposition un vrai cache de
quelques Go, même si effectivement une grande quantité de RAM influe sur
les résultats des benchmarks d'écriture.
Et ça va dépendre de l'application que tu utilises. Typiquement les
appli de base de données écrivent tout de suite sur le disque pour
éviter les pertes de données et les incohérences (potentiellement
causées par la "réordonnation" par le disque des écritures dans sa file
d'attente). Et des bases de données tu en as plein dans l'OS, comme
spotlight par exemple.



Normalement il n'y a pas d'incohérence, à moins d'accéder directement au
disque sans passer par l'OS.

Si on relit une donnée et a été écrite mais qui est encore dans le
tampon mémoire, l'OS retourne la donnée dans le tampon et non pas ce qui
est sur le disque. En tous cas on m'a toujours dit ça.


Je serais aussi curieux de savoir si ce tampon est vidé une fois que le
fichier est écrit sur le disque, ou si une nouvelle lecture d'un
document écrit sur le disque peu de temps avant utilise aussi ce tampon
pour aller plus vite.

Au final tu as raison, la RAM est aussi utilisée en cache d'écriture,
mais pas selon le même principe que pour la lecture, et surtout dans des
proportions moins intéressantes.



Oui
Avatar
patpro ~ Patrick Proniewski
In article ,
pehache wrote:

> Et ça va dépendre de l'application que tu utilises. Typiquement les
> appli de base de données écrivent tout de suite sur le disque pour
> éviter les pertes de données et les incohérences (potentiellement
> causées par la "réordonnation" par le disque des écritures dans sa file
> d'attente). Et des bases de données tu en as plein dans l'OS, comme
> spotlight par exemple.

Normalement il n'y a pas d'incohérence, à moins d'accéder directement au
disque sans passer par l'OS.



Ça peut donner des résultats incohérents dans le sens "base de données"
du terme. Les disques modernes ordonnent les écritures pour qu'elles se
fassent de manière optimale par rapport à la topologie des données sur
le plateau (pour minimiser le seek time, par exemple).
Si dans ta DB tu écris un enregistrement A, puis un B qui ne doit
exister qu'en relation avec le A, mais que pour le disque c'est plus
efficace d'écrire d'abord la modification correspondant au B, et que le
courant saute avant l'écriture du A, alors ta base de données est
incohérente. Même si par ailleurs ton fichier peut être tout à fait
lisible.
Il existe une commande spéciale pour gérer les écritures qui doivent
être immédiatement écrites sans que le disque ne les réordonne
(F_FULLFSYNC, cf <x-man-page://fsync> et <x-man-page://fcntl>).
Ça semble un bon moyen de tester les performances purement mécaniques
d'un disque d'ailleurs.

Quoi qu'il en soit, on peut spéculer sur les problèmes d'intégrité de
données, la commande existe bien, et elle est utilisée sur Mac OS X à de
nombreux endroits.

Pour avoir une idée plus précise, j'ai bricolé une sonde DTrace, et j'ai
observé les événements "F_FULLFSYNC". Ils sont effectivement liés à des
écritures en base de données :

Shrook[50888] F_FULLFSYNC ??/com.fondantfancies.shrook2/Cache.db
Shrook[50888] F_FULLFSYNC ??/com.fondantfancies.shrook2/Cache.db
Shrook[50888] F_FULLFSYNC ??/com.fondantfancies.shrook2/Cache.db
Shrook[50888] F_FULLFSYNC ??/com.fondantfancies.shrook2/Cache.db
Mail[90987] F_FULLFSYNC ??/Database/Database.sqlite3
Mail[90987] F_FULLFSYNC ??/Mail/Envelope Index
Mail[90987] F_FULLFSYNC ??/Mail/MessageUidsAlreadyDownloaded3
mdworker32[53734] F_FULLFSYNC ??/-Caches-/sandbox-cache.db
Shrook[50888] F_FULLFSYNC ??/com.fondantfancies.shrook2/Cache.db
Shrook[50888] F_FULLFSYNC ??/com.fondantfancies.shrook2/Cache.db
fontd[150] F_FULLFSYNC ??/com.apple.FontRegistry/font
Safari[280] F_FULLFSYNC ??/Safari/WebpageIcons.db
Safari[280] F_FULLFSYNC ??/Safari/WebpageIcons.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
Safari[280] F_FULLFSYNC ??/com.apple.Safari/SafeBrowsing.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
Safari[280] F_FULLFSYNC ??/com.apple.Safari/SafeBrowsing.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
Safari[280] F_FULLFSYNC ??/Safari/WebpageIcons.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
Safari[280] F_FULLFSYNC ??/Safari/WebpageIcons.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
Safari[280] F_FULLFSYNC ??/Safari/WebpageIcons.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db
WebProcess[282] F_FULLFSYNC ??/com.apple.Safari/Cache.db


Toutes ces écritures en base de données (client RSS, Mail, Safari,
spotlight, fontd...) sont faites via la commande F_FULLFSYNC de fcntl,
ce qui implique qu'elles sont immédiatement flushée (plus immédiatement
que par un simple flush. C'est moins efficace (performances) mais plus
sûr (intégrité).
Heureusement ce sont des évènements relativement minoritaires dans un
environnement de travail classique :

lancement de Mail : environ 30 appels,
une relève POP/IMAP en cliquant sur le bouton ad-hoc : 3 appels,
ouverture d'un message ou navigation dans les boîtes : 1 à 3 appels.

Pour les curieux, je suis parti du script
<https://github.com/acdha/unix_tools/blob/master/utilities/DTrace/locking
.d> que j'ai modifié pour ne tracer que les commandes F_FULLFSYNC de
fcntl.

Comme ce F_FULLFSYNC met en échec toutes les possibilités d'optimisation
se trouvant entre la RAM et le plateau du disque, il est clair qu'un
SSD, ou un système de cache en écriture qui se confond avec le stockage
lui-même, a un énorme potentiel ici.
Certains développeurs pensent que F_FULLFSYNC est inutile si ton file
system est fiable (ZFS par exemple), mais le coût de performance peut
être largement absorbé par un stockage flash. Donc autant continuer de
garantir l'intégrité des données, puisque le coût de performance va
disparaître à mesure que les gens s'équipent en SSD.

patpro

--
Je cherche à changer d'air -> http://www.patpro.net/cv
Avatar
xavier
patpro ~ Patrick Proniewski wrote:

WebProcess



A propos, celui-là, comment ce fait-il qu'il se goinfre plus d'1GB de
mémoire "réellé, alors que je ne me rappelle pas que les versions
précédentes de Safari, qui ne l'utilisaient pas, aient été si
gourmandes. Une histoire de cache, justement ?

Mais tes test montrent des I/O synchrones. Je ne pige pas ce qu'il fait
donc de toute cette mémoire ? A moins que tous les Flash lus depuis le
lancement y restent ad vitam aeternam ?

--
XAv
In your pomp and all your glory you're a poorer man than me,
as you lick the boots of death born out of fear.
(Jethro Tull)
Avatar
patpro ~ Patrick Proniewski
In article <1kcdnc3.1sq6pkp12l1npcN%,
(Xavier) wrote:

patpro ~ Patrick Proniewski wrote:

> WebProcess

A propos, celui-là, comment ce fait-il qu'il se goinfre plus d'1GB de
mémoire "réellé, alors que je ne me rappelle pas que les versions
précédentes de Safari, qui ne l'utilisaient pas, aient été si
gourmandes. Une histoire de cache, justement ?



il stocke du cache web dedans, autant que je puisse dire. Et 1Go t'es
gentil :) Après quelques 10n de jours d'uptime sans relancer Safari ça
monte au delà (je dépasse facilement 2 Go).

Mais tes test montrent des I/O synchrones. Je ne pige pas ce qu'il fait
donc de toute cette mémoire ? A moins que tous les Flash lus depuis le
lancement y restent ad vitam aeternam ?



les I/O que j'ai listées sont seulement sur des DB SQLite, à priori
petites (max quelques Mo). Elles ne contiennent probablement pas du vrai
cache dans le cas de Safari (des pointeurs vers les fichiers de cache
physique peut être... j'ai pas été voir mais ca doit être super simple à
vérifier).

patpro

--
Je cherche à changer d'air -> http://www.patpro.net/cv
Avatar
yapu
patpro ~ Patrick Proniewski wrote:

Pour avoir une idée plus précise, j'ai bricolé une sonde DTrace, et j'ai
observé les événements "F_FULLFSYNC". Ils sont effectivement liés à des
écritures en base de données :



merci pour ces explications très interessantes
--
Philippe Manet
en fait, c'est manet avant @
Avatar
filh
patpro ~ Patrick Proniewski wrote:

In article ,
pehache wrote:

>
> Forcément, avec seulement 4Go de SSD il ne faut pas s'attendre à des
> miracles.

Les résultats avec le nouveau modèle à 8Go sont sensiblement meilleurs,
mais effectivement, j'aimerai bien qu'ils aillent au bout du concept en
proposant des versions à plus de 32 Go.

Sinon tu passes sur Windows, et tu as des solutions SSD du commerce +
HDD du commerce + Driver + Logiciel d'optimisation + ton CPU qui fait le
travail. Autant dire que c'est potentiellement la foire au bug.



On dit du bien de cela
http://www.datacore.com/
J'ai une collègue qui vient d'en installer... donc rdv dans un ans et la
première panne...

On peut imaginer que le tiering auto tirera parti des ssd...

FiLH


patpro




--
Le fondement du constat bourgeois, c'est le bon sens, c'est-à-dire
une vérité qui s'arrête sur l'ordre arbitraire de celui qui la parle.
Roland Barthes.
http://www.filh.org
7 8 9 10 11