Dell EMC Ready Solution til HPC PixStor-lagring - NVMe-niveau

Summary: Blog for en HPC-storageløsningskomponent, herunder arkitektur sammen med ydeevneevaluering.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Forfattet af Mario Gallegos fra HPC og AI Innovation Lab i juni 2020
Blog for en HPC-storageløsningskomponent, herunder arkitektur sammen med ydeevneevaluering.

Resolution

Dell EMC Ready Solution til HPC PixStor-lagring

            NVMe-niveau

Indholdsfortegnelse

Indledning. 1

Løsningsarkitektur. 1

Løsningskomponenter. 1

Karakterisering af ydeevne. 1

Sekventielle IOzone Performance N-klienter til N-filer. 1

Sekventielle IOR Performance N-klienter til 1 fil. 1

Tilfældige små blokke IOzone Performance N-klienter til N-filer. 1

Metadataydeevne med MDtest ved hjælp af 4 KiB-filer. 1

Konklusioner og fremtidigt arbejde. 1

 

Indledning

Nutidens HPC-miljøer har øget kravene til meget hurtig storage, og med det højere antal CPU'er, hurtigere netværk og større hukommelse var storage ved at blive flaskehalsen i mange workloads. Disse meget efterspurgte HPC-krav dækkes typisk af PFS (Parallel File Systems), der giver samtidig adgang til en enkelt fil eller et sæt filer fra flere noder, hvilket meget effektivt og sikkert distribuerer data til flere LUN'er på tværs af flere servere. Disse filsystemer er normalt roterende medier baseret på at give den højeste kapacitet til den laveste pris. Men oftere og oftere kan hastigheden og ventetiden for roterende medier ikke følge med kravene til mange moderne HPC-workloads, hvilket kræver brug af flashteknologi i form af burstbuffere, hurtigere niveauer eller endda meget hurtig scratch, lokal eller distribueret. Den DellEMC-parate løsning til HPC PixStor Storagebruger NVMe-noder som komponent til at dække sådanne nye høje båndbreddekrav ud over at være fleksibel, skalerbar, effektiv og pålidelig.

Løsningsarkitektur

Denne blog er en del af en serie af PFS-løsninger (Parallel File System) til HPC-miljøer, især til DellEMC Ready Solution til HPC PixStor Storage, hvor DellEMC PowerEdge R640-servere med NVMe-drev bruges som et hurtigt flash-baseret niveau.
PixStor PFS-løsningen inkluderer det udbredte General Parallel File System, også kendt som Spectrum Scale. ArcaStream indeholder også mange andre softwarekomponenter til avanceret analyse, forenklet administration og overvågning, effektiv filsøgning, avancerede gatewayfunktioner og mere.

De NVMe-noder, der præsenteres i denne blog, giver et meget højtydende flash-baseret niveau til PixStor-løsningen. Ydeevne og kapacitet for dette NVMe-niveau kan skaleres ud af yderligere NVMe-noder. Øget kapacitet opnås ved at vælge de relevante NVMe-enheder, der understøttes i PowerEdge R640.

Figur 1 viser referencearkitekturen, der viser en løsning med 4 NVMe-noder ved hjælp af det krævende metadatamodul, som håndterer alle metadata i den testede konfiguration. Årsagen er, at disse NVMe-noder i øjeblikket kun blev brugt som datalagermål. NVMe-noderne kan dog også bruges til at gemme data og metadata eller endda som et hurtigere flash-alternativ til det efterspurgte metadatamodul, hvis ekstreme metadatakrav kræver det. Disse konfigurationer til NVMe-noderne blev ikke testet som en del af dette arbejde, men vil blive testet i fremtiden.

 

SLN321889_en_US__1image001(8)

Figur 1 Referencearkitektur

Løsningskomponenter

