Elbrus VS Intel. Jämför prestanda hos Aerodisk Vostok och Engine lagringssystem

Elbrus VS Intel. Jämför prestanda hos Aerodisk Vostok och Engine lagringssystem

Hej alla. Vi fortsätter att introducera dig till Aerodisk VOSTOK-datalagringssystemet, baserat på den ryska Elbrus 8C-processorn.

I den här artikeln kommer vi (som utlovat) att analysera i detalj ett av de mest populära och intressanta ämnena relaterade till Elbrus, nämligen produktivitet. Det finns ganska många spekulationer om Elbrus prestanda, och absolut polära sådana. Pessimisterna säger att Elbrus produktivitet nu är "ingenting", och det kommer att ta årtionden att komma ikapp de "bästa" producenterna (dvs aldrig i den nuvarande verkligheten). Å andra sidan säger optimister att Elbrus 8C redan visar goda resultat, och under de närmaste åren, med lanseringen av nya versioner av processorer (Elbrus 16C och 32C), kommer vi att kunna "komma ikapp och köra om" världens ledande processortillverkare.

Vi på Aerodisk är praktiska människor, så vi tog den enklaste och mest förståeliga (för oss) vägen: testa, registrera resultaten och först därefter dra slutsatser. Som ett resultat genomförde vi ett ganska stort antal tester och upptäckte ett antal funktioner i Elbrus 8C e2k-arkitekturen (inklusive trevliga sådana) och jämförde naturligtvis detta med liknande lagringssystem på Intel Xeon amd64-arkitekturprocessorer.

Förresten, vi kommer att prata mer i detalj om testerna, resultaten och den framtida utvecklingen av lagringssystem på Elbrus på vårt nästa webinar "OkoloIT" den 15.10.2020 oktober 15 kl 00:XNUMX. Du kan registrera dig via länken nedan.

Anmälan till webinariet

Testbänk

Vi har skapat två montrar. Båda stativen består av en Linux-server ansluten via 16G FC-switchar till två lagringskontroller, som har 12 SAS SSD 960 GB-diskar installerade (11,5 TB "råkapacitet" eller 5,7 TB "användbar" kapacitet, om vi använder RAID-10) .

Schematiskt ser stativet ut så här.

Elbrus VS Intel. Jämför prestanda hos Aerodisk Vostok och Engine lagringssystem

Stativ nr 1 e2k (Elbrus)

Hårdvarukonfigurationen är som följer:

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

Stand nr 2 amd64 (Intel)

För jämförelse med en liknande konfiguration på e2k använde vi en liknande lagringskonfiguration med en processor som liknar amd64:s egenskaper:

  • Linux-server (2xIntel Xeon E5-2603 v4 (6 kärnor, 1,70Ghz), 64 GB DDR4, 2xFC-adapter 16G 2 portar) – 1 st.
  • Switch FC 16 G – 2 st.
  • Lagringssystem Aerodisk Engine N2 (2xIntel Xeon E5-2603 v4 (6 kärnor, 1,70Ghz), 32 GB DDR4, 2xFE FC-adapter 16G 2 portar, 12xSAS SSD 960 GB) - 1 st.

Viktig anmärkning: Elbrus 8C-processorerna som används i testet stöder endast DDR3 RAM, detta är naturligtvis "dåligt, men inte länge." Elbrus 8SV (vi har den inte i lager än, men kommer att ha den snart) stöder DDR4.

Testmetodik

För att generera belastningen använde vi det populära och tidstestade programmet Flexible IO (FIO).

Båda lagringssystemen är konfigurerade enligt våra konfigurationsrekommendationer, baserat på kraven på hög prestanda vid blockåtkomst, så vi använder DDP (Dynamic Disk Pool) diskpooler. För att inte förvränga testresultaten inaktiverar vi komprimering, deduplicering och RAM-cache på båda lagringssystemen.

8 D-LUN skapades i RAID-10, 500 GB vardera, med en total användbar kapacitet på 4 TB (dvs ungefär 70 % av den möjliga användbara kapaciteten för denna konfiguration).

Grundläggande och populära scenarier för användning av lagringssystem kommer att exekveras, särskilt:

de två första testen emulerar driften av ett transaktions-DBMS. I denna grupp av tester är vi intresserade av IOPS och latens.

