wtorek, 29 stycznia 2013

Pendrive USB 3.0 to nie SSD

Dzisiaj krótka historia kolegi, który nabył Corsair Voyager GT 128GB USB 3.0.
Jest to kawał pamięci NAND flash połączony szybkim interfejsem USB 3.0 (teoretycznie nawet do 625 MB/s). Testy urządzenia dostępne w sieci pokazują, że można liczyć na odczyt / zapis 220 / 140 MB/s. Na pierwszy rzut oka taki pendrive miałby zawsze przewagę nad HDD podpiętym po eSATAp, nawet gdy ma 7200 obr./min. ze względu na krótki czas dostępu i wysokie transfery:
HDD 500GB 7200rpm eSATAp

Pendrive 128GB USB 3.0

Możecie sobie wyobrazić jego zdziwienie, gdy próbując używać tej samej maszyny wirtualnej z pendrive i z dysku HDD zanotował, że operacja instalacja tej samej poprawki zajmuje blisko piętnaście razy więcej czasu na Corsair Voyager GT. Podczas pracy w maszynie wirtualnej długość kolejki dysku dla pendrive wahała się pomiędzy 15-60 transakcji, a na HDD zwykle była równa 1.
Jednocześnie kopiowanie pliku maszyny z pendrive pozostawała dwukrotnie wyższa niż z HDD.
Pendrive zupełnie zawiódł przy mieszanych operacjach odczytu / zapisu w małych, losowych transakcjach. Był w stanie zapewnić maksymalnie 50 operacji na sekundę (IOPS), czyli bardzo słabo.

Wąskim gardłem w tym przypadku jest zastosowany kontroler pamięci flash oraz ograniczona liczba banków pamięci. Jak widzicie daleko mu do wydajności nawet średniej klasy SSD. Ta sytuacja przypomina mi charakterystykę SSD Crucial v4, którego kontroler pochodzi właśnie z rynku pendrivów.

Być może rozwiązaniem byłby zakup pendrive wyposażonego w kontroler pamięci flash klasy SSD, jak na przykład produkt SuperTalent RC8, który jest reklamowany, jako idealny do wykorzystania jako nośnik Windows to Go.

Wkrótce dołożę więcej danych pomiarowych, aby dokładniej wyjaśnić ten problem...

[UPDATE 2013-02-02]
Kolega przesłał mi wyniki porównania HDD i Pendrive z HD Tune 5.0.
Na pierwszy ogień leci ogólny pomiar:
Widzimy jasno, że w teście odczytu pendrive miażdży tradycyjny HDD. Tutaj nie znajdę przyczyny słabości Corsair Voyager.

Kolejno patrzymy na losowe odczyty:
... i znajdujemy dowód na to, że pendrive radzi sobie bardzo dobrze z losowymi odczytami - znowu pudło.

Dalej dokładniejszy test odczytów w zależności od rozmiaru transakcji:
... i HDD po raz kolejny ustępuje pola.

Wreszcie mamy pomiar odczytu i zapisu dla operacji plikowych:
... i wreszcie widzimy, że dla podawanych kolejno losowych 4kB transakcji zapisu (długość kolejki=1) HDD jest ponad 11 razy szybszy. Niestety nie mam więcej porównań transakcji zapisu, ani pomiarów losowych mieszanych odczyt / zapis (najbardziej realistyczny), bo są to testy destrukcyjne, a kolega używa obu nośników do przechowywania danych.
Dopiero tutaj widać ewidentnie, że kontroler pendrive'a nie radzi sobie z małymi transakcjami zapisów losowych. Podejrzewam, że mieszanka losowych odczytów i zapisów o małym rozmiarze transakcji jest piętą achillesową tego rozwiązania.

Pamiętajcie, że dla pamięci masowej pod systemy operacyjne (nośnik startowy lub lokalizacja pliku obrazu maszyny wirtualnej), przed zakupem koniecznie trzeba sprawdzić wydajność (IOPS i czas dostępu) dla pseudo-losowych 4kB transakcji odczytu i zapisu.

Brak komentarzy:

Prześlij komentarz