Denne løsning bruger de nyeste skalerbare Intel Xeon 2. generations Xeon-CPU'er, også kendt som Cascade Lake-CPU'er og den hurtigste tilgængelige RAM (2933 MT/s), bortset fra administrationsnoderne for at holde dem omkostningseffektive. Derudover blev løsningen opdateret til den nyeste version af PixStor (5.1.3.1), der understøtter RHEL 7.7 og OFED 5.0, som vil være de understøttede softwareversioner på udgivelsestidspunktet.

Hver NVMe-node har otte Dell P4610-enheder, der er konfigureret som otte RAID 10-enheder på tværs af et par servere ved hjælp af en NVMe over Fabric-løsning for at tillade dataredundans, ikke kun på enhedsniveau, men også på serverniveau. Når der desuden går data ind eller ud af en af disse RAID10-enheder, bruges alle 16 drev på begge servere, hvilket øger båndbredden for adgangen til båndbredden for alle drevene. Derfor er den eneste begrænsning for disse komponenter, at de skal sælges og bruges parvis. Alle NVMe-drev, der understøttes af PowerEdge R640, kan bruges i denne løsning, men P4610 har en sekventiel båndbredde på 3200 MB/s til både læsning og skrivning samt høje vilkårlige IOPS-specifikationer, hvilket er gode funktioner, når man forsøger at skalere estimering af antallet af par, der er nødvendige for at opfylde kravene i dette flashniveau.

Hver R640-server har to HCA'er: Mellanox ConnectX-6 Single Port VPI HDR100, der bruges som EDR 100 Gb IB-forbindelser. NVMe-noderne er dog klar til at understøtte HDR100-hastigheder, når de bruges sammen med HDR-kabler og -switche. Test af HDR100 på disse noder udsættes som en del af HDR100-opdateringen for hele PixStor-løsningen. Begge CX6-grænseflader bruges til at synkronisere data til RAID 10 (NVMe over fabric) og som tilslutningsmulighed for filsystemet. Derudover giver de hardwareredundans ved adapteren, porten og kablet. For redundans på switchniveau kræves dobbeltport CX6 VPI-adaptere, men de skal anskaffes som S&P-komponenter.
For at karakterisere ydeevnen for NVMe-noder blev der fra systemet afbildet i figur 1 kun brugt metadatamodulet med høj efterspørgsel og NVMe-noderne.

Tabel 1 indeholder en liste over hovedkomponenter i løsningen. Fra listen over drev, der understøttes i ME4024, blev 960 Gb SSD'er brugt til metadata og var dem, der blev brugt til karakterisering af ydeevnen, og hurtigere drev kan give bedre vilkårlige IOP'er og kan forbedre oprettelses-/fjernelsesmetadatahandlinger. Alle NVMe-enheder, der understøttes på PowerEdge R640, understøttes til NVMe-noderne.

Tabel 1 Komponenter, der skal anvendes på frigivelsestidspunktet, og komponenter, der anvendes i prøvestanden

Løsningskomponent

Ved frigivelse

Interne tilslutningsmuligheder

Dell Networking S3048-ON Gigabit Ethernet

Undersystem til datastorage

1 x til 4 x Dell EMC PowerVault ME4084

1 x til 4x Dell EMC PowerVault ME484 (én pr. ME4084)
80-12 TB 3,5" NL SAS3-harddiskdrev
Muligheder for 900 GB @15K, 1,2 TB @10K, 1,8 TB @10K, 2,4 TB @10K,
4 TB NLS, 8 TB NLS, 10 TB NLS, 12 TB NLS.
    8 LUN'er, lineær 8+2 RAID 6, stykstørrelse 512 KB.
4 x 1,92 TB SAS3 SSD er til metadata – 2 x RAID 1 (eller 4 – globale harddiskreservedele, hvis der anvendes et valgfrit High Demand Metadata-modul)

Valgfrit undersystem til metadatastorage med høj efterspørgsel