1) Slumpmässig avläsning i små block 4k
a. Blockstorlek = 4k
b. Läs/skriv = 100%/0%
c. Antal verk = 8
d. Ködjup = 32
e. Ladda tecken = Full Random

2) Slumpmässig inspelning i små block 4k
a. Blockstorlek = 4k
b. Läs/skriv = 0%/100%
c. Antal verk = 8
d. Ködjup = 32
e. Ladda tecken = Full Random

de andra två testerna emulerar driften av den analytiska delen av DBMS. I denna grupp av tester är vi också intresserade av IOPS och latens.

3) Sekventiell avläsning i små block 4k
a. Blockstorlek = 4k
b. Läs/skriv = 100%/0%
c. Antal verk = 8
d. Ködjup = 32
e. Ladda tecken = Sekventiell

4) Sekventiell inspelning i små block 4k
a. Blockstorlek = 4k
b. Läs/skriv = 0%/100%
c. Antal verk = 8
d. Ködjup = 32
e. Ladda tecken = Sekventiell

Den tredje gruppen av tester emulerar arbetet med strömmande läsning (exempel: onlinesändningar, återställning av säkerhetskopior) och strömmande inspelning (exempel: videoövervakning, inspelning av säkerhetskopior). I denna grupp av tester är vi inte längre intresserade av IOPS, utan av MB/s och även latens.

5) Sekventiell avläsning i stora block på 128k
a. Blockstorlek = 128k
b. Läs/skriv = 0%/100%
c. Antal verk = 8
d. Ködjup = 32
e. Ladda tecken = Sekventiell

6) Sekventiell inspelning i stora block på 128k
a. Blockstorlek = 128k
b. Läs/skriv = 0%/100%
c. Antal verk = 8
d. Ködjup = 32
e. Ladda tecken = Sekventiell

Varje test kommer att pågå i en timme, exklusive arrayuppvärmningstiden på 7 minuter.

Testresultat

Testresultaten sammanfattas i två tabeller.

Elbrus 8S (SHD Aerodisk Vostok 2-E12)

Elbrus VS Intel. Jämför prestanda hos Aerodisk Vostok och Engine lagringssystem

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

Elbrus VS Intel. Jämför prestanda hos Aerodisk Vostok och Engine lagringssystem

Resultaten visade sig vara oerhört intressanta. I båda fallen utnyttjade vi lagringssystemets processorkraft (70-90% utnyttjande), och i denna situation är för- och nackdelarna med båda processorerna tydligt uppenbara.

I båda tabellerna är tester där processorer "känner sig säkra" och visar bra resultat markerade med grönt, medan situationer som processorer "inte gillar" är markerade med orange.

Om vi ​​talar om slumpmässig belastning i små block, då:

  • ur synvinkel av slumpmässig läsning är Intel verkligen före Elbrus, skillnaden är 2 gånger;
  • ur synvinkel av slumpmässig inspelning är det definitivt oavgjort, båda processorerna visade ungefär lika och anständiga resultat.

I en sekventiell belastning i små block är bilden annorlunda:

  • både vid läsning och skrivning ligger Intel betydligt (2 gånger) före Elbrus. Samtidigt, om Elbrus har en IOPS-indikator som är lägre än Intels, men ser anständig ut (200-300 tusen), så finns det ett uppenbart problem med förseningar (de är tre gånger högre än Intels). Slutsats, den nuvarande versionen av Elbrus 8C "gillar verkligen inte" sekventiella belastningar i små block. Det är klart att det finns en del att göra.

Men i en sekventiell belastning med stora block är bilden exakt den motsatta:

  • båda processorerna visade ungefär lika resultat i MB/s, men det finns ett MEN.... Elbrus latensprestanda är 10 (tio, Karl!!!) gånger bättre (dvs lägre) än för en liknande processor från Intel (0,4/0,5 ms mot 5,1/6,5 ms). Först trodde vi att det var ett fel, så vi kontrollerade resultaten igen, gjorde ett omtest, men omtestet visade samma bild. Detta är en allvarlig fördel med Elbrus (och e2k-arkitekturen i allmänhet) jämfört med Intel (och följaktligen amd64-arkitekturen). Låt oss hoppas att denna framgång kommer att utvecklas ytterligare.

