SSD diskovi - 2. dio

U prošlom smo članku naveli da se za zapis informacija na SSD-ovima koriste dvije vrste memorija, NAND flash i DRAM. U ovom ćemo nastavku pobliže razmotriti svojstva obiju vrsta memorije.

NAND flash nam je dobro poznat jer se koristi u memorijskim karticama i USB flash jedinicama. Dvije velike prednosti flash memorije su pamćenje informacija bez konstantnog izvora energije (eng. non-volatile flash memory) i niža cijena. Upravo su to razlozi zbog kojih su ovi SSD-ovi dominantni na tržištu osobnih računala. Ipak, NAND flash ima mana. Kod klasičnih tvrdih diskova stari se podatak jednostavno može "prepisati" novim. Da bi se na flash memoriji upisao novi podatak, najprije treba izbrisati stari. Ovaj proces produžuje operaciju "piši". Pokušaj rješenja ovog problema doveo je do uvođenja naredbe TRIM kojom operativni sustav javlja kontroleru koji blokovi više nisu u upotrebi, pa njih obriše sam kontroler kad je uređaj u stanju mirovanja (eng. idle). Ova je naredba implementirana u svim novijim operativnim sustavima (od 2008. godine). Nadalje, flash memorija ima svoj rok trajanja.  Za to su "krivi" ciklusi piši/briši koji uzrokuju fizičku degradaciju oksidnog sloja (izolatora) kojim su obloženi logički elementi. Da bi se ovaj proces usporio, koristi se tzv. Wear leveling metoda, a to su algoritmi ugrađeni u kontroler koji ravnomjerno raspoređuju cikluse pisanja/brisanja po cijelom SSD uređaju. Zbog degradacije sklopova defragmentacija SSD-ova nije preporučljiva. Srećom ona nije ni potrebna zbog brzine pristupa informacijama.

Jedan način mjerenja performansi SSD jedinica (i tvrdih diskova) jest brzina transfera podataka pri čitanju tj. pisanju. Za klasične tvrde diskove ona dostiže 140MB/s, a NAND flash jedinice postižu brzine do 600MB/s. Mnogo je važniji faktor tzv. IOPS (eng. Input/Output operations Per Second) - broj operacija u sekundi koji jedinica može izvesti. Kao i kod većine stvari, postoji podjela na tzv. Enterprise i Consumer NAND flash SSD jedinice. Kod osobnih računala operacija čitanja informacija brojkom daleko nadmašuje operaciju pisanja. Zato su Consumer jedinice optimizirane za mnogo čitanja i manje pisanja, a broj piši/briši ciklusa kreće se do 10.000, što daje otprilike 5-7 godina "normalnog" rada. S druge strane, Enterprise jedinice se upotrebljavaju u okolišu u kojem je otprilike jednak broj čitanja i pisanja u jako dugom periodu (npr. aplikacije na poslužiteljima). Zbog toga je konstrukcija i testiranje Enterprise jedinica mnogo rigoroznija, a broj piši/briši ciklusa doseže i  do 100.000. NAND flash SSD-ovi postižu do 500 IOPS-a, a latencija iznosi otprilike 25 mikrosekundi naspram 2 milisekunde za klasične (vrhunske) diskove koji se "vrte" na 15.000 okretaja u minuti. Broj IOPS-a se za flash jedinice kreće od 500 do 50.000, što je opet nadmoćno u odnosu na klasične tvrde diskove (do 1.200). Naravno, razvojem tehnologije flash SSD-ovi postaju sve brži i pouzdaniji pa se broj ciklusa piši/briši stalno povećava.

Druga vrsta memorije koja se koristi za izradu SSD-ova je ustvari klasična radna memorija. Riječ je o DRAM-u koji za pamćenje informacija zahtijeva stalan izvor napajanja, obično putem ugrađene baterije. Znamo da su memorije sve brže pa je tako i ova vrsta SSD-ova prilično brža od one bazirane na flash memoriji, ali je i skuplja. Međutim, ova vrsta memorije ne pati od degradacije sklopova s vremenom, što znači da joj je vijek trajanja duži. DRAM jedinice su nadmoćne u broju IOPS-a koji se kreće do 200.000, a latencija iznosi do maksimalnih 20 nanosekundi. Što se tiče brzine transfera, brojke su slične SSD-ovima baziranim na flash memoriji, ali ova karakteristika nije toliko bitna. Ona je ograničena sučeljem kojim se SSD-ovi spajaju na sustav. Primjerice, SATA sučelje revizije 3 ima limit od 600MB/s, a njega su SSD-ovi već dostigli. Kako DDR3 ima teoretski limit od 6400MB/s, možemo očekivati više vrijednosti brzine transfera DRAM SSD-ova. Zahvaljujući svojim karakteristikama, DRAM SSD-ovi se koriste u poslužiteljima i visokodostupnim sustavima, a budući su takva mjesta opremljena dodatnim izvorima napajanja, činjenica da im treba stalno napajanje nije presudna kod odabira.