1 x til 2 x Dell EMC PowerVault ME4024 (4 x ME4024 hvis nødvendigt, kun store konfigurationer)
24 x 960 GB 2,5" SSD SAS3-drev (valg 480 GB, 960 GB, 1,92 TB, 3,84 TB)
12 LUN'er, lineær RAID 1.

RAID-storagecontrollere

12 Gbps SAS

Processor

NVMe-noder

2x Intel Xeon Gold 6230 2,1 GHz, 20 kerner/40 t
10,4 GT/s, 27,5 MB cache, Turbo, HT (125 W) DDR4-2933

Metadata med stor efterspørgsel

Storagenode

Administrationsnode

2x Intel Xeon Gold 5220 2,2 GHz, 18 kerner/36 T
10,4 GT/s, 24,75 MB cache, Turbo, HT (125 W) DDR4-2666

Hukommelse

NVMe-noder

12 x 16 GiB 2933 MT/s RDIMM er (192 GiB)

Metadata med stor efterspørgsel

Storagenode

Administrationsnode

12 x 16 GB DIMM-moduler, 2666 MT/sek. (192 GiB)

Operativsystem

CentOS 7.7

Kerneversion

3.10.0-1062.12.1.el7.x86_64

PixStor-software

5.1.3.1

Software til filsystem

Spektrumskala (GPFS) 5.0.4-3 med NVMesh 2.0.1

Højtydende netværkstilslutningsmuligheder

NVMe-noder: 2x ConnectX-6 InfiniBand ved hjælp af EDR/100 GbE
Andre servere: Mellanox ConnectX-5 InfiniBand EDR/100 GbE og 10 GbE

Switch med høj ydeevne

2 x Mellanox SB7800

OFED-version

Mellanox OFED 5.0-2.1.8.0

Lokale diske (OS & analyse/overvågning)

Alle servere undtagen de anførte                NVMe-noder

3 x 480 GB SSD SAS3 (RAID1 + HS) til operativsystemet3 x 480 GB SSD SAS3 (RAID1 + HS) til operativsystemet

PERC H730P RAID-controller                  PERC H740P RAID-controller

Administrationsnode

3 x 480 GB SSD SAS3 (RAID1 + HS) til operativsystemer med PERC H740P RAID-controller

Systemadministration

iDRAC 9 Enterprise + DellEMC OpenManage

 

Karakterisering af ydeevne

Til karakterisering af denne nye Ready Solution-komponent blev følgende benchmarks anvendt:

        ·IOzone N til N sekventiel
 
       ·IOR N til 1 sekventiel
 
       ·IOzone tilfældig
 
       ·MDtest

For alle benchmarks, der er anført ovenfor, havde testbænken klienterne som beskrevet i tabel 2 nedenfor. Da antallet af beregningsnoder, der var tilgængelige til test, kun var 16, når der krævedes et større antal tråde, var disse tråde ligeligt fordelt på beregningsnoderne (dvs. 32 tråde = 2 tråde pr. node, 64 tråde = 4 tråde pr. node, 128 tråde = 8 tråde pr. node, 256 tråde = 16 tråde pr. node, 512 tråde = 32 tråde pr. node, 1024 tråde = 64 tråde pr. node). Hensigten var at simulere et større antal samtidige klienter med det begrænsede antal tilgængelige beregningsnoder. Da nogle benchmarks understøtter et stort antal tråde, blev der anvendt en maksimal værdi på op til 1024 (specificeret for hver test), samtidig med at overdreven kontekstskift og andre relaterede bivirkninger blev undgået i at påvirke ydeevneresultaterne.

 

Tabel 2 Klienttestbænk

Antal klientnoder

16

Klientnode

C6320

Processorer pr. klientnode

2 x Intel(R) Xeon(R) Gold E5-2697v4, 18 kerner @ 2,30 GHz

Hukommelse pr. klientnode

8 x 16 GiB 2400 MT/s RDIMM er (128 GiB)

BIOS

2.8.0

OS-kerne

