Labaw sa usa ka bilyon nga talagsaon nga mga adres sa IP ang moagi sa Cloudflare Network kada adlaw; nagsilbi kini labaw pa sa 11 milyon nga mga hangyo sa HTTP matag segundo; naa siya sulod sa 100ms sa 95% sa populasyon sa internet. Ang among network naglangkob sa 200 ka mga lungsod sa kapin sa 90 ka mga nasud, ug ang among grupo sa mga inhenyero nagtukod usa ka labi ka paspas ug kasaligan nga imprastraktura.
Gipasigarbo namo pag-ayo ang among trabaho ug mipasalig kami sa pagtabang sa paghimo sa Internet nga mas maayo ug luwas nga dapit. Ang mga inhenyero sa hardware sa Cloudflare adunay lawom nga pagsabut sa mga server ug sa ilang mga sangkap aron masabtan ug mapili ang labing kaayo nga hardware aron mapataas ang pasundayag niini.
Ang among software stack nagdumala sa high-load computing ug nagsalig kaayo sa CPU, nga nagkinahanglan sa among mga inhenyero sa padayon nga pag-optimize sa kahusayan ug kasaligan sa Cloudflare sa matag lebel sa stack. Sa bahin sa server, ang labing kadali nga paagi aron madugangan ang gahum sa pagproseso mao ang pagdugang mga cores sa CPU. Ang mas daghang mga core nga mahimong mohaum sa usa ka server, mas daghang data ang mahimo niini nga maproseso. Importante kini kanamo tungod kay ang lainlain sa among mga produkto ug kliyente nagkadako sa paglabay sa panahon, ug ang pagtubo sa mga hangyo nanginahanglan dugang nga pasundayag gikan sa mga server. Aron madugangan ang ilang pasundayag, kinahanglan namon nga dugangan ang densidad sa mga cores - ug kini gyud ang among nahimo. Sa ubos naghatag kami og detalyado nga datos sa mga processor alang sa mga server nga among gi-deploy sukad sa 2015, lakip ang gidaghanon sa mga cores:
-
Gen 6
Gen 7
Gen 8
Gen 9
Pagsugod
2015
2016
2017
2018
CPU
Intel Xeon E5-2630 v3
Intel Xeon E5-2630 v4
Intel Xeon Silver 4116
Intel Xeon Platinum 6162
Pisikal nga mga core
2 x 8
2 x 10
2 x 12
2 x 24
TDP
2 x 85W
2 x 85W
2 x 85W
2 x 150W
TDP kada core
10.65W
8.50W
7.08W
6.25W
Sa 2018, nakahimo kami usa ka dako nga paglukso sa kinatibuk-ang gidaghanon sa mga cores matag server nga adunay Gen 9. Ang epekto sa kinaiyahan mikunhod sa 33% kumpara sa ika-8 nga henerasyon, nga naghatag kanamo og oportunidad nga madugangan ang gidaghanon ug gahum sa pag-compute kada rack. Mga kinahanglanon sa disenyo alang sa pagwagtang sa kainit (
Ang among nag-unang pagtino nga sukatan mao ang gidaghanon sa mga hangyo matag watt. Mahimo natong madugangan ang gidaghanon sa mga hangyo kada segundo pinaagi sa pagdugang sa mga core, apan kinahanglan natong magpabilin sulod sa atong budget sa kuryente. Gilimitahan kami sa imprastraktura sa gahum sa sentro sa datos, nga, kauban ang among gipili nga mga module sa pag-apod-apod sa kuryente, naghatag kanamo usa ka piho nga taas nga limitasyon alang sa matag rack sa server. Ang pagdugang sa mga server sa usa ka rack nagdugang sa konsumo sa kuryente. Ang mga gasto sa pag-opera modako pag-ayo kon molapas kita sa limitasyon sa enerhiya sa kada-rack ug kinahanglang magdugang ug bag-ong mga rack. Kinahanglan namon nga dugangan ang gahum sa pagproseso samtang nagpabilin sa parehas nga sakup sa konsumo sa kuryente, nga magpataas sa mga hangyo matag watt, ang among panguna nga sukatan.
Sama sa imong nahunahunaan, among gitun-an pag-ayo ang pagkonsumo sa enerhiya sa yugto sa disenyo. Ang talaan sa ibabaw nagpakita nga dili kita angayng mag-usik ug panahon sa pag-deploy ug mas daghang gutom nga mga CPU kung ang TDP matag kinauyokan mas taas kaysa sa karon nga henerasyon - kini negatibo nga makaapekto sa atong sukatan, mga hangyo matag watt. Gitun-an namo pag-ayo ang mga sistema nga andam na sa among henerasyon X sa merkado ug mihimo og desisyon. Mibalhin kami gikan sa among 48-core Intel Xeon Platinum 6162 dual-socket design ngadto sa 48-core AMD EPYC 7642 single-socket design.
-
Intel
AMD
CPU
Xeon Platinum 6162
EPYC 7642
microarchitecture
"Skylake"
"Zen 2"
Codename
"Skylake SP"
βRomaβ
Teknikal nga proseso
14nm
7nm
mga core
2 x 24
48
Kasagaran
1.9 GHz
2.4 GHz
L3 Cache/socket
24 x 1.375MiB
16 x 16MiB
Memory/socket
6 ka channel, hangtod sa DDR4-2400
8 ka channel, hangtod sa DDR4-3200
TDP
2 x 150W
225W
PCIe/socket
48 mga linya
128 mga linya
ISA
x86-64
x86-64
Gikan sa mga espesipikasyon klaro nga ang chip gikan sa AMD magtugot kanamo nga magpadayon sa parehas nga gidaghanon sa mga cores samtang gipaubos ang TDP. Ang ika-9 nga henerasyon adunay TDP matag kinauyokan nga 6,25 W, ug ang Xth nga henerasyon kini mahimong 4,69 W. Gipakunhod sa 25%. Salamat sa nagkadaghan nga frequency, ug tingali usa ka mas simple nga disenyo nga adunay usa ka socket, mahimo nga hunahunaon nga ang AMD chip mahimo nga labi ka maayo sa praktis. Nagdagan kami karon sa lainlaing mga pagsulay ug mga simulation aron makita kung unsa ka labi ka maayo ang mahimo sa AMD.
Sa pagkakaron, atong timan-an nga ang TDP usa ka pinasimple nga sukatan gikan sa mga detalye sa tiggama, nga among gigamit sa unang mga yugto sa disenyo sa server ug pagpili sa CPU. Ang usa ka dali nga pagpangita sa Google nagpadayag nga ang AMD ug Intel adunay lainlaing mga pamaagi sa pagtino sa TDP, nga naghimo sa detalye nga dili kasaligan. Tinuod nga konsumo sa kuryente sa CPU, ug labi ka hinungdanon ang pagkonsumo sa kuryente sa server, mao gyud ang among gigamit sa paghimo sa among katapusang desisyon.
Pagkaandam sa ekosistema
Aron masugdan ang among panaw sa pagpili sa among sunod nga processor, among gitan-aw ang usa ka halapad nga sakup sa mga CPU gikan sa lainlaing mga tiggama nga angay alang sa among software stack ug mga serbisyo (gisulat sa C, LuaJIT ug Go). Gihulagway na namo sa detalye ang usa ka hugpong sa mga himan alang sa pagsukod sa katulin
Among gisulayan ang lain-laing mga processor nga adunay lain-laing mga core counts, socket counts, ug frequency. Tungod kay kini nga artikulo mao ang mahitungod sa ngano nga kami nanimuyo sa AMD EPYC 7642, ang tanan nga mga tsart sa niini nga blog naka-focus sa kon sa unsang paagi AMD processors perform kumpara sa Intel Xeon Platinum 6162 gikan sa
Ang mga resulta katumbas sa mga pagsukod sa usa ka server sa matag variant sa processor - nga mao, nga adunay duha ka 24-core processor gikan sa Intel, o sa usa ka 48-core processor gikan sa AMD (server alang sa Intel nga adunay duha ka socket ug server alang sa AMD EPYC nga adunay usa). Sa BIOS gibutang namon ang mga parameter nga katumbas sa nagdagan nga mga server. Kini mao ang 3,03 GHz alang sa AMD ug 2,5 GHz alang sa Intel. Ang pagpayano pag-ayo, gipaabut namon nga sa parehas nga gidaghanon sa mga cores, ang AMD makahimo og 21% nga mas maayo kaysa Intel.
Kriptograpiya
Morag nagsaad alang sa AMD. Naghimo kini og 18% nga mas maayo sa public key cryptography. Uban sa usa ka simetriko nga yawe, nawala kini alang sa mga kapilian sa pag-encrypt sa AES-128-GCM, apan sa kinatibuk-an nahimo nga parehas.
Pagpugong
Sa mga edge server, nag-compress kami og daghang data aron makadaginot sa bandwidth ug madugangan ang katulin sa paghatud sa sulod. Gipasa namo ang datos pinaagi sa mga librarya sa C zlib ug brotli. Ang tanan nga mga pagsulay gipadagan sa blog.cloudflare.com HTML file sa memorya.
Ang AMD midaog sa aberids nga 29% sa paggamit sa gzip. Sa kaso sa brotli, ang mga resulta mas maayo pa sa mga pagsulay nga adunay kalidad nga 7, nga among gigamit alang sa dinamikong compression. Sa brotli-9 nga pagsulay adunay usa ka mahait nga pagtulo - gipatin-aw namon kini pinaagi sa kamatuoran nga ang Brotli nag-ut-ot sa daghang panumduman ug nag-awas sa cache. Bisan pa, ang AMD nakadaog sa usa ka dako nga margin.
Daghan sa among mga serbisyo ang gisulat sa Go. Sa mosunod nga mga graph, gi-double check namo ang gikusgon sa cryptography ug compression sa Go with RegExp sa 32 KB nga mga linya gamit ang strings library.
Lakaw sa cryptography
Lakaw sa Compression
Lakaw sa Regexp
Lakaw sa mga Strings
Ang AMD mas maayo nga nahimo sa tanan nga mga pagsulay uban sa Go gawas sa ECDSA P256 Sign, diin kini 38% sa likod - nga katingad-an, tungod kay kini nahimo nga 24% nga labi ka maayo sa C. Angayan nga mahibal-an kung unsa ang nahitabo didto. Sa kinatibuk-an, ang AMD dili kaayo makadaog, apan nagpakita gihapon sa pinakamaayo nga resulta.
LuaJIT
Kanunay namong gamiton ang LuaJIT sa stack. Kini ang papilit nga nagkupot sa tanan nga mga bahin sa Cloudflare. Ug nalipay kami nga ang AMD nakadaog usab dinhi.
Sa kinatibuk-an, ang mga pagsulay nagpakita nga ang EPYC 7642 naghimo og mas maayo kay sa duha ka Xeon Platinum 6162. Ang AMD napildi sa usa ka magtiayon nga mga pagsulay - pananglitan, AES-128-GCM ug Go OpenSSL ECDSA-P256 Sign - apan daog sa tanan nga uban, sa usa ka average sa 25%.
Simulation sa Workload
Pagkahuman sa among dali nga pagsulay, gipadagan namon ang mga server pinaagi sa lain nga hugpong sa mga simulation diin ang usa ka sintetikong load gipadapat sa software edge stack. Dinhi among gisundog ang usa ka scenario nga workload nga adunay lain-laing mga matang sa mga hangyo nga mahimong masugatan sa tinuod nga trabaho. Ang mga hangyo lainlain sa gidaghanon sa datos, HTTP o HTTPS nga mga protocol, WAF nga tinubdan, Trabaho, ug uban pang daghang mga variable. Sa ubos mao ang pagtandi sa throughput sa duha ka mga CPU alang sa mga matang sa mga hangyo nga kanunay natong masugatan.
Ang mga resulta sa tsart gisukod batok sa baseline sa ika-9 nga henerasyon nga Intel-based nga mga makina, na-normalize sa kantidad nga 1,0 sa x-axis. Pananglitan, ang pagkuha sa yano nga 10 KiB nga mga hangyo sa HTTPS, atong makita nga ang AMD 1,5 ka beses nga mas maayo kaysa Intel sa mga termino sa mga hangyo matag segundo. Sa aberids, ang AMD naghimo sa 34% nga mas maayo kaysa Intel alang niini nga mga pagsulay. Gikonsiderar nga ang TDP alang sa usa ka AMD EPYC 7642 mao ang 225 W, ug alang sa duha nga mga processor sa Intel mao ang 300 W, kini nahimo nga sa mga termino sa "mga hangyo matag watt" gipakita sa AMD ang 2 nga mas maayo nga mga resulta kaysa sa Intel!
Niini nga punto, klaro na kami nga nagsandig ngadto sa single socket nga opsyon alang sa AMD EPYC 7642 isip among umaabot nga Gen X nga mga CPU. Interesado kaayo kami nga makita kung unsa ang mahimo sa mga AMD EPYC server sa tinuod nga kalibutan nga trabaho, ug nagpadala dayon kami og daghang mga server sa pipila gikan sa mga sentro sa datos.
Tinuod nga trabaho
Ang unang lakang, natural, mao ang pag-andam sa mga server alang sa trabaho sa tinuod nga mga kondisyon. Ang tanan nga mga makina sa among armada nagtrabaho nga adunay parehas nga mga proseso ug serbisyo, nga naghatag usa ka maayo kaayo nga higayon nga husto nga itandi ang pasundayag. Sama sa kadaghanan sa mga sentro sa datos, kami adunay daghang mga henerasyon sa mga server nga gipakatap, ug among gikolekta ang among mga server sa mga cluster aron ang matag klase adunay mga server nga hapit parehas nga mga henerasyon. Sa pipila ka mga kaso, kini mahimong moresulta sa pag-recycle sa mga kurba nga magkalahi tali sa mga cluster. Apan dili uban kanato. Gi-optimize sa among mga inhenyero ang paggamit sa CPU alang sa tanan nga mga henerasyon aron nga bisan kung ang CPU sa usa ka partikular nga makina adunay 8 ka mga cores o 24, ang paggamit sa CPU sa kasagaran parehas sa uban.
Ang graph naghulagway sa among komento sa pagkaparehas sa paggamit - walay mahinungdanong kalainan tali sa paggamit sa AMD CPUs sa Gen X generation server ug sa paggamit sa Intel processors sa Gen 9 generation servers. Kini nagpasabot nga ang test ug baseline server parehas nga load. . Nindot. Kini gyud ang among gipaningkamutan sa among mga server, ug kinahanglan namon kini alang sa patas nga pagtandi. Ang duha ka mga graph sa ubos nagpakita sa gidaghanon sa mga hangyo nga giproseso sa usa ka CPU core ug tanan nga mga core sa lebel sa server.
Mga hangyo kada core
Mga hangyo sa server
Makita nga sa kasagaran ang AMD nagproseso sa 23% nga dugang nga mga hangyo. Dili daotan! Kanunay kaming nagsulat sa among blog bahin sa mga paagi aron madugangan ang pasundayag sa Gen 9. Ug karon parehas na kami nga gidaghanon sa mga core, apan ang AMD labi nga nagtrabaho nga adunay gamay nga gahum. Diha-diha dayon tin-aw gikan sa mga detalye alang sa gidaghanon sa mga cores ug TDP nga ang AMD naghatag og mas dako nga katulin uban sa mas dako nga enerhiya efficiency.
Apan sama sa nahisgotan na nato, ang TDP dili usa ka standard nga espesipikasyon ug kini dili pareho sa tanang tiggama, busa atong tan-awon ang aktuwal nga paggamit sa enerhiya. Pinaagi sa pagsukod sa konsumo sa enerhiya sa server nga susama sa gidaghanon sa mga hangyo matag segundo, nakuha namo ang mosunod nga graph:
Pinasukad sa mga hangyo matag segundo matag watt nga gigasto, ang mga server sa Gen X nga nagdagan sa mga processor sa AMD 28% nga labi ka episyente. Ang usa mahimong magdahom ug dugang pa, tungod kay ang AMD's TDP kay 25% nga mas ubos, apan kinahanglang hinumdoman nga ang TDP usa ka dili klaro nga kinaiya. Nakita namo nga ang aktuwal nga konsumo sa kuryente sa AMD halos parehas sa gipahayag nga TDP sa mga frequency nga mas taas kay sa base; Wala kana ang Intel. Kini usa pa ka hinungdan ngano nga ang TDP dili kasaligan nga pagbanabana sa konsumo sa enerhiya. Ang mga CPU gikan sa Intel sa among Gen 9 nga mga server gisagol sa usa ka multi-node system, samtang ang mga CPU gikan sa AMD naglihok sa standard 1U form factor server. Dili kini pabor sa AMD, tungod kay ang mga multinode server kinahanglan nga maghatag mas dako nga densidad nga adunay gamay nga konsumo sa kuryente matag node, apan ang AMD nag-overtake gihapon sa Intel sa mga termino sa konsumo sa kuryente matag node.
Sa kadaghanan sa mga pagtandi sa mga specs, test simulation, ug real-world performance, ang 1P AMD EPYC 7642 configuration nagpakita nga mas maayo kay sa 2P Intel Xeon 6162. Sa pipila ka mga kondisyon, ang AMD makahimo og hangtod sa 36% nga mas maayo, ug kami nagtuo nga pinaagi sa pag-optimize hardware ug software, mahimo natong makab-ot kini nga kalamboan sa padayon nga basehan.
Kini nahimo nga AMD midaog.
Ang dugang nga mga graph nagpakita sa kasagaran nga latency ug p99 latency nga nagpadagan sa NGINX sulod sa 24-oras nga panahon. Sa kasagaran, ang mga proseso sa AMD midagan sa 25% nga mas paspas. Sa p99 kini nagdagan nga 20-50% nga mas paspas depende sa oras sa adlaw.
konklusyon
Ang mga inhenyero sa Hardware ug Performance sa Cloudflare naghimo ug daghang pagsulay ug panukiduki aron mahibal-an ang labing kaayo nga pag-configure sa server alang sa among mga kostumer. Ganahan mi nga magtrabaho dinhi tungod kay masulbad namo ang dagkong mga problema sama niini, ug makatabang mi nimo nga masulbad ang imong mga problema sa mga serbisyo sama sa serverless edge computing ug daghang solusyon sa seguridad sama sa Magic Transit, Argo Tunnel, ug proteksyon sa DDoS. . Ang tanan nga mga server sa Cloudflare network gi-configure aron masaligan ang pagbuhat, ug kanunay namon nga gipaningkamutan nga himuon ang matag sunod nga henerasyon sa mga server nga labi ka maayo kaysa sa nauna. Kami nagtuo nga ang AMD EPYC 7642 mao ang tubag kung bahin sa mga processor sa Gen X.
Gamit ang Cloudflare Workers, ang mga developers nag-deploy sa ilang mga aplikasyon sa among nagkalapad nga network sa tibuok kalibutan. Mapasigarbuhon kami nga tugotan ang among mga kostumer nga magpunting sa pagsulat sa code samtang nagpunting kami sa seguridad ug kasaligan sa panganod. Ug karon labi pa nga nalipay kami nga ipahibalo nga ang ilang trabaho i-deploy sa among mga server sa henerasyon nga Gen X nga nagpadagan sa ikaduhang henerasyon nga mga processor sa AMD EPYC.
EPYC 7642 nga mga processor, codename nga "Roma" [Roma]
Pinaagi sa paggamit sa EPYC 7642 sa AMD, nadugangan namo ang among performance ug gipasayon ββang pagpalapad sa among network ngadto sa bag-ong mga siyudad. Ang Roma wala matukod sa usa ka adlaw, apan kini sa dili madugay mas duol sa kadaghanan kaninyo.
Sa miaging duha ka tuig nag-eksperimento kami sa daghang mga x86 chips gikan sa Intel ug AMD, ingon man mga processor gikan sa ARM. Kami nagpaabut nga kini nga mga naghimo sa CPU magpadayon sa pagtrabaho uban kanamo sa umaabot aron kitang tanan makahimo og usa ka mas maayo nga Internet nga magkauban.
Source: www.habr.com