Elbrus VS Intel. Sammenligning af ydeevnen af ​​Aerodisk Vostok og Engine-lagringssystemer

Elbrus VS Intel. Sammenligning af ydeevnen af ​​Aerodisk Vostok og Engine-lagringssystemer

Hej alle. Vi fortsætter med at introducere dig til Aerodisk VOSTOK-datalagringssystemet, baseret på den russiske Elbrus 8C-processor.

I denne artikel vil vi (som lovet) analysere i detaljer et af de mest populære og interessante emner relateret til Elbrus, nemlig produktivitet. Der er ret mange spekulationer om Elbrus' præstation, og absolut polære. Pessimister siger, at Elbrus' produktivitet nu er "ingenting", og det vil tage årtier at indhente de "top"-producenter (dvs. aldrig i den nuværende virkelighed). På den anden side siger optimister, at Elbrus 8C allerede viser gode resultater, og i de næste par år, med udgivelsen af ​​nye versioner af processorer (Elbrus 16C og 32C), vil vi være i stand til at "indhente og overhale" verdens førende processorproducenter.

Vi hos Aerodisk er praktiske mennesker, så vi tog den enkleste og mest forståelige (for os) vej: teste, registrere resultaterne og først derefter drage konklusioner. Som et resultat udførte vi et stort antal tests og opdagede en række betjeningsfunktioner i Elbrus 8C e2k-arkitekturen (inklusive behagelige) og sammenlignede selvfølgelig dette med lignende lagersystemer på Intel Xeon amd64-arkitekturprocessorer.

Vi vil i øvrigt tale mere detaljeret om testene, resultaterne og den fremtidige udvikling af lagersystemer på Elbrus på vores næste webinar “OkoloIT” den 15.10.2020. oktober 15 kl. 00:XNUMX. Du kan tilmelde dig via linket nedenfor.

Tilmelding til webinaret

Prøvestativ

Vi har lavet to stande. Begge stande består af en server, der kører Linux, forbundet via 16G FC-switche til to lagercontrollere, hvori 12 SAS SSD 960 GB-diske er installeret (11,5 TB "råkapacitet" eller 5,7 TB "brugbar" kapacitet, hvis vi bruger RAID -10).

Skematisk ser stativet således ud.

Elbrus VS Intel. Sammenligning af ydeevnen af ​​Aerodisk Vostok og Engine-lagringssystemer

Stand nr. 1 e2k (Elbrus)

Hardwarekonfigurationen er som følger:

  • Linux server (2xIntel Xeon E5-2603 v4 (6 kerner, 1,70Ghz), 64 GB DDR4, 2xFC adapter 16G 2 porte) – 1 stk.
  • Switch FC 16 G – 2 stk.
  • Lagersystem Aerodisk Vostok 2-E12 (2xElbrus 8C (8 kerner, 1,20Ghz), 32 GB DDR3, 2xFE FC-adapter 16G 2 port, 12xSAS SSD 960 GB) - 1 stk.

Stand nr. 2 amd64 (Intel)

Til sammenligning med en lignende konfiguration på e2k brugte vi en lignende lagringskonfiguration med en processor, der i egenskaber ligner amd64:

  • Linux server (2xIntel Xeon E5-2603 v4 (6 kerner, 1,70Ghz), 64 GB DDR4, 2xFC adapter 16G 2 porte) – 1 stk.
  • Switch FC 16 G – 2 stk.
  • Lagersystem Aerodisk Engine N2 (2xIntel Xeon E5-2603 v4 (6 kerner, 1,70Ghz), 32 GB DDR4, 2xFE FC-adapter 16G 2 port, 12xSAS SSD 960 GB) - 1 stk.

Vigtig bemærkning: Elbrus 8C-processorerne, der bruges i testen, understøtter kun DDR3 RAM, dette er selvfølgelig "dårligt, men ikke længe." Elbrus 8SV (vi har den ikke på lager endnu, men får den snart) understøtter DDR4.

Testmetode

Til at generere belastningen brugte vi det populære og tidstestede Flexible IO (FIO) program.

Begge lagersystemer er konfigureret i henhold til vores konfigurationsanbefalinger, baseret på kravene til høj ydeevne ved blokadgang, så vi bruger DDP (Dynamic Disk Pool) diskpuljer. For ikke at forvrænge testresultaterne deaktiverer vi komprimering, deduplikering og RAM-cache på begge lagersystemer.

8 D-LUN'er blev skabt i RAID-10, 500 GB hver, med en samlet brugbar kapacitet på 4 TB (dvs. ca. 70 % af den mulige brugbare kapacitet i denne konfiguration).

