Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Zêdetirî mîlyar navnîşanên IP-ya bêhempa her roj di nav Tora Cloudflare re derbas dibin; ew di çirkeyê de ji 11 mîlyon daxwazên HTTP re xizmet dike; ew di nav 100ms 95% ji nifûsa înternetê de ye. Tora me li zêdetirî 200 welatan 90 bajaran vedihewîne, û tîmê me yê endezyaran binesaziyek zehf bilez û pêbawer ava kiriye.

Em bi xebata xwe serbilind in û ji bo ku înternet cîhek çêtir û ewledartir bikin alîkar in. Endezyarên hardware yên Cloudflare xwedan têgihiştinek kûr a pêşkêşker û pêkhateyên wan in da ku têgihiştin û çêtirîn hardware hilbijêrin da ku performansa wê zêde bikin.

Stacka meya nermalava me hesabkirina bargiraniya bilind digire û pir bi CPU-yê ve girêdayî ye, ji endezyarên me re hewce dike ku bi domdarî karîgerî û pêbaweriya Cloudflare di her astê stakê de xweşbîn bikin. Li aliyê serverê, awayê herî hêsan ji bo zêdekirina hêza pêvajoyê bi lêzêdekirina navên CPU ye. Zêdetir core serverek dikare bi cîh bibe, ew qas bêtir daneyê dikare pêvajo bike. Ev ji me re girîng e ji ber ku cûrbecûr hilber û xerîdarên me bi demê re mezin dibe, û mezinbûna daxwazan ji serveran re performansa zêde hewce dike. Ji bo ku performansa wan zêde bikin, me hewce bû ku em dendika korsan zêde bikin - û ev tam ya ku me pêk anî ye. Li jêr em daneyên hûrgulî li ser pêvajoyên serverên ku me ji sala 2015-an vir ve bicîh kirine, di nav de hejmara core peyda dikin:

-
Gen 6
Gen 7
Gen 8
Gen 9

Destpêkirin
2015
2016
2017
2018

CPU
Intel Xeon E5-2630 v3
Intel Xeon E5-2630 v4
Intel Xeon Silver 4116
Intel Xeon Platinum 6162

Corên fizîkî
2 x 8
2 x 10
2 x 12
2 x 24

PDK
2 x 85W
2 x 85W
2 x 85W
2 x 150W

TDP per core
10.65W
8.50W
7.08W
6.25W

Di sala 2018-an de, me bi Gen 9-ê re di hejmara giştî ya navokên her serverê de gavek mezin çêkir. Bandora hawirdorê li gorî nifşa 33-an ji% 8 kêm bûye, fersendê dide me ku em hejmûn û hêza hesabkirinê ya her rafikê zêde bikin. Pêdiviyên sêwiranê ji bo belavbûna germê (Hêza Sêwirana Termal, TDP) têne destnîşan kirin ku ronî dikin ku karbidestiya enerjiya me jî bi demê re zêde bûye. Ev nîşana ji bo me girîng e: Ya yekem, em dixwazin ku kêmtir karbonê di atmosferê de derxînin; ya duyemîn, em dixwazin enerjiya ji navendên daneyê çêtirîn bikar bînin. Lê em dizanin ku tiştek me heye ku em ji bo hewl bikin.

Metrîka meya diyarker a sereke hejmara daxwazên per watt e. Em dikarin bi lêzêdekirina navokan hejmara daxwazan di çirkeyê de zêde bikin, lê pêdivî ye ku em di nav budceya hêza xwe de bimînin. Em ji hêla binesaziya hêza navenda daneyê ve têne sînorkirin, ku, digel modulên belavkirina hêzê yên me yên bijartî, ji bo her rack serverê sînorek jor dide me. Zêdekirina serveran li rackek mezaxtina hêzê zêde dike. Ger em ji sînorê enerjiya per-rack derbas bikin û neçar bin ku rafikên nû lê zêde bikin dê lêçûnên xebitandinê pir zêde bibin. Pêdivî ye ku em hêza pêvajoyê zêde bikin dema ku di heman rêza xerckirina hêzê de bimînin, ku dê daxwazên per watt, metrîka meya sereke zêde bike.