3.10.0-957.10.1

Software til filsystem

Spektrumskala (GPFS) 5.0.4-3 med NVMesh 2.0.1

 

Sekventielle IOzone Performance N-klienter til N-filer

Sekventiel N-klient til N-filydeevne blev målt med IOzone version 3.487. De udførte tests varierede fra enkelt gevind op til 1024 tråde i trin af kræfter på to.

Cacheeffekter på serverne blev minimeret ved at indstille GPFS-sidepuljen justerbar til 16 GiB og bruge filer, der er større end to gange så store. Det er vigtigt at bemærke, at for GPFS indstiller tunable den maksimale mængde hukommelse, der bruges til caching af data, uanset mængden af RAM installeret og ledig. Det er også vigtigt at bemærke, at mens blokstørrelsen for store sekventielle overførsler i tidligere DellEMC HPC-løsninger er 1 MiB, blev GPFS formateret med 8 MiB-blokke, og derfor bruges denne værdi på benchmarket for optimal ydeevne. Det kan se for stort ud og tilsyneladende spilde for meget plads, men GPFS bruger underblokallokering for at forhindre denne situation. I den nuværende konfiguration blev hver blok opdelt i 256 underblokke på 32 KiB hver.

Følgende kommandoer blev brugt til at udføre benchmarket for skrivninger og læsninger, hvor $Threads var variablen med antallet af anvendte tråde (1 til 1024 forøget i beføjelser på to), og trådliste var den fil, der tildelte hver tråd på en anden node ved hjælp af round robin for at sprede dem homogent på tværs af de 16 beregningsnoder.

For at undgå mulige datacacheeffekter fra klienterne var filernes samlede datastørrelse dobbelt så stor som den samlede mængde RAM i de anvendte klienter. Det vil sige, da hver klient har 128 GiB RAM, for trådtællinger lig med eller over 16 tråde var filstørrelsen 4096 GiB divideret med antallet af tråde (variablen $Size nedenfor blev brugt til at administrere denne værdi). I de tilfælde med mindre end 16 tråde (hvilket indebærer, at hver tråd kørte på en anden klient), blev filstørrelsen fastsat til dobbelt så meget hukommelse pr. klient eller 256 GiB.

iozone -i0 -c -e -w -r 8M -s $ G -t $Threads -+n -+m ./threadlist
iozone -i1 -c -e -w -r 8M -s $ G -t $Threads -+n -+m ./threadlist

SLN321889_en_US__2image002(1)

Figur 2 N til N sekventiel ydeevne

Fra resultaterne kan vi observere, at skriveydelsen stiger med antallet af anvendte tråde og derefter når et plateau på omkring 64 tråde for skrivninger og 128 tråde for læsninger. Derefter stiger læseydelsen også hurtigt med antallet af tråde og forbliver derefter stabil, indtil det maksimale antal tråde, som IOzone tillader, nås, og derfor er stor filsekventiel ydeevne stabil, selv for 1024 samtidige klienter. Skriveydelsen falder ca. 10 % ved 1024 tråde. Da klientklyngen har mindre end dette antal kerner, er det imidlertid usikkert, om faldet i ydeevne skyldes swapping og lignende faste omkostninger, der ikke observeres i roterende medier (da NVMe-ventetiden er meget lav sammenlignet med roterende medier), eller om RAID 10-datasynkroniseringen er ved at blive en flaskehals. Der er behov for flere klienter for at afklare dette punkt. En anomali på læsningerne blev observeret ved 64 tråde, hvor ydeevnen ikke blev skaleret med den hastighed, der blev observeret for tidligere datapunkter, og derefter på det næste datapunkt bevæger sig til en værdi meget tæt på den vedvarende ydeevne. Mere test er nødvendig for at finde årsagen til en sådan anomali, men er uden for rammerne af denne blog.

