Elbrus protiv Intela. Poređenje performansi sistema za skladištenje Aerodisk Vostok i Engine

Elbrus protiv Intela. Poređenje performansi sistema za skladištenje Aerodisk Vostok i Engine

Zdravo svima. Nastavljamo da vas upoznajemo sa Aerodisk VOSTOK sistemom za skladištenje podataka, baziranim na ruskom Elbrus 8C procesoru.

U ovom članku ćemo (kao što smo obećali) detaljno analizirati jednu od najpopularnijih i najzanimljivijih tema vezanih za Elbrus, odnosno produktivnost. O performansama Elbrusa ima dosta spekulacija, i to apsolutno polarnih. Pesimisti kažu da je Elbrusova produktivnost sada „ništa“ i da će trebati decenije da se uhvati korak sa „vrhunskim“ proizvođačima (tj. u sadašnjoj realnosti, nikad). S druge strane, optimisti kažu da Elbrus 8C već pokazuje dobre rezultate, a u narednih nekoliko godina, sa izlaskom novih verzija procesora (Elbrus 16C i 32C), moći ćemo "sustići i prestići" vodeći svjetski proizvođači procesora.

Mi u Aerodisk-u smo praktični ljudi, pa smo krenuli najjednostavnijim i (za nas) najrazumljivijim putem: testirati, snimiti rezultate i tek onda donositi zaključke. Kao rezultat toga, sproveli smo prilično veliki broj testova i otkrili niz operativnih karakteristika Elbrus 8C e2k arhitekture (uključujući one prijatne) i, naravno, uporedili ovo sa sličnim sistemima za skladištenje na procesorima Intel Xeon amd64 arhitekture.

Inače, detaljnije ćemo govoriti o testovima, rezultatima i budućem razvoju sistema za skladištenje na Elbrusu na našem sledećem webinaru “OkoloIT” 15.10.2020. oktobra 15. u 00:XNUMX. Registrovati se možete putem linka ispod.

Registracija za webinar

Test stalak

Napravili smo dva štanda. Oba štanda se sastoje od servera koji radi na Linux-u, spojenog preko 16G FC prekidača na dva memorijska kontrolera, u koje je instalirano 12 SAS SSD 960 GB diskova (11,5 TB „sirovog kapaciteta“ ili 5,7 TB „upotrebljivog“ kapaciteta, ako koristimo RAID -10).

Šematski štand izgleda ovako.

Elbrus protiv Intela. Poređenje performansi sistema za skladištenje Aerodisk Vostok i Engine

Štand br. 1 e2k (Elbrus)

Konfiguracija hardvera je sljedeća:

  • Linux server (2xIntel Xeon E5-2603 v4 (6 jezgara, 1,70Ghz), 64 GB DDR4, 2xFC adapter 16G 2 porta) – 1 kom.
  • Prekidač FC 16 G – 2 kom.
  • Sistem za skladištenje Aerodisk Vostok 2-E12 (2xElbrus 8C (8 jezgara, 1,20Ghz), 32 GB DDR3, 2xFE FC-adaptor 16G 2 porta, 12xSAS SSD 960 GB) - 1 kom.

Štand br. 2 amd64 (Intel)

Za poređenje sa sličnom konfiguracijom na e2k, koristili smo sličnu konfiguraciju skladištenja sa procesorom sličnim karakteristikama kao amd64:

  • Linux server (2xIntel Xeon E5-2603 v4 (6 jezgara, 1,70Ghz), 64 GB DDR4, 2xFC adapter 16G 2 porta) – 1 kom.
  • Prekidač FC 16 G – 2 kom.
  • Sistem za skladištenje Aerodisk Engine N2 (2xIntel Xeon E5-2603 v4 (6 jezgara, 1,70Ghz), 32 GB DDR4, 2xFE FC-adaptor 16G 2 porta, 12xSAS SSD 960 GB) - 1 kom.

Važna napomena: procesori Elbrus 8C korišteni u testu podržavaju samo DDR3 RAM, to je naravno „loše, ali ne zadugo“. Elbrus 8SV (još ga nemamo na lageru, ali ćemo ga uskoro imati) podržava DDR4.

Metodologija testiranja

Za generiranje opterećenja koristili smo popularan i vremenski testiran Fleksibilni IO (FIO) program.

Oba sistema skladištenja su konfigurisana prema našim preporukama za konfiguraciju, na osnovu zahteva za visokim performansama na blok pristupu, tako da koristimo DDP (Dynamic Disk Pool) spremišta diskova. Kako ne bismo iskrivili rezultate testa, onemogućavamo kompresiju, deduplikaciju i RAM keš memoriju na oba sistema za skladištenje.

8 D-LUN-ova je kreirano u RAID-10, po 500 GB, sa ukupnim korisnim kapacitetom od 4 TB (tj. otprilike 70% mogućeg upotrebljivog kapaciteta ove konfiguracije).

