Áttörte az 1 millió IOPS sebességhatárt az IBM flash-alapú adattárolója

Címkék

Az IBM azt állítja, hogy nagyobb áttörést ért el a flash-alapú adatárolás területén azzal a kutatási projektjével, amelyben több mint 1 millió IO művelet per másodperc adatátviteli sebességet mért. Ez a sebesség két és félszer gyorsabb, mint az ipar jelenleg leggyorsabb storage-ának - a Texsas Memory Systems 400 000 IOPS-t tudó berendezésének - sebessége. Az IBM csütörtökön bejelentett Quicksilver névre hallgató projektje ötvözi a solid-state flash memóriát az IBM storage virtualizációs technológiájával. A részletek itt olvashatók.

Hozzászólások

Ha végre kijön valamelyik cég a FERAM alapú nagy kapacitású tárolókkal akkor egy idő után a flash alapú eszközöket a feledés homálya borítja. Ez pedig remélhetőleg már nincs egy "emberöltőnyi" távolságra az idővonalon. Vannak már bíztató fejlesztések. Legalább fél éve olvastam valahol egy cikket egyelőre még kisérleti szériában készített eszközökről. Ezek kapacitása talán 1 MB körül volt. Tudom hogy ez a mai viszonyok között viccesen kicsinek hat, de minden kicsiben kezdődik. Viszont már most sokkal fürgébb mint a flash cellák, meg tápenergia nélkül is megőrzi az adatokat.

Én személy szerint várom már azt, ahol szinte már nem jellemző mechanikai megoldás a számítástechnika területén. Valószínűleg a későbbiekben talán a hűtés jobb megoldása fogja meghatározni a kutatások célját.

A hűtésről jut eszembe: A Fraunhofer Intézetben lassan tíz éve kifejlesztettek egy olyan megoldást ami nagy részben megoldja a teljesítményveszteséget. Miről is van szó? A CMOS áramkörökben lévő FET-ek nyitva vagy zárva tartásához elenyésző teljesítmény szükséges. Az átkapcsolás ideje alatt azonban áram folyik a kapu kapacitásán keresztül. Ezt föl kell tölteni ahhoz hogy a tranzisztor kinyisson. A feltöltést úgy valósítják meg hogy a tápfeszültségre kötik a kaput. (Célszerűen egy másik FET-en keresztül.) Ha le akarják zárni az eszközt akkor pedig a kapuban tárolt elektromos töltést kiürítik. Ez a gyakorlatban a kapu és a drain elektróda közé kötött újabb FET bekapcsolásával valósítanak meg. Az energia ezen FET belső ellenállásán hővé alakul. A legnagyobb részt ez a veszteség teszi ki a processzorok energiafogyasztásából. A dolog természetéből adódik hogy ez a veszteség az átkapcsolások frekvenciájának növelésével egyenes arányban nő. A Fraunhofer mérnökei azt oldották meg hogy ezt az energiát visszavezetik a tápfeszültség vezetékbe. Az elmélet igazolásául építettek egy processzort a módszerük fölhasználásával. Az eredmény csaknem századrésznyi teljesítményfölvétel lett egy hasonló processzorhoz képest. Aztán valamelyik nagy I betűs cég megvette a szabadalmat és azóta rajta ül.

Ezen én is csodálkoztam annak idején. Viszont az feltűnt hogy az ARM processzorok milyen keveset esznek az órajelükhöz képest. Erre a hírre azért emlékszem mert nagyon vártam hogy egyszercsak a CPU-k fogyasztása annyira lecsökken hogy elég lesz nekik egy kis hűtőborda. Lehet hogy kacsa volt? Kár hogy nem emlékszem arra hogy hol is olvastam. Hmmm.... A könyvtárban!! :-) Nade miben? Ezt már homály fedi. Keresgettem a neten a Fraunhofer nevével jelzett szabadalmakat de pont ilyet nem találtam.

Egy fontos dolgot meg kell érteni. Ha az adott processzornál nem az éppen aktuális gyártástechnológiából kinyerhető maximális órajel elérése a tervezési szempont, hanem a minimális fogyasztás, akkor nagyon sok mindent eleve másképpen terveznek meg.

Eleve a tranzisztorok méretezése és felépítése is teljesen más, ha gyors kapcsolás kell, ilyenkor nagyon sok kompromisszumot kell kötni pl. szivárgási áramban.
Aztán másmilyenek pl. a cache memória SRAM cellái is, ha az abszolút minimális latency helyett, egy jó latency-jó fogyasztás kompromisszum a cél. Ez utóbbi esetben a hagyományos 6 tranzisztoros cella helyett 8 tranzisztoros cellát használnak.
Még egy nagyon nagy dolog az órajel elosztó hálózat megtervezése. Egy mai bonyolultabb processzormagban a tranzisztorok közel fele az órajel továbbítására megy el. Óriási nagyot lehet nyerni, ha kicsit engednek a maximális órajelből, kicsit nagyobb késleltetéseket engednek meg, és így kevesebb tranzisztorból álló órajeltovábbító hálózatot tervezhetnek bele a magba.

De olvass el egy pár cikket az Atom processzorról, vagy a Nehalem tervezési szempontjairól
---
Linux is bad juju.

Nem értelek. Az a nagy I betűs biztos tulajdonos pár erőműben, és áramszolgáltatóban, tehát nyilván nem éri meg nekik csökkenteni a processzor fogyasztását.

Ugyan ez volt egy másik, kis i betűs céggel, aki direkt növelte a fogyasztást a P4-es típusú processzoraival.