Det finns en annan intressant egenskap hos Elbrus, som en uppmärksam läsare kan uppmärksamma genom att titta på bordet. Om man tittar på skillnaden mellan Intels läs- och skrivprestanda, så ligger läsningen i alla tester före skrivandet i genomsnitt med cirka 50%+. Detta är normen som alla (inklusive vi) är vana vid. Om du tittar på Elbrus är skrivindikatorerna mycket närmare läsindikatorerna; läsning är före skrivning, som regel med 10 - 30%, inte mer.

Vad betyder det här? Det faktum att Elbrus "verkligen älskar" att skriva, och detta i sin tur antyder att den här processorn kommer att vara mycket användbar i uppgifter där skrivande klart överväger läsning (vem sa Yarovayas lag?), vilket också är en otvivelaktig fördel med e2k-arkitektur, och denna fördel måste utvecklas.

Slutsatser och den närmaste framtiden

Jämförande tester av Elbrus och Intel mellanklassprocessorer för datalagringsuppgifter visade ungefär lika och lika värdiga resultat, medan varje processor visade sina egna intressanta egenskaper.

Intel överträffade Elbrus kraftigt i slumpmässig läsning i små block, såväl som i sekventiell läsning och skrivning i små block.

När du skriver slumpmässigt i små block visar båda processorerna lika resultat.

Sett till latens ser Elbrus betydligt bättre ut än Intel i en streamingbelastning, d.v.s. i sekventiell läsning och skrivning i stora block.

Dessutom klarar Elbrus, till skillnad från Intel, lika bra både läs- och skrivbelastningar, medan det med Intel alltid är mycket bättre att läsa än att skriva.
Baserat på de erhållna resultaten kan vi dra en slutsats om tillämpligheten av Aerodisk Vostok-datalagringssystem på Elbrus 8C-processorn i följande uppgifter:

  • informationssystem med övervägande skrivoperationer;
  • filåtkomst;
  • online-sändningar;
  • CCTV;
  • säkerhetskopiering;
  • medieinnehåll.

MCST-teamet har fortfarande något att jobba på, men resultatet av deras arbete är redan synligt, vilket naturligtvis inte kan annat än glädjas.

Dessa tester utfördes på Linux-kärnan för e2k version 4.19, för närvarande i betatester (i MCST, i Basalt SPO, och även här i Aerodisk) finns en Linux-kärna 5.4-e2k, i vilken den bl.a. blivit seriöst omdesignad schemaläggare och många optimeringar för höghastighets Solid State-enheter. Speciellt för kärnor i 5.x.x-grenen släpper MCST JSC också en ny LCC-kompilator, version 1.25. Enligt preliminära resultat, på samma Elbrus 8C-processor, kommer en ny kärna kompilerad med en ny kompilator, en kärnmiljö, systemverktyg och bibliotek och faktiskt Aerodisk VOSTOK-programvaran att möjliggöra en ännu mer betydande ökning av prestanda. Och detta är utan att byta ut utrustning - på samma processor och med samma frekvenser.

Vi förväntar oss att släppa en version av Aerodisk VOSTOK baserad på kärnan 5.4 mot slutet av året, och så fort arbetet med den nya versionen är klart kommer vi att uppdatera testresultaten och även publicera dem här.

Om vi ​​nu återvänder till början av artikeln och svarar på frågan, vem har rätt: pessimister som säger att Elbrus är "ingenting" och aldrig kommer ikapp de ledande processortillverkarna, eller optimister som säger att "de nästan har hunnit ikapp" upp och kommer snart att köra om"? Om vi ​​inte utgår från stereotyper och religiösa fördomar, utan från verkliga tester, så har optimisterna definitivt rätt.

Elbrus visar redan goda resultat jämfört med mid-level amd64-processorer. Elbrus 8-ke är naturligtvis långt ifrån toppmodellerna av serverprocessorer från Intel eller AMD, men den var inte inriktad dit, processorerna 16C och 32C kommer att släppas för detta ändamål. Då pratar vi.

Vi förstår att efter den här artikeln kommer det att finnas ännu fler frågor om Elbrus, så vi bestämde oss för att organisera ytterligare ett online-webinar "OkoloIT" för att svara på dessa frågor live.

Den här gången kommer vår gäst att vara den biträdande generaldirektören för MCST-företaget, Konstantin Trushkin. Du kan anmäla dig till webinariet via länken nedan.

Anmälan till webinariet

Tack alla, som alltid, vi ser fram emot konstruktiv kritik och intressanta frågor.

Källa: will.com

Lägg en kommentar