Koliko su SSD-ovi različiti u odnosu na klasične tvrde diskove pokazuje i način računanja njihove cijene. Umjesto klasične cijene po MB ili GB koristi se cijena po IOPS-ima. Za usporedbu, u tablici se nalaze prosječne vrijednosti svih bitnih karakteristika tvrdih diskova te flash i DRAM SSD jedinica.

Tehnologija Kapacitet (GB) Latencija (ns) IOPS Cijena/IOPS Cijena/GB
"veliki HDD" 2500 120.000 600 13,3 3
"brzi" HDD 700 70.000 1200 16,6 28
flash SDD 250 2.000 500 140 100
flash SDD (read only) 250 450 50.000 1,4 100
DRAM SSD 250 20 200.000 0,5 400

Da SSD-ove ne bismo samo hvalili, red je navesti i njihove mane. Već smo naveli rok trajanja elektroničkih komponenti kod flash memorije. Još gora stvar je sa gubitkom podataka. Klasični tvrdi disk se u laboratorijskim uvjetima mogao rastaviti te su se podaci mogli vratiti. Vraćanje podataka sa SSD-a je teži posao. Ako jedinica nije fizički oštećena i bazirana je na flash memoriji, moguće je vratiti podatke pomoću specijaliziranih programa. Međutim, za gubitak podataka na DDR nema lijeka ukoliko se dogodi nestanak struje. Zato su sigurnosni sustavi kompliciraniji i skuplji – za sigurnosne kopije se koriste ili klasični tvrdi diskovi ili flash jedinice. Ali, kako su podaci na njima obično neprocjenjivi, za cijenu se ionako ne pita. I na kraju spomenimo još da su performanse flash SSD-ova loše u radu s malim datotekama. Kako su blokovi flash memorije veliki 4KB, nemoguće je pročitati ili zapisati manje od toga, čak i kad je zapis manji. Zato su u radu s malim datotekama klasični tvrdi diskovi još uvijek nadmoćniji. DRAM SSD-ovi ne pate od ovih boljki. Međutim, intenzivno se razvijaju datotečni sustavi prilagođeni flash memoriji koji će omogućavati još veće brzine prijenosa i zapisivat će male blokove. Jedan od njih je Universal Flash Storage (UFS) koji se već koristi na digitalnim fotoaparatima, memorijskim karticama i mobilnim uređajima.

Unatoč manama, SSD-ovi su budućnost. Možda nikad neće istisnuti klasične tvrde diskove jer će teško dostići njihov omjer cijene i kapaciteta, ali će sigurno uzimati sve veći dio tržišta.

Za kraj, ukoliko imate SSD u svom računalu, možete provjeriti da li je uključena naredba TRIM. Na Windows 7 operativnom sustavu potrebno je pokrenuti Command Prompt kao administrator i ukucati naredbu

fsutil behavior query DisableDeleteNotify. 

Odgovor 0 znači da je naredba uključena. Ako dobijete 1 kao odgovor, pokrenite naredbu

fsutil behavior set DisableDeleteNotify 0 

i uključit ćete TRIM.

Debian (i srodni Ubuntu) Linux zahtjeva kernel 2.6.28 ili noviji, ext4 datotečni sustav (podržani su još BTRFS, FAT i XFS), eksplicitno navođenje parametra "discard" (proizvoljno i "noatime") unutar datoteke /etc/fstab te pokretanje naredbe fstrim –v periodički (najbolje pomoću crona). Međutim, ova je opcija isključena "po defaultu" zbog mogućeg pada performansi. Priznat ćete, malo neobično obzirom na njenu funkciju.

Na Windows 7 preporučeno je isključiti automatsku defragmentaciju diska, a do te opcije se dolazi preko Start menija: All programs -> Accessories -> System Tools -> Disk Defragmenter: Configure schedule -> Select disks.

Kategorije: 
Vote: 
5
Vaša ocjena: Nema Average: 5 (1 vote)

Komentari

Podaci za IOPSe nikako ne odgovaraju (pogresni izvor?). Klasicni SATA HDD su oko 120 IOPS, klasicni SAS 2.5" su oko 190 IOPS (provjeriti sa FIO primjerice). High-end MLC SF2281 ili Indilinx Everest2 oko 80-100k IOPS ovisno o tome da li je odlockan ili ne.

 

Takodjer ne pasu ni latencije, high-end spomenuti MLC-ovi imaju 4k write latency oko 40-50ns, a 3rd gen MLC-ovi oko 80ns.

Moj izvor dolazi od firme Violin Memory. Nazalost, nemam link na dokument s podacima nego sam citirao podatke s jednog sajta na kojem je ova firma navedena kao izvor