Érted már?!?! :)

"...handing C++ to the average programmer seems roughly comparable to handing a loaded .45 to a chimpanzee."
-- Ted Ts'o

Ezt a problémát a mozgatott töltés mennyisége felől is meg lehet közelíteni. Kevesebb mozgatott töltés: kevesebb energia. Azaz kapacitás (csíkszélesség) és tápfesz csökkentés. Az utóbbinak sajna az egymásbavezetés vet véget (2x nyitófeszültség alá menni ugye nem megy). Ezért van vége a tápfesznek ~0.75V alatt.

Amúgy a fent leírtak valóban Egey kategória:

"energia ezen FET belső ellenállásán hővé alakul" vs. "energiát visszavezetik a tápfeszültség vezetékbe" Azon a rohadt FET-en csak át kell folynia valamennyi töltésnek (ármanak) itt az Egey (tm).

Úgy látszik hogy nem írtam le elég érthetően. Nincs itt semmiféle Egely. Egyszerűen arról írtak hogy a kapuban tárolt töltést nem emésztetik föl egy másik FET csatornaellenállásán hanem visszavezetik a tápfeszültség ágba. (Gondolom valamilyen töltéspumpálós módszerrel.) Ez a szabadalom lényege. Ez persze plusz áramköri elemeket igényel, de állítólag megéri.

Ha ez igaz akkor miért nem bukkan föl végre valahol? Nem tudom.

És a töltéspumpálás energiaigényével mi a helyzet?

Gondolj bele, egy töltéspumpához kell legalább 2db kapcsolóelem és egy kapacitás. (Tekintsünk el tőle, hogy valaminek vezérelnie is kell a két kapcsolót) A kapacitás adott, az eredeti FET gate kapacitása. Tegyük hozzá, hogy ez általában egy olyan kis FET amilyen kicsit csak gyártani lehet, mert nem teljesítményt kell kapcsolnia, hanem adatot. A lehető leggyorsabb kapcsolás érdekében a gate kapacitást a lehető legkisebbre kell választani.

A másik két kapcsolóelem nem nagyon lehet más, mint 2db másik FET. Ezek sem lehetnek kissebbek, mint az előző, hiszen ha lehetne, akkor azt is kisebbre gyártanák. Tehát legjobb esetben 1db FET kapacitásában tárolt töltés visszapumálásához 2db FET dolgozik, a megfelelő velejáró veszteséggel. Hurrá ezzel megháromszoroztuk az alkatrésszámot és megkétszereztük a fogyasztást. Ahogy Borat mondaná: "Great Success!" :)

Attól, hogy valamit a szabadalmi hivatal elfogadott, nem biztos, hogy megvalósítható, vagy egyáltalán működőképes, még kevésbé biztos, hogy gazdaságoson gyártható.

Ha nincs töltéspumpa a dologban, akkor viszont tényleg Egely György kategória, mert ellentmond az elektromos terekre és potenciálra vonatkozó törvényeknek.
---
Linux is bad juju.

nezzuk.

A Texas Memory ram-sam400 egy vasarolhato termek, nem laboreredmeny. a ram-sam400 egy doboz, benne 128 Gbyte dram, 4 darab backup-disk, akksi, redundans tap, FC es IB csatolo. sehol egy flash. Ha elmegy az aram, a dramot kiirja a diszkre es kikapcsol.

A cikk hivatkozik meg egy SUN 32 gigas flash ssd-re, ami 30 000 olvasasi es 5000 irasi IOPS-t tud. Az viszont egy drive. (15k rpm sas disk tud 290 olvasasi IOPS-t)

A cikk laboreredmenyt kozol. Minden bizonnyal egy boszme nagy storage virtualizacios alrendszer mogott felsorakoztattak 35 falsh-ssd -t, raid0 -ban, es meghajtottak. A meghajtas sem trivalis, melyik az a szerver, ami 1 millio interruptot masodpercenkent ki tud vinni? Gigahertz tempoban jonnek az interruptok, egy CPU-val (eszaki hiddal, mindegy) ez nonszensz. Gyanitom a teszteleshez hasznalt szerver is masszivan parhuzamos, hardveresen tekintheto tobb szervernek.

Ez a teszt igazabol az IBM System/Total Storage SAN Volume Controller termekerol szol. (amely termekrol nem tudok egyebirant semmit)

1millio i/o az inkabb megahertzes irq tempo, nem gigas. ez az nem lehetetlen.
felteve, hogy 1 i/o muvelet 1 (vagy nehany, 10-es nagysagrendben, nem ezres) megszakitast general, de ez altalaban igaz is. PCI+MSI vagy PCI-e eseten meg nem is gond, mert szepen jonnek sorban az adatok, az MSI messze nem terheli le annyira a vasat mint a hagyomanyis IRQ.

tobb 100 khz-s irq-t le birtunk anno 32mhz-s microkontrollerekkel kezelni, igaz az mas teszta.

A'rpi

az "interruptkezeles szet is dobhato" oprendszer szempontjabol mindenkepp.
Hardver szempontjabol mar nem anyira egyszeru, olyanok szoktak lenni,
hogy az egyik IO kartya interruptja az egyik cpu-hoz, a masike a masikhoz
essen be. Ha nem direkt hozzakotott cpu van, akkor lennie kellene valami
1 darab kutyunek az alaplapon, ami szetosztja, iranyitja. Es akkor az az 1 darab kutyu tud lenni a szuk keresztmetszet.