Den maksimale læseydelse for læsninger var under den teoretiske ydeevne for NVMe-enhederne (~ 102 GB / s) eller ydeevnen for EDR-links, selv hvis det antages, at et link mest blev brugt til NVMe over strukturtrafik (4x EDR BW ~ 96 GB / s).
Dette er dog ikke en overraskelse, da hardwarekonfigurationen ikke er afbalanceret med hensyn til NVMe-enhederne og IB HCA'erne under hver CPU-stik. Den ene CX6-adapter er under CPU1, mens CPU2 har alle NVMe-enhederne og den anden CX6-adapter. Enhver storagetrafik, der bruger den første HCA, skal bruge UPI'erne til at få adgang til NVMe-enhederne. Derudover skal enhver kerne i CPU1, der bruges, få adgang til enheder eller hukommelse, der er tildelt CPU2, så datalokaliteten lider, og UPI-links bruges. Det kan forklare reduktionen for den maksimale ydeevne sammenlignet med NVMe-enhedernes maksimale ydeevne eller linjehastigheden for CX6 HCA'er. Alternativet til at rette op på denne begrænsning er at have en afbalanceret hardwarekonfiguration, hvilket indebærer at reducere densiteten til halvdelen ved at bruge en R740 med fire x16-slots og bruge to x16 PCIe-ekspandere til at fordele NVMe-enheder ligeligt på to CPU'er og have en CX6 HCA under hver CPU.

Sekventielle IOR Performance N-klienter til 1 fil

Sekventielle N-klienter til en enkelt delt filydeevne blev målt med IOR version 3.3.0, assisteret af OpenMPI v4.0.1 for at køre benchmarket over de 16 beregningsnoder. De udførte tests varierede fra en tråd, op til 512 tråde, da der ikke var nok kerner til 1024 eller flere tråde. Denne benchmarktest brugte 8 MiB-blokke for optimal ydeevne. Den tidligere præstationstestsektion har en mere komplet forklaring på, hvorfor det betyder noget.

Datacacheeffekter blev minimeret ved at indstille GPFS-sidepuljen justerbar til 16 GiB, og den samlede filstørrelse var dobbelt så stor som den samlede mængde RAM i de anvendte klienter. Det vil sige, da hver klient har 128 GiB RAM, for trådtællinger lig med eller over 16 tråde var filstørrelsen 4096 GiB, og en lige stor mængde af denne total blev divideret med antallet af tråde (variablen $Size nedenfor blev brugt til at administrere denne værdi). I de tilfælde med mindre end 16 tråde (hvilket indebærer, at hver tråd kørte på en anden klient), var filstørrelsen dobbelt så meget hukommelse pr. klient, der blev brugt gange antallet af tråde, eller med andre ord blev hver tråd bedt om at bruge 256 GiB.

Følgende kommandoer blev brugt til at udføre benchmarket for skrivninger og læsninger, hvor $Threads var variablen med antallet af anvendte tråde (1 til 1024 øget i beføjelser på to), og my_hosts.$Threads er den tilsvarende fil, der tildelte hver tråd på en anden node ved hjælp af round robin for at sprede dem homogent på tværs af de 16 beregningsnoder.

mpirun --allow-run-as-root -np $Threads --hostfile my_hosts.$Threads --mca btl_openib_allow_ib 1 --mca pml ^ucx --oversubscribe --præfiks /mmfs1/perftest/ompi /mmfs1/perftest/lanl_ior/bin/ior -a POSIX -v -i 1 -d 3 -e -k -o /mmfs1/perftest/tst.file -w -s 1 -t 8m -b $ G

mpirun --allow-run-as-root -np $Threads --hostfile my_hosts.$Threads --mca btl_openib_allow_ib 1 --mca pml ^ucx --oversubscribe --præfiks /mmfs1/perftest/ompi /mmfs1/perftest/lanl_ior/bin/ior -a POSIX -v -i 1 -d 3 -e -k -o /mmfs1/perftest/tst.file -r -s 1 -t 8m -b $ G

 

