Ramdysk, pierwowzów SSD
ARTYKUŁ ARCHIWALNY. Otwieram obudowę i co widzę? Wielką płytę główną, chłodzenie procesora, pamięć RAM, kartę graficzną. Rozbuchane megaherce wprawiają w ruch gigabajty danych. Wszystko działa znakomicie: technologia, miniaturyzacja, żadnych ruchomych części. Zonk! Dysk twardy „młóci” po talerzach jak szalony. Stary-poczciwy HDD nieco odstaje od pozostałych komponentów. Pisząc „nieco” mam tu na myśli „prawie” z reklamy pewnego piwa, którego nazwy z wiadomych względów nie wymienię.
Zacofany HDD
Dysk twardy w porównaniu z pozostałymi podzespołami jest niezwykle ślamazarny. Dają o sobie znać prawa fizyki. Ruchome elementy są wolniejsze od układów scalonych. Dysk jako taki jest pewnym rodzajem pamięci. Porównajmy zatem jego osiągi z pamięcią RAM.
HDD
- DDRII-533 (dual)
- Szybkość działania
- 7200 – 10000 rpm
- 266 MHz
- Interface
- IDE133/SATAII
- 266 – 600 MHz, a nawet wyżej
- Czas dostępu [s]
- 0,008 – 0,0015
- 0,000000004
Transfer
- 60 – 70 MB/s
- 8.5 GB/s*
- Pojemność
- 40 – 750 GB
- 256MB – 4 GB
- *przy założeniu, że 1GB = 1000 MB
Nawet najszybsze dyski z trudem osiągają transfer rzędu 70MB/s. Jeżeli nawet im się to udaje, wraz ze wzrostem zapełnianej przestrzeni i oddalaniem się głowicy od zewnętrznego krańca talerzy, szybkość dysku spada. Aby zwiększyć wydajność dysków łączy się je w macierze RAID. Popularny RAID „0” pozwala zwiększać transfer połączonych dysków niemal o 100% na każdy dołączony dysk. Bardziej zaawansowane macierze pozwalają na łączenie większej ilości dysków i zwiększanie w ten sposób transferu danych, jednak zapomnijmy o tej metodzie! Wydajność będzie co prawda rosła liniowo, jednak będzie to wydajność na wykresach w benchmarkach.
RAID „0” znakomicie sprawdza się, gdy zależy nam na zwiększeniu przepływu danych, jednak wady wynikające z konstrukcji dysków twardych pozostają. Kluczową wartością jest tu czas dostępu. Głowica podczas pracy dysku skacze jak szalona, jednak jako element mechaniczny jest zdecydowanie za wolna. Na pewnym etapie rozwoju technologii szybciej po prostu się nie da i musimy się z tym pogodzić. Żaden dysk nie ma szans z pamięcią RAM, ponieważ RAM jest układem elektronicznym dysponującym (teoretycznie) kilka milionów razy krótszym czasem dostępu do danych.
Dochodzą do tego problemy związane z fragmentacją plików. Wystarczy, że plik jest podzielony na 3 fragmenty i czas dostępu wzrasta, gdyż głowica musi zostać wypozycjonowana nie nad jednym, lecz trzema punktami na talerzach dysku. Niektórzy powiedzą, że są to ułamki sekund. Zgadza się! Są to ułamki, ale właśnie te ułamki sprawiają, że procesory z zegarami tykającymi w rytmie kilku GHz nudzą się. Głowica dysku skacze po talerzach, każdy skok generuje ogromne jak na szybkość pracy procesora opróżnienia:
zegar Core 2 Duo * czas dostępu dysku
1,86 GHz * 8 ms = 1866666666 cykli * 0,008 s = 14933333 cykli oczekiwania
Nawet szybki dysk jest w stanie zmarnować 15 MHz-ów cykli procesora i to zakładając, że otrzyma je w jednej porcji (plik będzie niepofragmentowany). Przy wyższych zegarach i gorszych czasach dostępu dysku przelicznik ten wygląda nawet 5/6-cio krotnie gorzej! W praktyce procesor w czasie oczekiwania na dane zajmuje się innymi operacjami, jednak „szybkość” twardego dysku w znacznym stopniu ogranicza wydajność całego zestawu. Szybki procesor zbyt często „jest bezrobotny”.
Co możemy zrobić?
Wydajność HDD pozostawia wiele do życzenia. Co możemy zatem zrobić? Może crash test? Lepiej nie, na czymś trzeba uruchomić system. Problemem zajęli się inżynierowie GigaByte-a i skonstruowali fizyczny RamDisk.
Urządzenie pozwala na zamontowanie do 4 modułów DDR po 1 GB każdy, co daje nam aż 4 GB szybkiej pamięci! Kartę wkładamy w slot PCI-E, który zasila konstrukcję. Jako interface został wykorzystany SATA pierwszej generacji. Dodatkowo, karta jest wyposażona w akumulator 1600 mAh, który powinien przechować dane w modułach pamięci nawet przez 16 godzin przebywania karty poza komputerem. Jeżeli karta znajduje się wewnątrz PC, prąd spoczynkowy zapewni zasilanie karty i akumulator nie będzie podtrzymywał układów pamięci.
Pomysł z jednej strony jest rewelacyjny. Otrzymujemy 4 GB-owy dysk, któremu niestraszna fragmentacja plików, ponieważ nie ma tu głowicy, którą trzeba pozycjonować. Układom scalonym jest obojętne, w których komórkach pamięci znajduje się plik. Znika również problem spadania wydajności dysku wraz z oddalaniem się głowicy od zewnętrznej krawędzi talerzy. Czas dostępu jest zdecydowanie krótszy. Same plusy!
Z drugiej strony mogłoby być lepiej. SATA to teoretycznie 1,5 Gb/s. Tyle teoria, w praktyce po odliczeniu pasma na sumy kontrolne otrzymujemy 150 MB/s. To zdecydowanie za mało! Bez problemów możemy zakupić pamięci DDR400 o transferze 3200 MB/s. Odnoszę wrażenie, że świetny pomysł został zmarnowany. Fizyczny ramdysk znakomicie sprawdza się jako dysk do przechwytywania i obrabiania strumieni video, w aplikacjach graficznych, podczas kompresji danych. W zadaniach w których kluczowa jest wydajność dysku, konstrukcja GigaByte-a jest rewelacyjna, ale… Dlaczego nie miało by być lepiej?
Gigabyte co prawda zaprezentował już następcę i-RAM, który będzie sprzedawany jako kieszeń 5,25″ i zasilany złączem molex. Nowy model będzie obsługiwał DDR-II i do 8 GB pamięci. Zdjęcie i informacje za dailytech.com. Moim skromnym zdaniem jest to nadal za mało.
Pięć minut dla fantazji
Marzy mi się dysk o ogromnej szybkości działania. Marzy mi się konstrukcja, która zastąpi partycję systemową, a co za tym idzie sprawi, że Windows będzie śmigał jak rakieta. Ramdysk od GigaByte-a ma wszystko, wszystko poza szybkością przesyłania danych. SATA jest za wolny, pozbądźmy się wąskiego gardła. Do dyspozycji mamy moduły DDRII 533 a nawet DDRIII 1200 (jeszcze nie zostały wprowadzone do seryjnej produkcji, jednak wybiegam w odległą przyszłość). Takie pamięci to 9600 MB/s na każdy moduł. A gdybyśmy włożyli kartę w Slot PCI-E*16? A może zaszalejemy i zafundujemy sobie swoistą odmianę SLI? Wyobraźmy sobie 8 modułów po 4 GB spiętych dwiema magistralami PCI-E*16. Da nam to przepustowość rzędu 19 GB/s.
Projekt ambitny, ale z pewnością osiągalny! Jedynym problemem jest zmuszenie chipsetu do traktowania fizycznych ramdysków jako zwykłych dysków twardych. Sprawę powinno załatwić przekonstruowanie southbridge i odpowiednie układy elektroniczne sterujące kartami z pamięcią.
Taka konstrukcja umożliwiły by tworzenie dysków od 1 GB (jedna karta), przez 4 GB (np dwie karty po 2 moduły 1GB). No i oczywiście full opcja, czyli 32 GB (2*4*4). Podejrzewam, że szybszych „dysków” procesory jeszcze przez wiele lat nie będą w stanie w pełni wykorzystać.
Do czego może posłużyć takie monstrum?
Zapewne wielu z Was zadaje sobie to pytanie. Śpieszę z odpowiedzią. Na takim dysku można z powodzeniem zainstalować system wraz z plikiem wymiany. Zmieszczą się na nim również najważniejsze aplikacje i ulubione gry, a wszystko to będzie działać z maksymalną szybkością na jaką pozwalają zainstalowany procesor, pamięć RAM i karta graficzna. Przetwarzanie strumieni video, baz danych, skomplikowane obliczenia, wszystko to będzie działać o wiele szybciej niż obecnie, ponieważ usuniemy główną tamę wydajności – dysk twardy. Dla HDD pozostanie rola, w której czuje się najlepiej, będzie pełnił rolę taniego magazynu na dane. Do przechowywania systemu i aplikacji, na których szybkości działania nam najbardziej zależy posłużą spięte fizyczne ramdyski.
Wsparcie software
Ramdyski są z natury rodzajem pamięci ulotnej. Nie było by rozsądne z naszej strony, gdybyśmy bezgranicznie zaufali układom podtrzymywania prądu spoczynkowego w PSU, a tym bardziej rodzimej sieci energetycznej. Niezbędny w układzie kart-dysków byłby dysk twardy, na którym przechowywany był by backup ramdysków. Odpowiednie oprogramowanie tworzące backup według potrzeb użytkownika, które pozwala na zachowanie jedynie systemu i plików aplikacji znakomicie zdałoby egzamin.
Ile to może kosztować?
Oczywiście powyższy projekt jest z gatunku science-fiction, jednak jego wykonanie wydaje się z technicznego punktu widzenia całkowicie realne. Nie bez pewnej podstawy będzie zatem zadanie sobie pytania, o ile taka konstrukcja uszczupliła by nasze portfele. Niestety o kilka tysięcy złotych. Już same karty-dyski mogą kosztować po 400 złotych. Obecnie ramdisk od GigaByte-a to wydatek ponad 220 $, czyli około 650-750 złotych, w zależności od kursu walut. Gdyby pomysł chwycił, karty byłyby produkowane masowo, a co za tym idzie, zdecydowanie by staniały. Drugą częścią wydatku jest koszt zakupu pamięci RAM, który liczony by był w tysiącach złotych. Standardem byłby raczej jeden ramdysk 4 GB, lub 2*4GB, niż 2*16GB.
Technologia kosztuje, być może właśnie dlatego nie słyszymy o takich projektach. Produkt finalny byłby zbyt drogi, jednak z pewnością znalazłby swoich amatorów wśród tzw „power userów” kupujących wszystko co najdroższe i zapalonych overclockerów.
Zakończenie
Czy takie konstrukcje powstaną w przyszłości? A może inżynierowie wpadną na jakiś genialny pomysł, który pozwoli na osiągnięcie podobnej wydajności przy o wiele niższej cenie? Przyszłość pokaże!
Spis treści: Ramdysk, pierwowzów SSD
Bardzo mi się podobała recka i już na samą myśl o systemie postawionym na takim ramdysku ślinię się jak oszalały. Jeszcze można wziąść pod uwage pamięci flash, w ostatnich latach stają się coraz szybsze, coraz pojemniejsze i myśle że w niedługim czasie dogonią dyski twarde, które faktycznie są najwolniejszym i najgłośnieszym elementem naszych komputerów. Pozdrowienia.