Artikel top billede

(Foto: Computerworld)

Fup og fakta om SSD og flashdiske

Aldrig har forvirringen været større om fremtidens harddiske. Vi adskiller fakta fra myter og bukkene fra fårene.

Af Peter Hyldahl, Alt om Data

Denne artikel er oprindeligt bragt på Alt om Data. Computerworld overtog i november 2022 Alt om Data. Du kan læse mere om overtagelsen her.

Enhver IT- og elektronikproducent med respekt for sig selv har en SSD eller et flashdrev på programmet, men som vi skal se i denne artikel, er der meget stor forskel på ydeevnen fra de forskellige producenter. Desuden vil vi prøve at gøre op med nogle af de mange myter, der omgiver SSD’er.

Hvad er en SSD?

I sin simpleste form er en SSD ikke andet end en række flashchip, der er forbundet til en controller, der udgør interfacet til resten af computeren. Denne løsning giver imidlertid ikke en læse- og skrivehastighed, der er hurtigere end flashhukommelsen. Et typisk eksempel er et 16GB SDHC-kort, som sidder i en kortlæser, og hvor der ikke er gjort noget ud af controlleren.

For at få rigtig fart på en SSD, skal der imidlertid en intelligent controller til. Grunden til at hastigheden bliver så høj skyldes, at controlleren kan læse og skrive op til ti flashchip på samme tid, hvilket i bedste fald tidobler hastigheden i forhold til en almindelig controller. Det drev, som vi har set på er fra Intel, der har investeret kraftigt i udviklingen af controllerteknologi. Dette skal sammenholdes med resultaterne for en almindelig harddisk i en bærbar.

Avanceret teknologi

Som sagt kræver det en intelligent controller for at kunne fremstille en hurtig og effektiv SSD. Blandt de funktioner, som en controller skal understøtte, er minimering af write amplification. Write amplification er forholdet mellem an flashchips blokstørrelse og den mængde data, der skal skrives. Denne faktor er meget vigtig, da skrivning af data sker blok-vis og kun efter at blokken først er slettet. Slette- og skriveoperationer tager typisk ti gange så lang tid som en læseoperationen.

Desuden skal data skrives jævnt over alle chippenes blokke, så levetiden maksimeres. Endelig skal interfacet internt i flashchippene være lynhurtige for at kunne klare de stadig større mængder data. Derfor arbejder ONFI (Open NAND Flash Interface), hvor Intels principal engineer Amber Huffman er formand for den tekniske sektion.

Hun fortæller Alt om DATA, at ONFI arbejder på et hurtigt interface, der kan overføre data internt i chippene fra flashhukommelsen til rambufferen med en hastighed på op til 200 MB/s., hvilket vil øge hastigheden for det samlede system.

Yderligere gør Amber opmærksom på, at der ikke findes en industristandard til måling af SSD’ers levetid. Det ser hun meget gerne, men indtil dette sker, opgiver Intel levetiden for drevene til minimum fem år, hvis der skrives 200GB data hver dag, hvilket nok er langt mere, end de fleste brugere kan overkomme.

Hvad byder fremtiden?

SSD’er er kun lige begyndt at stikke hovedet frem. I fremtiden kan vi selvfølgelig forvente større og hurtigere drev, men nok så vigtigt for de fleste, kan vi også forvente dramatiske prisfald, efterhånden som der kommer flere og flere producenter til markedet.

Sidst på året kan vi forvente at se drev med et 6Gb/s SATA-interface og sammenkoblet med et meget lavere strømforbrug end traditionelle harddrev, er der ingen tvivl om, at SSD’er vil blive meget populære ikke alene i bærbare computere, men også i store datacentre, hvor strømforbrug og deraf følgende køling giver stadig større og større udfordringer.

Myter om SSD:

SSD’er har begrænset levetid
Det er korrekt, hvis de ikke er designet korrekt. Amber Huffman, der har været med til at designe Intels SSD siger, at wear leveling eller slidudjævning, er kritisk for at sørge for, at alle blokke i en SSD anvendes lige mange gange.
En flashchip er delt op i blokke, der typisk kun holder til 100.000 skriveoperationer. Hvis en enkelt blok anvendes fem gange så meget som en anden, vil drevet kun holde en femtedel af tiden, som hvis alle blokke havde været anvendt lige meget. Derfor er det vigtigt med avancerede algoritmer, der sørger for, at skriveoperationer fordeles ligeligt mellem blokkene.

Flash bliver langsommere og langsommere
Det er korrekt, at jo højere kapacitet en flashchip har, jo langsommere er den. Det skyldes, at antallet af blokke pr. flashchip er konstant, hvor store flashchip har større blokke. Ved en læseoperation skal der læses en hel blok, hvorfor en flashchip med høj kapacitet er langsommere. Der arbejdes dog på et hurtigere interface, således at data kan overføres meget hurtigere, end det nu er tilfældet.

Flashteknologi har ingen fremtid
Det er rigtigt, at den nedre grænse for størrelsen på en enkelt celle i en flashchip formodentlig vil blive nået inden for fem år. Til gengæld lader det sig gøre at gemme flere bit i hver celle. For nylig annoncerede SanDisk og Toshiba, at det var lykkedes at gemme både to og tre bit i hver celle, hvor det indtil nu kun var lykkedes at gemme to bit i en celle.

Alle operativsystemer er ens
Intet kunne være mere fejlagtigt. Mens Windows XP, Windows 7 og Linux er meget venlige, er Windows Vista et problembarn. Før data når en applikation, skal de først læses fra chippen, hvilket typisk tager 25us for 4KB. Derefter skal dataene gennem en softwarestak, hvor de tre første operativsystemer typisk er 25us om at behandle en læseoperation, mens Windows Vista typisk er seks gange så lang tid om det, hvilket giver et betragteligt fald i systemets samlede ydeevne.

SATA-interfacet er for langsomt til flashdrev
Det er helt rigtigt, at de hurtigste flashdrev bliver begrænset af SATA-interfacets hastighed på 3Gb/s. Der er imidlertid en nye version af SATA på vej, hvor hastigheden bliver fordoblet til 6Gb/s. Den skulle gerne være færdig sidst på året.

SATA er ikke effektiv nok
SATA er formodentlig det interface, der har den laveste overhead, når det gælder overførsel af data. Dermed ikke sagt, at kommandostrukturen ikke kan gøres bedre.
Derfor arbejder SATA da også med indførelsen af en ny kommando med navnet Trim. Formålet med Trim er, at operativsystemet kan give besked, når en fil ikke længere er i brug, således at SSD’en kan slette de tilhørende blokke på forhånd, hvilket vil gøre interfacet endnu mere effektivt.