Biće izvedeni osnovni i popularni scenariji za korišćenje sistema skladištenja, a posebno:

prva dva testa emuliraju rad transakcijskog DBMS-a. U ovoj grupi testova nas zanimaju IOPS i latencija.

1) Nasumično očitavanje u malim blokovima 4k
a. Veličina bloka = 4k
b. Čitanje/pisanje = 100%/0%
c. Broj radova = 8
d. Dubina reda = 32
e. Znak učitavanja = Potpuno slučajan

2) Slučajno snimanje u malim blokovima 4k
a. Veličina bloka = 4k
b. Čitanje/pisanje = 0%/100%
c. Broj radova = 8
d. Dubina reda = 32
e. Znak učitavanja = Potpuno slučajan

druga dva testa emuliraju rad analitičkog dijela DBMS-a. U ovoj grupi testova nas zanimaju i IOPS i latencija.

3) Sekvencijalno čitanje u malim blokovima 4k
a. Veličina bloka = 4k
b. Čitanje/pisanje = 100%/0%
c. Broj radova = 8
d. Dubina reda = 32
e. Znak učitavanja = sekvencijalno

4) Sekvencijalno snimanje u malim blokovima 4k
a. Veličina bloka = 4k
b. Čitanje/pisanje = 0%/100%
c. Broj radova = 8
d. Dubina reda = 32
e. Znak učitavanja = sekvencijalno

Treća grupa testova emulira rad strimovanja čitanja (primjer: online emitiranja, vraćanje sigurnosnih kopija) i streaming snimanja (primjer: video nadzor, snimanje rezervnih kopija). U ovoj grupi testova više nas ne zanimaju IOPS, već MB/s i latencija.

5) Sekvencijalno čitanje u velikim blokovima od 128k
a. Veličina bloka = 128k
b. Čitanje/pisanje = 0%/100%
c. Broj radova = 8
d. Dubina reda = 32
e. Znak učitavanja = sekvencijalno

6) Sekvencijalno snimanje u velikim blokovima od 128k
a. Veličina bloka = 128k
b. Čitanje/pisanje = 0%/100%
c. Broj radova = 8
d. Dubina reda = 32
e. Znak učitavanja = sekvencijalno

Svaki test će trajati jedan sat, isključujući vrijeme zagrijavanja niza od 7 minuta.

Rezultati ispitivanja

Rezultati ispitivanja su sažeti u dvije tabele.

Elbrus 8S (SHD Aerodisk Vostok 2-E12)

Elbrus protiv Intela. Poređenje performansi sistema za skladištenje Aerodisk Vostok i Engine

Intel Xeon E5-2603 v4 (Storage system Aerodisk Engine N2)

Elbrus protiv Intela. Poređenje performansi sistema za skladištenje Aerodisk Vostok i Engine

Rezultati su se pokazali izuzetno zanimljivim. U oba slučaja smo dobro iskoristili procesorsku snagu sistema za skladištenje podataka (70-90% iskorišćenosti), a u ovoj situaciji su prednosti i nedostaci oba procesora jasno očigledni.

U obje tabele, zelenom bojom su označeni testovi u kojima se procesori „osjećaju samopouzdano“ i pokazuju dobre rezultate, dok su narandžastom označene situacije koje procesori „ne vole“.

Ako govorimo o slučajnom opterećenju u malim blokovima, onda:

  • sa stanovišta nasumičnih čitanja, Intel je sigurno ispred Elbrusa, razlika je 2 puta;
  • sa stanovišta slučajnog snimanja definitivno je nerešeno, oba procesora su pokazala približno jednake i pristojne rezultate.

Kod sekvencijalnog opterećenja u malim blokovima slika je drugačija:

  • i kada je u pitanju čitanje i pisanje, Intel je značajno (2 puta) ispred Elbrusa. Istovremeno, ako Elbrus ima IOPS indikator niži od Intelovog, ali izgleda pristojno (200-300 hiljada), onda postoji očigledan problem sa kašnjenjima (oni su tri puta veći od Intelovog). Zaključak, trenutna verzija Elbrusa 8C zaista "ne voli" sekvencijalna opterećenja u malim blokovima. Jasno je da ima posla koji treba obaviti.

Ali u sekvencijalnom opterećenju s velikim blokovima, slika je upravo suprotna:

  • oba procesora su pokazala približno jednake rezultate u MB/s, ali postoji jedno ALI.... Elbrusove performanse kašnjenja su 10 (deset, Karl!!!) puta bolje (tj. niže) od onih sličnog Intelovog procesora (0,4/0,5 ms naspram 5,1/6,5 ms). U početku smo mislili da je greška, pa smo ponovo provjerili rezultate, uradili retest, ali retest je pokazao istu sliku. Ovo je ozbiljna prednost Elbrusa (i e2k arhitekture uopšte) u odnosu na Intel (i, shodno tome, arhitekturu amd64). Nadajmo se da će se ovaj uspjeh dalje razvijati.