SLN321889_en_US__3image003(5)

Figur 3 N til 1 Sekventiel ydeevne

Fra resultaterne kan vi observere, at læse- og skriveydelsen er høj uanset det implicitte behov for låsemekanismer, da alle tråde har adgang til den samme fil. Ydeevnen stiger igen meget hurtigt med antallet af anvendte tråde og når derefter et plateau, der er relativt stabilt for læsninger og skrivninger hele vejen til det maksimale antal tråde, der bruges på denne test. Bemærk, at den maksimale læseydelse var 51,6 GB/s ved 512 tråde, men plateauet i ydeevne er nået til omkring 64 tråde. Bemærk ligeledes, at den maksimale skriveydelse på 34,5 GB/s blev opnået ved 16 tråde og nåede et plateau, der kan observeres indtil det maksimale antal anvendte tråde.

Tilfældige små blokke IOzone Performance N-klienter til N-filer

Ydeevnen for tilfældige N-klienter til N-filer blev målt med IOzone version 3.487. De udførte tests varierede fra enkelt gevind op til 1024 tråde i trin af kræfter på to.

De udførte tests varierede fra enkelttråde op til 512 tråde, da der ikke var nok klientkerner til 1024 tråde. Hver tråd brugte en anden fil, og trådene blev tildelt round robin på klientnoderne. Denne benchmarktest brugte 4 KiB-blokke til at efterligne små blokke trafik og bruge en kødybde på 16. Resultater fra den store størrelsesløsning og kapacitetsudvidelsen sammenlignes.

Cacheeffekter blev igen minimeret ved at indstille GPFS-sidepuljen justerbar til 16 GiB, og for at undgå mulige datacacheeffekter fra klienterne var filernes samlede datastørrelse dobbelt så stor som den samlede mængde RAM i de anvendte klienter. Det vil sige, da hver klient har 128 GiB RAM, for trådtællinger lig med eller over 16 tråde var filstørrelsen 4096 GiB divideret med antallet af tråde (variablen $Size nedenfor blev brugt til at administrere denne værdi). I de tilfælde med mindre end 16 tråde (hvilket indebærer, at hver tråd kørte på en anden klient), blev filstørrelsen fastsat til dobbelt så meget hukommelse pr. klient eller 256 GiB.

iozone -i0 -I -c -e -w -r 8M -s $ G -t $Threads -+n -+m ./nvme_threadlist <= Opret filerne sekventielt
iozone -i2 -I -c -O -w -r 4k -s $ G -t $Threads -+n -+m ./nvme_threadlist <= Udfør de vilkårlige læsninger og skrivninger.

 

SLN321889_en_US__4image004(1)

Figur 4 N til N tilfældig ydeevne

Fra resultaterne kan vi observere, at skriveydelsen starter med en høj værdi på 6K IOps og stiger støt op til 1024 tråde, hvor det ser ud til at nå et plateau med over 5M IOPS, hvis flere tråde kunne bruges. Læseydelse starter på den anden side ved 5K IOPS'er og øger ydeevnen støt med antallet af anvendte tråde (husk, at antallet af tråde fordobles for hvert datapunkt) og når den maksimale ydeevne på 7.3M IOPS ved 1024 tråde uden tegn på at nå et plateau. Brug af flere tråde vil kræve mere end de 16 beregningsnoder for at undgå ressourcesult og overdreven bytte, der kan sænke den tilsyneladende ydeevne, hvor NVMe-noderne faktisk kunne opretholde ydeevnen.

Metadataydeevne med MDtest ved hjælp af 4 KiB-filer

Metadataydeevnen blev målt med MDtest version 3.3.0, assisteret af OpenMPI v4.0.1 til at køre benchmarket over de 16 beregningsnoder. De udførte tests varierede fra enkelt gevind op til 512 tråde. Benchmarket blev kun brugt til filer (ingen katalogmetadata), der fik antallet af oprettelser, statistikker, læsninger og fjernelser, som løsningen kan håndtere, og resultaterne blev kontrasteret med løsningen i stor størrelse.