Wekî ku we texmîn kir, me di qonaxa sêwiranê de bi baldarî vexwarina enerjiyê lêkolîn kir. Tabloya li jor destnîşan dike ku divê em wextê xwe winda nekin ku CPU-yên birçî yên enerjiyê bêtir bi cih bikin ger TDP-ya bingehîn ji nifşa heyî bilindtir be - ev ê bandorek neyînî li metrîka me, daxwazên per watt bike. Me bi baldarî pergalên amade-xebatê yên ji bo nifşa me X li sûkê lêkolîn kir û biryarek girt. Em ji sêwirana xweya dualî ya 48-core Intel Xeon Platinum 6162 berbi sêwirana yek-socketê ya 48-core AMD EPYC 7642 ve diçin.

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

-
intel
AMD

CPU
Xeon Platinum 6162
EPYC 7642

Microarchitecture
"Skylake"
"Zen 2"

Navê kodê
"Skylake SP"
"Roma"

Pêvajoya teknîkî
14nm
7nm

cores
2 x 24
48

Frequency
1.9 GHz
2.4 GHz

L3 Cache / soket
24 x 1.375 MiB
16 x 16 MiB

Bîr / soket
6 kanal, heya DDR4-2400
8 kanal, heya DDR4-3200

PDK
2 x 150W
225W

PCIe / soket
48 rê
128 rê

ISA
x86-64
x86-64

Ji taybetmendiyan diyar e ku çîpê ji AMD-ê dê rê bide me ku dema ku TDP-ê dakêşin heman jimare koran biparêzin. Nifşa 9-an xwedan TDP-ya serê 6,25 W bû, û nifşa X-ê ew ê bibe 4,69 W. Ji sedî 25 kêm kirin. Spas ji frekansa zêde, û dibe ku sêwiranek hêsan a bi yek soketê re, meriv dikare texmîn bike ku çîpa AMD dê di pratîkê de çêtir bixebite. Em niha ceribandin û simulasyonên cihêreng dimeşînin da ku bibînin ka AMD dê çiqas çêtir pêk bîne.

Heya nuha, em bala xwe bidin ku TDP ji taybetmendiyên çêker metrîkek hêsan e, ku me di qonaxên destpêkê yên sêwirana server û hilbijartina CPU de bikar anî. Lêgerînek bilez a Google diyar dike ku AMD û Intel ji bo diyarkirina TDP-ê nêzîkatiyên cihêreng hene, ku taybetmendiyê nebawer dike. Xerca hêza CPU ya rastîn, û ya girîngtir xerckirina hêza serverê, ya ku em bi rastî dema ku biryara xweya paşîn digirin bikar tînin.

Amadebûna ekosîstemê

Ji bo destpêkirina rêwîtiya xwe ya ji bo hilbijartina pêvajoya xweya paşîn, me li cûrbecûr CPU-yên ji hilberînerên cihêreng ên ku ji bo stûn û karûbarên nermalava me (bi C, LuaJIT û Go hatî nivîsandin) xweş bûn nihêrîn. Me berê bi hûrgulî komek amûrên ji bo pîvandina lezê diyar kiriye di yek ji gotarên bloga me de. Di vê rewşê de, me heman komê bikar anî - ew dihêle ku em di demek maqûl de karbidestiya CPU-ê binirxînin, piştî ku endezyarên me dikarin dest pê bikin ku bernameyên me bi pêvajoyek taybetî re adapte bikin.

Me cûrbecûr pêvajoyên bi cûrbecûr hejmarên bingehîn, hejmarên soket û frekansan ceriband. Ji ber ku ev gotar li ser vê yekê ye ku çima em li ser AMD EPYC 7642 rûniştin, hemî nexşeyên di vê blogê de balê dikişînin ser ka pêvajoyên AMD çawa li gorî Intel Xeon Platinum 6162 ji nifşê me 9.

