Den 11. juli 2017 lancerede Intel officielt deres nye 14nm Intel Xeon Scalable Processor-familie (Skylake-SP) af serverprocessorer. Denne familie erstatter den tidligere generation af 14nm Intel Xeon E7 v4 og 14nm Intel Xeon E5 v4 (Broadwell-EX og Broadwell-EP)-processorer.
Branding og prissætning
Intel kalder denne overordnede familie en ny "konvergeret platform", der er opdelt i fire adskilte produktlinjer kaldet Intel Xeon Platinum, Intel Xeon Gold, Intel Xeon Silver og Intel Xeon Bronze. Til SQL Server-brug giver kun Platinum- og Gold-linjerne mening, hvis du er bekymret for at få den bedste ydeevne for hver enkelt af dine SQL Server-processorkernelicenser.
I modsætning til den tidligere generation af Xeon-processorer har de nye Xeon Platinum-processorer op til 28 fysiske kerner og kan alle bruges i enhver socket count-server, uanset om det er en to-socket, fire-socket eller otte-socket maskine. Xeon Gold-processorerne har op til 22 fysiske kerner og kan bruges i to- eller fire-sokkels maskiner.
Intel bruger en ny produktmærke- og nummereringskonvention, der er beskrevet i figur 1. I modsætning til de nye AMD EPYC-processorer, laver Intel en masse marketing- og lønsomhedsdrevet produktsegmentering i denne serie, der gør det sværere at forstå, og det er sværere at vælge den rigtige processor til din arbejdsbyrde.
Figur 1:Intel Xeon Scalable Processor Product Numbering Convention
Et godt eksempel på denne skadelige produktsegmentering er "M" SKU-processorer (processormodeller med et M-suffiks), der understøtter 1,5 TB hukommelse pr. socket i modsætning til 768 GB hukommelse pr. socket for ikke-"M" SKU-modeller. Intel opkræver omkring $3000,00 præmie (pr. processor) for den ekstra hukommelsesunderstøttelse, hvilket er en ret stor stigning, især for de lavere omkostninger processorer. Intel Xeon Gold 6134-processoren med otte kerner koster $2.214,00 hver, mens Intel Xeon Gold 6134M-processoren med otte kerner koster $5.217,00 hver. Alle de andre specifikationer (og ydeevne) er identiske for disse to processorer. For SQL Server-brug kan det give god mening at betale den præmie for at få dobbelt så stor hukommelseskapacitet pr. socket (især i betragtning af dine SQL Server-licensomkostninger og overordnede hukommelsesomkostninger), men jeg kan ikke lide det faktum, at Intel har en pris. udhuler her.
Arkitekturændringer
Skylake-SP har en anden cache-arkitektur, der ændres fra en delt distribueret model brugt i Broadwell-EP/EX til en privat-lokal model brugt i Skylake-SP. Hvordan denne ændring vil påvirke SQL Server-arbejdsbelastninger, skal endnu ses.
I Broadwell-EP/EX havde hver fysisk kerne en 256KB privat L2-cache, mens alle kernerne delte en større L3-cache, der kunne være så stor som 60MB (typisk 2,5MB/kerne). Alle linjerne i L2-cachen for hver kerne var også til stede i den inkluderende, delte L3-cache.
I Skylake-SP har hver fysisk kerne en 1 MB privat L2-cache, mens alle kernerne deler en større L3-cache, der kan være så stor som 38,5 MB (typisk 1,375 MB/kerne). Alle linjerne i L2-cachen for hver kerne må ikke være til stede i den ikke-inkluderende, delte L3-cache.
En større L2-cache øger hit-forholdet fra L2-cachen, hvilket resulterer i lavere effektiv hukommelsesforsinkelse og lavere efterspørgsel på L3-cachen og mesh-forbindelsen. L2-cache er typisk omkring 4X hurtigere end L3-cache i Skylake-SP. Figur 2 beskriver de nye cache-arkitekturændringer i Skylake-SP.
Figur 2:Sammenligning af cache-arkitekturer
En anden ny arkitektonisk forbedring er Intel Ultra Path Interconnect (UPI), som erstatter den tidligere generation af Intel Quick Path Interconnect (QPI). Intel UPI er en sammenhængende forbindelse til systemer, der indeholder flere processorer i et enkelt delt adresserum. Intel Xeon-processorer, der understøtter Intel UPI, giver enten to eller tre Intel UPI-links til tilslutning til andre Intel Xeon-processorer ved hjælp af en højhastigheds- og lav latenssti til de andre CPU-sokler. Intel UPI har en maksimal datahastighed på 10,4 GT/s (giga-overførsler/sekund) sammenlignet med en maksimal datahastighed på 9,6 GT/s for Intel QPI, der bruges i de hurtigste Broadwell-EP/EX-processorer.
En anden vigtig ny funktion i Skylake-SP er inkluderingen af AVX-512-understøttelse, som gør det muligt at beregne 512-bit brede vektorer, hvilket i høj grad forbedrer hastigheden sammenlignet med ældre vektorinstruktionssæt som AVX2, AVX og SSE. Disse instruktionssæt bruges typisk til ting som komprimering og kryptering.
AVX-512 har også meget bedre strømeffektivitet i forhold til GFLOPS/Watt og GFLOPS/GHz sammenlignet med de ældre instruktionssæt, så Intel ikke behøver at reducere clockhastigheden på alle kernerne, hvis AVX-kode kører på nogen af kernerne, og de kan også få hver kerne til at køre med forskellig hastighed afhængigt af hvilken type AVX-kode, der kører på den kerne.
SQL Server Hardware Support
I SQL Server 2016 introducerede Microsoft understøttelse af SSE- og AVX-instruktioner understøttet af CPU'en for at forbedre ydeevnen for rækkeinddeling i Columnstore-indekser og masseindsættelser. De tilføjede også hardwareunderstøttelse til AES-NI-kryptering. Jeg skrev om, hvordan denne nye softwareunderstøttelse til specifik hardware blev kortlagt til forskellige processorgenerationer her. Forhåbentlig vil Microsoft udvide denne type kode til at dække AVX-512-understøttelse i SQL Server 2017.
En anden ny funktion i Skylake-SP er Intel Speed Shift-understøttelse, som gør det muligt for processorkernerne at ændre deres p-tilstande og c-tilstande meget mere effektivt (hvilket lader processorkernerne "drotte op" meget hurtigere). Denne funktion bygger på Hardware Power Management (HWPM) introduceret i Broadwell med en ny tilstand, der tillader HWPM og operativsystemet at arbejde sammen, kaldet native mode. Native-tilstand understøttes på Linux-kerne 4.10 og i Windows Server 2016.
Ifølge nogle af de tidlige benchmarks, jeg har set, har disse Skylake-SP-processorer omkring 10 % IPC-forbedring i forhold til Broadwell-EP-kerner, der kører med samme clock-hastighed. Software, der drager fordel af specifikke nye funktioner (såsom AVX-512 og FMA), kunne opnå meget højere ydeevne.
Med hensyn til SQL Server 2017 OLTP-arbejdsbelastninger indsendte Lenovo den 27. juni 2017 et TPC-E benchmarkresultat for en Lenovo ThinkSystem SR650 to-socket server med to 28-core Intel Xeon Platinum 8180 processorer. Den rå score for dette system var 6.598,36. Hvis vi dividerer denne score med 56 fysiske kerner, får vi en score/kerne på 117,83 (som er et mål for single-threaded CPU-ydelse).
For sammenligningens skyld indsendte Lenovo et TPC-E benchmark-resultat for en Lenovo System x3650 M5 to-socket server med to 22-core Intel Xeon E5-2699 v4 processorer. Den rå score for dette system var 4938,14. Ved at dividere den score med 44 fysiske kerner får vi en score/kerne på 112,23. Skylake-SP-systemet er omkring 5 % hurtigere for single-threaded ydeevne her, men husk, at dette er til en pre-release version af SQL Server 2017.
Hvis du ønsker et endnu mere detaljeret overblik over de specifikke ændringer og forbedringer i Intel Xeon Scalable Processor-familien sammenlignet med den tidligere generation af Xeon-processorer, kan du læse om det her.