Det valgfri High Demand Metadata Module blev brugt, men med et enkelt ME4024-array, selv at den store konfiguration og testet i dette arbejde blev udpeget til at have to ME4024'er. Årsagen til at bruge dette metadatamodul er, at disse NVMe-noder i øjeblikket kun bruges som lagermål for data. Noderne kan dog bruges til at gemme data og metadata eller endda som et flash-alternativ til metadatamodulet med høj efterspørgsel, hvis ekstreme metadatakrav kræver det. Disse konfigurationer blev ikke testet som en del af dette arbejde.

Da det samme High Demand Metadata-modul er blevet brugt til tidligere benchmarking af DellEMC Ready Solution til HPC PixStor Storage-løsningen, vil metadataresultaterne være meget ens sammenlignet med tidligere blogresultater. Af den grund blev undersøgelsen med tomme filer ikke udført, og i stedet blev 4 KiB-filer brugt. Da 4KiB-filer ikke kan passe ind i en inode sammen med metadataoplysningerne, vil NVMe-noder blive brugt til at gemme data for hver fil. Derfor kan MDtest give en grov idé om små filers ydeevne til læsninger og resten af metadataoperationerne.

Følgende kommando blev brugt til at udføre benchmarket, hvor $Threads var variablen med antallet af anvendte tråde (1 til 512 øget i beføjelser på to), og my_hosts.$Threads er den tilsvarende fil , der tildelte hver tråd på en anden knude ved hjælp af round robin til at sprede dem homogent på tværs af de 16 beregningsnoder. I lighed med Random IO-benchmarket var det maksimale antal tråde begrænset til 512, da der ikke er nok kerner til 1024 tråde, og kontekstskift ville påvirke resultaterne og rapportere et tal lavere end løsningens reelle ydeevne.

mpirun --allow-run-as-root -np $Threads --hostfile my_hosts.$Threads --præfiks /mmfs1/perftest/ompi --mca btl_openib_allow_ib 1 /mmfs1/perftest/lanl_ior/bin/mdtest -v -d /mmfs1/perftest/ -i 1 -b $Directories -z 1 -L -I 1024 -y -u -t -F -w 4K -e 4K

Da ydeevneresultater kan påvirkes af det samlede antal IOPS, antallet af filer pr. mappe og antallet af tråde, blev det besluttet at holde det samlede antal filer fast til 2 MiB-filer (2^21 = 2097152), antallet af filer pr. mappe fastsat til 1024, og antallet af mapper varierede, da antallet af tråde ændrede sig som vist i tabel 3.

Tabel 3 MDtest distribution af filer på mapper

Antal tråde

Antal mapper pr. tråd

Samlet antal filer

1

2048

2,097,152

2

1024

2,097,152

4

512

2,097,152

8

256

2,097,152

16

128

2,097,152

32

64

2,097,152

64

32

2,097,152

128

16

2,097,152

256

8

2,097,152

512

4

2,097,152

 

SLN321889_en_US__5image005(5)

Figur 5 Metadata ydeevne - 4 KiB-filer

Bemærk først, at den valgte skala var logaritmisk med base 10 for at muliggøre sammenligning af operationer, der har forskelle med flere størrelsesordener; Ellers ville nogle af operationerne se ud som en flad linje tæt på 0 på lineær skala. En loggraf med base 2 kunne være mere passende, da antallet af tråde øges i potenser på 2, men grafen ville se meget ens ud, og folk har tendens til at håndtere og huske bedre tal baseret på kræfter på 10.