Grundlæggende og populære scenarier for brug af lagersystemer vil blive udført, især:

de første to tests emulerer driften af ​​et transaktions-DBMS. I denne gruppe af tests er vi interesserede i IOPS og latency.

1) Tilfældig læsning i små blokke 4k
en. Blokstørrelse = 4k
b. Læs/skriv = 100 %/0 %
c. Antal værker = 8
d. Kødybde = 32
e. Indlæs tegn = Fuld tilfældig

2) Tilfældig optagelse i små blokke 4k
en. Blokstørrelse = 4k
b. Læs/skriv = 0 %/100 %
c. Antal værker = 8
d. Kødybde = 32
e. Indlæs tegn = Fuld tilfældig

de to andre tests emulerer driften af ​​den analytiske del af DBMS. I denne gruppe af test er vi også interesserede i IOPS og latency.

3) Sekventiel læsning i små blokke 4k
en. Blokstørrelse = 4k
b. Læs/skriv = 100 %/0 %
c. Antal værker = 8
d. Kødybde = 32
e. Indlæs tegn = Sekventiel

4) Sekventiel optagelse i små blokke 4k
en. Blokstørrelse = 4k
b. Læs/skriv = 0 %/100 %
c. Antal værker = 8
d. Kødybde = 32
e. Indlæs tegn = Sekventiel

Den tredje gruppe af tests emulerer arbejdet med streaming af læsning (eksempel: online-udsendelser, gendannelse af sikkerhedskopier) og streaming af optagelse (eksempel: videoovervågning, optagelse af sikkerhedskopier). I denne gruppe af test er vi ikke længere interesseret i IOPS, men i MB/s og også latency.

5) Sekventiel læsning i store blokke på 128k
en. Blokstørrelse = 128k
b. Læs/skriv = 0 %/100 %
c. Antal værker = 8
d. Kødybde = 32
e. Indlæs tegn = Sekventiel

6) Sekventiel optagelse i store blokke på 128k
en. Blokstørrelse = 128k
b. Læs/skriv = 0 %/100 %
c. Antal værker = 8
d. Kødybde = 32
e. Indlæs tegn = Sekventiel

Hver test vil vare en time, eksklusive array-opvarmningstiden på 7 minutter.

Testresultater

Testresultaterne er opsummeret i to tabeller.

Elbrus 8S (SHD Aerodisk Vostok 2-E12)

Elbrus VS Intel. Sammenligning af ydeevnen af ​​Aerodisk Vostok og Engine-lagringssystemer

Intel Xeon E5-2603 v4 (lagersystem Aerodisk Engine N2)

Elbrus VS Intel. Sammenligning af ydeevnen af ​​Aerodisk Vostok og Engine-lagringssystemer

Resultaterne viste sig at være yderst interessante. I begge tilfælde gjorde vi god brug af lagersystemets processorkraft (70-90% udnyttelse), og i denne situation er fordele og ulemper ved begge processorer tydelige.

I begge tabeller er test, hvor processorer "føler sig selvsikre" og viser gode resultater, fremhævet med grønt, mens situationer, som processorer "ikke kan lide", er fremhævet med orange.

Hvis vi taler om tilfældig belastning i små blokke, så:

  • fra tilfældig læsnings synspunkt er Intel bestemt foran Elbrus, forskellen er 2 gange;
  • fra tilfældig optagelses synspunkt er det bestemt uafgjort, begge processorer viste omtrent lige og anstændige resultater.

I en sekventiel belastning i små blokke er billedet anderledes:

  • både ved læsning og skrivning er Intel væsentligt (2 gange) foran Elbrus. På samme tid, hvis Elbrus har en IOPS-indikator, der er lavere end Intels, men ser anstændig ud (200-300 tusind), så er der et åbenlyst problem med forsinkelser (de er tre gange højere end Intels). Konklusion, den nuværende version af Elbrus 8C "kan ikke lide" sekventielle belastninger i små blokke. Der er tydeligvis noget arbejde at gøre.

Men i en sekventiel belastning med store blokke er billedet præcis det modsatte:

  • begge processorer viste omtrent lige resultater i MB/s, men der er et MEN.... Elbrus' latency-ydelse er 10 (ti, Karl!!!) gange bedre (dvs. lavere) end en tilsvarende processor fra Intel (0,4/0,5 ms versus 5,1/6,5 ms). Først troede vi, at det var en fejl, så vi gentjekkede resultaterne, foretog en gentest, men gentesten viste det samme billede. Dette er en alvorlig fordel ved Elbrus (og e2k-arkitekturen generelt) i forhold til Intel (og følgelig amd64-arkitekturen). Lad os håbe, at denne succes vil blive videreudviklet.