Encam bi pîvandina serverek yekane bi her guhertoya pêvajoyê re têkildar in - ango, bi du pêvajoyên 24-core ji Intel, an bi yek pêvajoyek 48-core ji AMD (serverek ji bo Intel bi du soketan û serverek ji bo AMD EPYC bi yek) . Di BIOS-ê de em pîvanên ku bi pêşkêşkerên xebitandinê re têkildar in destnîşan dikin. Ev ji bo AMD 3,03 GHz û ji bo Intel 2,5 GHz e. Pir hêsan bikin, em li bendê ne ku bi heman hejmarê navokî re, AMD dê 21% ji Intel çêtir bixebite.

Cryptography

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Ji bo AMD sozdar xuya dike. Ew li ser şîfrekirina mifteya giştî 18% çêtir dike. Bi mifteyek sîmetrîk, ew ji bo vebijarkên şîfrekirinê yên AES-128-GCM winda dike, lê bi tevahî berawirdî dike.

Compression

Li ser serverên qeraxê, em gelek daneyan berhev dikin da ku li ser berfê hilînin û leza radestkirina naverokê zêde bikin. Em daneyan bi pirtûkxaneyên C zlib û brotli re derbas dikin. Hemî ceribandin li ser pelê HTML-a blog.cloudflare.com di bîranînê de hatin meşandin.

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Dema ku gzip bikar tîne AMD bi navînî 29% qezenc kir. Di doza brotli de, encam li ser ceribandinên bi kalîteya 7, ku em ji bo berhevkirina dînamîk bikar tînin, hîn çêtir in. Di ceribandina brotli-9 de daketinek tûj heye - em vê yekê bi vê yekê rave dikin ku Brotli gelek bîranîn dixwe û kaşê zêde dike. Lêbelê, AMD bi rêjeyek mezin bi ser dikeve.

Gelek karûbarên me di Go de têne nivîsandin. Di grafikên jêrîn de, em bi karanîna pirtûkxaneya têlan ve leza krîptografî û berhevkirinê ya li Go bi RegExp-ê li ser xetên 32 KB-ê ducarî kontrol dikin.

Biçe şîfrekirinê

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Go Compression

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Biçe Regexp

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Go Strings

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

AMD di hemî ceribandinên bi Go-yê de ji bilî Nîşana ECDSA P256 çêtir performans dike, ku ew% 38 li paş bû - ku ecêb e, ji ber ku ew di C de% 24 çêtir kir. Hêjayî gotinê ye ku li wir çi diqewime. Bi tevayî, AMD pir qezenc nake, lê dîsa jî encamên çêtirîn nîşan dide.

LuaJIT

Em pir caran LuaJIT li ser stakê bikar tînin. Ev benîşt e ku hemî beşên Cloudflare bi hev re digire. Û em kêfxweş in ku AMD li vir jî bi ser ket.

Bi tevayî, ceribandinan destnîşan dikin ku EPYC 7642 ji du Xeon Platinum 6162 çêtir performans dike. AMD di çend ceribandinan de winda dike - mînakî, AES-128-GCM û Go OpenSSL ECDSA-P256 Sign - lê li ser hemî yên din, bi navînî bi ser dikeve. ji %25.

Simulasyona Karê Karê

Piştî ceribandinên meyên bilez, me pêşkêşkeran bi komek din a simulasyonên ku tê de barek sentetîk li stûna keviya nermalavê tê sepandin, gerandin. Li vir em bi cûrbecûr daxwazên ku dikarin di xebata rastîn de werin rûbirû kirin bargiraniyek senaryoyê simul bikin. Daxwaz di hêjmara daneyê, protokolên HTTP an HTTPS, çavkaniyên WAF, Karker û gelek guhêrbarên din de cûda dibin. Li jêr ji bo celebên daxwazên ku em pir caran pê re rû bi rû dimînin berawirdkirina berbi du CPU-yê ye.

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Encamên di nexşeyê de li hember rêzika bingehîn a makîneyên bingehîn ên Intel-ê nifşê 9-an têne pîvandin, ku li ser x-xebatê bi nirxek 1,0 têne normalîze kirin. Mînakî, daxwazên hêsan ên 10 KiB li ser HTTPS-ê digirin, em dikarin bibînin ku AMD di warê daxwaznameyên her çirkeyê de 1,5 carî ji Intel çêtir dike. Bi navînî, AMD ji bo van ceribandinan 34% ji Intel çêtir kir. Bihesibînin ku TDP ji bo yek AMD EPYC 7642 225 W, û ji bo du pêvajoyên Intel-ê 300 W e, derdikeve holê ku di warê "daxwazên per watt" de AMD 2 carî ji Intel encamên çêtir nîşan dide!