Systemet får meget gode resultater som tidligere rapporteret med Stat-operationer, der når topværdien ved 64 tråde med næsten 6.9M op / s og derefter reduceres for højere trådtællinger, der når et plateau. Oprettelseshandlinger når maksimum på 113K op/s ved 512 tråde, så det forventes at fortsætte med at stige, hvis der anvendes flere klientnoder (og kerner). Reads and Remove-operationer nåede deres maksimum ved 128 tråde og opnåede deres højdepunkt ved næsten 705K op/s for Reads og 370K op/s for fjernelser, og derefter når de plateauer. Stat-operationer har større variabilitet, men når de når deres højeste værdi, falder ydeevnen ikke til under 3.2M op / s for statistik. Opret og fjernelse er mere stabile, når de når et plateau og forbliver over 265K op/s for fjernelse og 113K op/s for oprettelse. Endelig når læsninger et plateau med ydeevne over 265K op / s.

 

Konklusioner og fremtidigt arbejde

NVMe-noderne er en vigtig tilføjelse til HPC-storageløsningen, da de giver et meget højtydende niveau med god tæthed, meget høj ydeevne for vilkårlig adgang og meget høj sekventiel ydeevne. Desuden skaleres løsningen lineært ud i kapacitet og ydeevne, efterhånden som flere NVMe-nodemoduler tilføjes. Ydeevnen fra NVMe-noderne kan ses i tabel 4, forventes at være stabil, og disse værdier kan bruges til at estimere ydeevnen for et andet antal NVMe-noder.
Husk dog, at hvert par NVMe-noder giver halvdelen af ethvert tal, der vises i tabel 4.
Denne løsning giver HPC-kunder et meget pålideligt parallelt filsystem, der bruges af mange Top 500 HPC-klynger. Derudover giver den enestående søgefunktioner, avanceret overvågning og styring og tilføjelse af valgfrie gateways tillader fildeling via allestedsnærværende standardprotokoller som NFS, SMB og andre til så mange klienter som nødvendigt.

Tabel 4 Maksimal og vedvarende ydeevne for 2 par NVMe-noder

 

Optimal ydeevne

Vedvarende ydeevne

Skrive

Læse

Skrive

Læse

Store sekventielle N-klienter til N-filer

40,9 GB/s

84,5 GB/s

40 GB/sek.

81 GB/s

Store sekventielle N-klienter til en enkelt delt fil

34,5 GB/s

51,6 GB/s

31,5 GB/s

50 GB/s

Tilfældige små blokke N-klienter til N-filer

5,06BILLEDE

7,31MIOPS

5 MIOPS

7.3 MIOPS

Metadata Opret 4KiB-filer

113K IOps

113K IOps

Metadata Stat 4KiB-filer

6,88 mio. IOps

3,2 mio. IOps

Metadata Læs 4KiB-filer

705K IOps

500 K IOps

Metadata Fjern 4KiB-filer

370K IOps

265K IOps

 

Da NVMe-noder kun blev brugt til data, kan muligt fremtidigt arbejde omfatte brug af dem til data og metadata og have et selvstændigt flashbaseret niveau med bedre metadataydeevne på grund af den højere båndbredde og lavere ventetid for NVMe-enheder sammenlignet med SAS3 SSD'er bag RAID-controllere. Hvis en kunde har ekstremt høje metadatakrav og har brug for en løsning, der er mere kompakt end det, som det krævende metadatamodul kan levere, kan nogle eller alle de distribuerede RAID 10-enheder bruges til metadata på samme måde, som RAID 1-enheder på ME4024s bruges nu.
En anden blog, der snart frigives, vil karakterisere PixStor Gateway-noderne, som gør det muligt at forbinde PixStor-løsningen til andre netværk ved hjælp af NFS- eller SMB-protokoller og kan skalere ydeevnen ud. Løsningen vil også blive opdateret til HDR100 meget snart, og en anden blog forventes at tale om det arbejde.

 

Affected Products

High Performance Computing Solution Resources
Article Properties
Article Number: 000130558
Article Type: Solution
Last Modified: 21 Feb 2021
Version:  3
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.