Der er et andet interessant træk ved Elbrus, som en opmærksom læser kan være opmærksom på ved at se på bordet. Hvis man ser på forskellen mellem Intels læse- og skriveydeevne, så er læsning i alle tests i gennemsnit omkring 50%+ forud for skrivning. Dette er den norm, som alle (inklusive os) er vant til. Hvis du ser på Elbrus, er skriveindikatorerne meget tættere på læseindikatorerne; læsning er forud for skrivning, som regel med 10 - 30%, ikke mere.

Hvad betyder det? Det faktum, at Elbrus "virkelig elsker" at skrive, og det antyder til gengæld, at denne processor vil være meget nyttig i opgaver, hvor skrivning klart har forrang over læsning (hvem sagde Yarovayas lov?), hvilket også er en utvivlsom fordel e2k-arkitektur, og denne fordel skal udvikles.

Konklusioner og den nærmeste fremtid

Sammenlignende test af Elbrus og Intel mellemklasseprocessorer til datalagringsopgaver viste omtrent lige og lige værdige resultater, mens hver processor viste sine egne interessante funktioner.

Intel klarede sig markant bedre end Elbrus i tilfældig læsning i små blokke, såvel som i sekventiel læsning og skrivning i små blokke.

Når du skriver tilfældigt i små blokke, viser begge processorer lige resultater.

Med hensyn til latency ser Elbrus markant bedre ud end Intel i en streaming-belastning, dvs. i sekventiel læsning og skrivning i store blokke.

Derudover klarer Elbrus, i modsætning til Intel, både læse- og skrivebelastninger lige så godt, mens det med Intel altid er meget bedre at læse end at skrive.
Baseret på de opnåede resultater kan vi drage en konklusion om anvendeligheden af ​​Aerodisk Vostok-datalagringssystemer på Elbrus 8C-processoren i følgende opgaver:

  • informationssystemer med en overvægt af skriveoperationer;
  • filadgang;
  • online-udsendelser;
  • CCTV;
  • backup;
  • medieindhold.

MCST-teamet har stadig noget at arbejde på, men resultatet af deres arbejde er allerede synligt, hvilket naturligvis ikke kan andet end at glæde sig.

Disse tests blev udført på Linux-kernen til e2k version 4.19; i øjeblikket i beta-tests (i MCST, i Basalt SPO, og også her i Aerodisk) er der en Linux-kerne 5.4-e2k, hvori den bl.a. blevet seriøst redesignet skemalægger og mange optimeringer til højhastigheds-solid-state-drev. Specifikt for kerner i 5.x.x-grenen udgiver MCST JSC også en ny LCC-kompiler, version 1.25. Ifølge de foreløbige resultater, på den samme Elbrus 8C-processor, vil en ny kerne kompileret med en ny compiler, et kernemiljø, systemværktøjer og biblioteker og faktisk Aerodisk VOSTOK-softwaren give mulighed for en endnu mere betydelig stigning i ydeevnen. Og dette er uden udskiftning af udstyr - på samme processor og med samme frekvenser.

Vi forventer udgivelsen af ​​en version af Aerodisk VOSTOK baseret på kerne 5.4 mod slutningen af ​​året, og så snart arbejdet med den nye version er afsluttet, opdaterer vi testresultaterne og offentliggør dem også her.

Hvis vi nu vender tilbage til begyndelsen af ​​artiklen og besvarer spørgsmålet, hvem har så ret: pessimister, der siger, at Elbrus er "ingenting" og aldrig vil indhente de førende processorproducenter, eller optimister, der siger, at "de har allerede næsten fanget" op og vil snart overhale"? Hvis vi ikke går ud fra stereotyper og religiøse fordomme, men fra virkelige tests, så har optimisterne bestemt ret.

Elbrus viser allerede gode resultater sammenlignet med mid-level amd64-processorer. Elbrus 8-ke er naturligvis langt fra topmodellerne af serverprocessorer fra Intel eller AMD, men den var ikke rettet dertil; processorerne 16C og 32C vil blive frigivet til dette formål. Så taler vi.

Vi forstår, at der efter denne artikel vil være endnu flere spørgsmål om Elbrus, så vi besluttede at organisere endnu et online webinar "OkoloIT" for at besvare disse spørgsmål live.

Denne gang vil vores gæst være vicegeneraldirektøren for MCST-virksomheden, Konstantin Trushkin. Du kan tilmelde dig webinaret via nedenstående link.

Tilmelding til webinaret

Tak til jer alle, som altid ser vi frem til konstruktiv kritik og interessante spørgsmål.

Kilde: www.habr.com

Tilføj en kommentar