Postoji još jedna zanimljiva karakteristika Elbrusa, na koju pažljiv čitalac može obratiti pažnju gledajući tabelu. Ako pogledate razliku između Intelovih performansi čitanja i pisanja, onda je u svim testovima čitanje ispred pisanja u prosjeku za oko 50%+. Ovo je norma na koju su svi (pa i mi) navikli. Ako pogledate Elbrus, indikatori pisanja su mnogo bliži indikatorima čitanja; čitanje je ispred pisanja, u pravilu, 10 - 30%, ne više.

Šta to znači? Činjenica da Elbrus "stvarno voli" pisanje, a to zauzvrat sugerira da će ovaj procesor biti vrlo koristan u zadacima gdje pisanje jasno prevladava nad čitanjem (ko je rekao Yarovayin zakon?), što je također nesumnjiva prednost e2k arhitekture, a ovu prednost treba razviti.

Zaključci i bliska budućnost

Uporedni testovi Elbrus i Intel procesora srednjeg ranga za zadatke skladištenja podataka pokazali su približno jednake i podjednako vrijedne rezultate, dok je svaki procesor pokazao svoje zanimljive karakteristike.

Intel je uveliko nadmašio Elbrus u nasumičnom čitanju u malim blokovima, kao iu sekvencijalnom čitanju i pisanju u malim blokovima.

Kada se piše nasumično u male blokove, oba procesora pokazuju jednake rezultate.

Što se tiče kašnjenja, Elbrus izgleda znatno bolje od Intela u striming učitavanju, tj. u sekvencijalnom čitanju i pisanju u velikim blokovima.

Uz to, Elbrus se, za razliku od Intela, podjednako dobro nosi i sa čitanjem i sa pisanjem, dok je kod Intela čitanje uvijek mnogo bolje od pisanja.
Na osnovu dobijenih rezultata možemo izvesti zaključak o primenljivosti sistema za skladištenje podataka Aerodisk Vostok na procesoru Elbrus 8C u sledećim zadacima:

  • informacioni sistemi sa dominacijom operacija pisanja;
  • pristup fajlu;
  • online emitiranja;
  • CCTV;
  • backup;
  • medijski sadržaj.

Tim MCST-a još ima na čemu raditi, ali rezultat njihovog rada je već vidljiv, što, naravno, ne može a da ne raduje.

Ovi testovi su obavljeni na Linux kernelu za e2k verziju 4.19; trenutno u beta testovima (u MCST, u Basalt SPO, kao i ovdje u Aerodisk) postoji Linux kernel 5.4-e2k, u kojem, između ostalog, ima ozbiljno redizajniran planer i mnoge optimizacije za velike SSD uređaje. Također, posebno za kernele grane 5.x.x, MCST JSC objavljuje novi LCC kompajler, verziju 1.25. Prema preliminarnim rezultatima, na istom Elbrus 8C procesoru, novi kernel kompajliran sa novim kompajlerom, okruženjem kernela, sistemskim uslužnim programima i bibliotekama i, zapravo, softver Aerodisk VOSTOK omogućit će još značajnije povećanje performansi. I to bez zamjene opreme - na istom procesoru i sa istim frekvencijama.

Očekujemo izdavanje verzije Aerodisk VOSTOK bazirane na kernelu 5.4 do kraja godine, a čim se završi rad na novoj verziji, ažurirat ćemo rezultate testiranja i objaviti ih ovdje.

Ako se sada vratimo na početak članka i odgovorimo na pitanje, ko je u pravu: pesimisti koji kažu da je Elbrus „ništa“ i da nikada neće sustići vodeće proizvođače procesora, ili optimisti koji kažu da su „već skoro uhvatili gore i uskoro će prestići"? Ako ne polazimo od stereotipa i religijskih predrasuda, već od stvarnih testova, onda su optimisti definitivno u pravu.

Elbrus već pokazuje dobre rezultate u poređenju sa srednjim amd64 procesorima. Elbrus 8-ke je, naravno, daleko od vrhunskih modela serverskih procesora iz Intela ili AMD-a, ali nije tamo ciljano, za tu svrhu će biti pušteni procesori 16C i 32C. Onda ćemo razgovarati.

Razumijemo da će nakon ovog članka biti još više pitanja o Elbrusu, pa smo odlučili organizirati još jedan online webinar “OkoloIT” kako bismo odgovorili na ova pitanja uživo.

Ovaj put naš gost biće zamenik generalnog direktora kompanije MCST Konstantin Truškin. Možete se prijaviti za webinar koristeći link ispod.

Registracija za webinar

Hvala svima, kao i uvijek, radujemo se konstruktivnim kritikama i zanimljivim pitanjima.

izvor: www.habr.com

Dodajte komentar