Di vê nuqteyê de, me bi eşkere berê xwe da vebijarka soketê ya yekane ji bo AMD EPYC 7642 wekî CPU-yên meyên Gen X yên pêşerojê. Em pir eleqedar bûn ku bibînin ka dê serverên AMD EPYC di xebata cîhana rastîn de çawa tevbigerin, û me tavilê gelek şandin. pêşkêşkerên hin ji navendên daneyê.

Karê rastîn

Gava yekem, bi xwezayî, amadekirina serveran ji bo xebatê di şert û mercên rastîn de bû. Hemî makîneyên di fîloya me de bi heman pêvajo û karûbaran re dixebitin, ku fersendek hêja peyda dike ku meriv performansê rast berhev bike. Mîna piraniya navendên daneyê, me çend nifşên servers hatine bicîh kirin, û em serverên xwe di nav koman de berhev dikin da ku her çîn serverek ji heman nifşan pêk bîne. Di hin rewşan de, ev dibe ku bibe sedema kêşeyên vezîvirandinê yên ku di navbera koman de cûda dibin. Lê ne bi me re. Endezyarên me ji bo hemî nifşan karanîna CPU-yê xweştir kirine ji ber vê yekê bêyî ku CPU-ya makîneyek taybetî 8 core an 24 hebin, karanîna CPU bi gelemperî wekî yên mayî ye.

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Grafîk şîroveya me ya li ser wekheviya karanînê destnîşan dike - di navbera karanîna CPU-yên AMD-ê de di serverên nifşê X-ê de û karanîna pêvajoyên Intel-ê di serverên nifşê Gen 9 de cûdahiyek girîng tune. Ev tê vê wateyê ku serverên ceribandinê û yên bingehîn wekhev têne barkirin. . Ecêb. Ya ku em di serverên xwe de jê re dixebitin ev e, û ji bo berhevdanek adil ji vê yekê re hewce ye. Du grafikên jêrîn jimara daxwazên ku ji hêla yek bingehek CPU-yê ve û hemî navokên di asta serverê de têne hilberandin nîşan dide.

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre
Daxwazên per core

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre
Daxwazên pêşkêşkarê

Tê dîtin ku bi navînî AMD% 23 zêdetir daxwazên pêvajoyê dike. Qet ne xirab e! Me gelek caran li ser bloga xwe li ser awayên zêdekirina performansa Gen 9 nivîsandiye. Û naha heman hejmarên me hene, lê AMD bi hêzek kêmtir bêtir kar dike. Di cih de ji taybetmendiyên ji bo hejmara navok û TDP diyar dibe ku AMD bi karbidestiya enerjiyê ya mezintir leza mezintir peyda dike.

Lê wekî ku me berê jî behs kir, TDP ne taybetmendiyek standard e û ji bo hemî hilberîneran ne yek e, ji ber vê yekê em li karanîna enerjiyê ya rastîn binêrin. Bi pîvandina mezaxtina enerjiyê ya serverê re digel hejmara daxwaznameyên her çirkeyê, me grafika jêrîn bi dest xist:

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre

Li ser bingeha daxwaznameyên her çirkeya her watt hatî xerc kirin, serverên Gen X yên ku li ser pêvajoyên AMD-ê dixebitin 28% bikêrtir in. Mirov dikare bêtir hêvî bike, ji ber ku TDP ya AMD% 25 kêmtir e, lê divê were ji bîr kirin ku TDP taybetmendiyek nezelal e. Me dît ku xerckirina hêza rastîn a AMD-ê hema hema bi TDP-ya diyarkirî re li frekansên ku ji bingehê pir mezintir e yek e; Intel viya tune. Ev sedemek din e ku çima TDP ne texmînek pêbawer a xerckirina enerjiyê ye. CPU-yên ji Intel-ê di serverên me yên Gen 9-ê de di nav pergalek pir-node de têne yek kirin, dema ku CPU-yên ji AMD-ê di serverên faktora forma standard 1U de dixebitin. Ev ne di berjewendiya AMD-ê de ye, ji ber ku serverên pir-node divê bi xerckirina hêzê ya kêmtir ji her nodê re dendikê mezintir peyda bikin, lê AMD dîsa jî di warê xerckirina hêzê ya her nodê de ji Intel re derbas bû.

Di piraniya danberhevan de li ser taybetmendî, simulasyonên ceribandinê, û performansa cîhana rastîn, veavakirina 1P AMD EPYC 7642 ji 2P Intel Xeon 6162 pir çêtir pêk hat. Di hin mercan de, AMD dikare heya 36% çêtir bixebite, û em bawer dikin ku bi xweşbîniyê hardware û nermalavê, em dikarin vê pêşkeftinê li ser bingehek domdar bi dest bixin.

Derket holê ku AMD bi ser ket.

Grafikên din derengiya navîn û derengiya p99 ku NGINX di heyamek 24-saetan de dimeşîne destnîşan dikin. Bi gelemperî, pêvajoyên li ser AMD% 25 zûtir dimeşin. Li ser p99 li gorî dema rojê 20-50% zûtir dimeşe.

encamê

Endezyarên Hardware û Performansê yên Cloudflare gelek ceribandin û lêkolînê dikin da ku ji bo xerîdarên me veavakirina serverê ya çêtirîn diyar bikin. Em hez dikin ku li vir bixebitin ji ber ku em dikarin pirsgirêkên mezin ên mîna van çareser bikin, û em dikarin ji we re bibin alîkar ku hûn pirsgirêkên xwe bi karûbarên mîna komputera bê server û komek çareseriyên ewlehiyê yên mîna Transit Magic, Argo Tunnel, û parastina DDoS çareser bikin. . Hemî pêşkêşkerên di tora Cloudflare de têne mîheng kirin ku pêbawer tevbigerin, û em her gav hewl didin ku her nifşek din a pêşkêşkeran ji ya berê çêtir bikin. Em bawer dikin ku AMD EPYC 7642 bersiv e dema ku ew tê ser pêvajoyên Gen X.

Bi karanîna Karkerên Cloudflare, pêşdebir sepanên xwe li ser tora meya berfereh li çaraliyê cîhanê bicîh dikin. Em şanaz in ku dihêlin xerîdarên xwe li ser nivîsandina kodê bisekinin dema ku em bala xwe didin ser ewlehî û pêbaweriya di ewr de. Û îro em hê bêtir kêfxweş in ku ragihînin ku xebata wan dê li ser serverên me yên nifşê Gen X-ê ku pêvajoyên nifşê duyemîn AMD EPYC-ê dimeşînin were bicîh kirin.

Cloudflare ji AMD-ê ji bo pêşkêşkerên keviya nifşa dehemîn pêvajoyan hildibijêre
Prosesorên EPYC 7642, navê kod "Rome" [Roma]

Bi karanîna AMD's EPYC 7642, me karî performansa xwe zêde bikin û berfirehkirina tora xwe li bajarên nû hêsantir bikin. Roma di rojekê de nehat ava kirin, lê ew ê di demek nêzîk de nêzikî gelek ji we bibe.

Di van du salên dawî de me gelek çîpên x86 yên Intel û AMD, û her weha pêvajoyên ARM-ê ceribandin. Em hêvî dikin ku van çêkerên CPU di pêşerojê de bi me re bixebitin da ku em hemî bi hev re Înternetek çêtir ava bikin.

Source: www.habr.com

Add a comment