
Met de komst van de zevende generatie Intel Core-processors werd het voor velen duidelijk dat de 'Tick-Tock'-strategie die Intel jarenlang volgde, faalde. De belofte om het technisch proces van 14 naar 10 nm te verkleinen, bleef slechts een belofte; een lange 'Tock'-periode begon met Skylake, waarin Kaby Lake (de zevende generatie) opkwam, gevolgd door de plotselinge Coffee Lake (de achtste) met een minimale verandering in het proces van 14 nm naar 14 nm+, en zelfs Coffee Lake Refresh (de negende). Het lijkt erop dat Intel inderdaad een korte koffiepauze nodig had. Uiteindelijk hebben we verschillende processors van verschillende generaties die zijn gebaseerd op één microarchitectuur, Skylake, aan de ene kant. En de beweringen van Intel dat elke nieuwe processor beter is dan de vorige, aan de andere kant. Maar het is niet echt duidelijk waarin precies…

Laten we dus teruggaan naar onze generaties. En kijken hoe ze van elkaar verschillen.
Kaby Lake
De verschijning van processors in de detailhandel vond plaats begin 2017. Wat is er nieuw aan deze familie ten opzichte van zijn voorganger? Allereerst is er een nieuwe grafische kern – Intel UHD 630. Daarnaast ondersteuning voor de Intel Optane-geheugentechnologie (3D Xpoint), en een nieuwe chipset van de 200-serie (de zesde generatie werkte met de 100-serie). En dat is het qua echt interessante innovaties.
Coffee Lake
De achtste generatie met de codenaam Coffee Lake werd eind 2017 uitgebracht. In de processors van deze generatie werden er extra kernen en proportioneel meer L3-cache toegevoegd, de Turbo Boost werd verhoogd met 200 megahertz, en ondersteuning voor DDR4-2666 werd geïntroduceerd (eerder was dit DDR4-2400), maar ondersteuning voor DDR3 werd afgesneden. De grafische kern bleef hetzelfde, maar kreeg een verhoging van 50 MHz. Voor alle frequentieverhogingen werd de warmteafgifte verhoogd tot 95 watt. En natuurlijk een nieuwe chipset van de 300-serie. Dit was helemaal niet noodzakelijk, want het was vrij snel mogelijk om deze familie op 100-serie chipsets te draaien, hoewel vertegenwoordigers van Intel zeiden dat dit onmogelijk was vanwege de bouw van de stroomcircuits. Later erkende Intel officieel dat ze ongelijk hadden. Dus wat is er nieuw in de achtste generatie? Eigenlijk lijkt het meer op een gewone refresh met extra kernen en frequenties.
Coffee Lake Refresh
Hé! Daar hebben we de refresh! In het vierde kwartaal van 2018 werden de Coffee Lake-processors van de 9e generatie uitgebracht, uitgerust met hardwarematige bescherming tegen enkele kwetsbaarheden van Meltdown/Spectre. De hardwarewijzigingen in de nieuwe chips beschermen tegen Meltdown V3 en L1 Terminal Fault (L1TF Foreshadow). Wijzigingen in de software en microcode beschermen tegen Spectre V2, Meltdown V3a en V4. De bescherming tegen Spectre V1 zal nog steeds worden gerealiseerd via besturingssysteemupdates. De introductie van patches op chipniveau zal de impact van softwarepatches op de prestaties van de processors verminderen. Maar dit alles met de bescherming werd door Intel alleen geïmplementeerd in de processors voor de massamarkt: i5-9600k, i7-9700k, i9-9900k. Alle anderen, inclusief serveroplossingen, kregen geen hardwarematige bescherming. Voor het eerst in de geschiedenis van consumentenprocessors ondersteunen de Coffee Lake Refresh-processors tot 128 GB RAM. En dat is het, verder geen wijzigingen.
Wat hebben we uiteindelijk? Twee jaar refreshes, gemanipuleer met kernen en frequenties, plus een paar kleine verbeteringen. Ik wilde de prestaties van de belangrijkste vertegenwoordigers van deze families objectief beoordelen en vergelijken. Toen ik dan ook een set van de zevende tot de negende generatie ter beschikking had — onze i7-7700 en i7-7700k werden recentelijk aangevuld met de nieuwe i7-8700, i7-9700k en i9-9900k, maakte ik van de gelegenheid gebruik om vijf verschillende Intel Core-processoren te laten zien wat ze konden.
Testen
Bij de test zijn vijf Intel-processoren betrokken: i7-7700, i7-7700k, i7-8700, i7-9700k, i9-9900k.

Tactische en technische specificaties van de platformen
De Intel-processoren i7-8700, i7-9700k en i9-9900k hebben dezelfde basisconfiguratie:
- Moederbord: Asus PRIME H310T (BIOS 1405),
- RAM: 16 GB DDR4-2400 MT/s Kingston, 2 modules, in totaal 32 GB.
- SSD: 240 GB Patriot Burst, 2 stuks in RAID 1 (een gewoonte die is ontstaan uit jarenlange ervaring).
De Intel-processoren i7-7700 en i7-7700k werken ook op een identiek platform:
- Moederbord: Asus H110T (BIOS 3805),
- RAM: 8 GB DDR4-2400 MT/s Kingston, 2 modules, in totaal 16 GB.
- SSD-schijf: 240 GB Patriot Burst 2 stuks in RAID 1.
We gebruiken op maat gemaakte kasten met een hoogte van 1,5 eenheid. Hierin worden vier platforms geplaatst.
Software: OS CentOS Linux 7 x86_64 (7.6.1810).
Kernel: 3.10.0-957.1.3.el7.x86_64
Ingevoerde optimalisaties ten opzichte van de standaardinstallatie: boot-parameters toegevoegd: elevator=noop selinux=0.
De tests worden uitgevoerd met alle patches tegen de Spectre-, Meltdown- en Foreshadow-aanvallen, die in deze kernel zijn teruggepapegaaid. Het is niet uitgesloten dat de testresultaten op nieuwere en actuele Linux-kernels kunnen verschillen van de verkregen resultaten, en de scores beter zullen zijn. Maar, ten eerste, persoonlijk vind ik CentOS 7 leuker, en ten tweede, RedHat is actief bezig met het backporten van innovaties met betrekking tot hardwareondersteuning uit nieuwe kernels naar hun LTS-versie. Daarop hoop ik 🙂
De tests die ik heb gebruikt voor het onderzoek
- Sysbench
- Geekbench
- Phoronix Test Suite
Sysbench-test
Sysbench is een testpakket (of benchmarks) voor het evalueren van de prestaties van verschillende subsystemen van de computer: processor, RAM, opslagmedia. De test is multi-threaded en test op alle cores. In deze test heb ik twee indicatoren gemeten:
- CPU-snelheid gebeurtenissen per seconde — het aantal bewerkingen dat de processor per seconde uitvoert: hoe hoger de waarde, hoe krachtiger het systeem.
- Algemene statistieken totaal aantal evenementen — het totale aantal uitgevoerde gebeurtenissen. Hoe hoger deze waarde, hoe beter.
Geekbench-test
Een pakket van tests, uitgevoerd in single-threaded en multi-threaded modus. Het resultaat is een bepaalde prestatie-index voor beide modi. Hieronder staan links naar de testresultaten. In deze test zullen we twee belangrijke indicatoren bekijken:
— Single-Core Score — single-threaded tests.
— Multi-Core Score — multi-threaded tests.
Meeteenheid: abstracte "papegaaien". Hoe meer "papegaaien", hoe beter.
Phoronix Test Suite-test
Phoronix Test Suite — een zeer uitgebreide set tests. Ondanks dat alle tests uit het pts/cpu-pakket zijn uitgevoerd, zal ik alleen de resultaten geven van die welke ik persoonlijk bijzonder interessant vond, vooral aangezien de resultaten van weggelaten tests alleen maar de algemene trend bevestigen.
Bijna alle tests die hier gepresenteerd worden, zijn multi-threaded. Uitzonderingen zijn slechts twee daarvan: de single-threaded tests Himeno en LAME MP3 Encoding.
In deze tests geldt: hoe hoger de score, hoe beter.
- Multi-threaded test John the Ripper voor het kraken van wachtwoorden. We nemen de cryptografische algoritme Blowfish. Het meet het aantal operaties per seconde.
- Himeno-test — een lineaire solver voor Poisson-druk, die de Jacobi-puntmethode gebruikt.
- 7-Zip Compressie — test van 7-Zip met gebruik van p7zip met de geïntegreerde prestatietestfunctie.
- OpenSSL is een set tools die de SSL (Secure Sockets Layer) en TLS (Transport Layer Security) protocollen implementeren. Het meet de prestaties van RSA 4096-bit OpenSSL.
- Apache Benchmark — deze test meet hoeveel aanvragen per seconde dit systeem kan verwerken bij het uitvoeren van 1.000.000 aanvragen, waarbij 100 aanvragen gelijktijdig worden uitgevoerd.
En in deze geldt: hoe lager de score, hoe beter.
- C-Ray test de CPU-prestaties op berekeningen met drijvende komma getallen. Deze test is multi-threaded (16 threads per core), het schiet 8 stralen uit elk pixel voor anti-aliasing en genereert een afbeelding van 1600×1200. De tijd van de testuitvoering wordt gemeten.
- Parallel BZIP2 Compression — de test meet de tijd die nodig is om een bestand (het .tar-pakket van de broncode van de Linux-kernel) te comprimeren met BZIP2-compressie.
- Codering van audio- en videogegevens. De LAME MP3 Encoding-test wordt in één thread uitgevoerd, terwijl de ffmpeg x264-test multi-threaded is. De tijd voor het doorlopen van de test wordt gemeten.
Zoals je kunt zien, bestaat het testpakket uitsluitend uit synthetische tests, die het verschil tussen processors kunnen laten zien bij het uitvoeren van bepaalde taken, zoals het kraken van wachtwoorden, codering van mediacontent, en cryptografie.
Een synthetische test kan, in tegenstelling tot een test die wordt uitgevoerd in omstandigheden die dicht bij de realiteit komen, een zekere zuiverheid van het experiment garanderen. Daarom is de keuze gevallen op synthetische tests.
Het is mogelijk dat je bij het oplossen van specifieke taken in een echte omgeving interessante en onverwachte resultaten kunt behalen, maar 'de algemene temperatuur van het ziekenhuis' zal maximaal overeenkomen met wat ik heb verkregen op basis van de tests. Het is ook niet uitgesloten dat ik hogere resultaten had kunnen behalen door de Spectre/Meltdown-beveiliging uit te schakelen bij het testen van de 9e generatie processors. Maar om vooruit te lopen, zeg ik — ze hebben zich al uitstekend bewezen.
Spoiler: de sterke punten zullen de kernen, threads en kloksnelheden zijn.
Al vóór de tests bestudeerde ik zorgvuldig de architectuur van deze processorfamilies, dus ik verwachtte dat er geen significante verschillen tussen de testobjecten zouden zijn. En dat is niet zozeer de omvang van de verschillen, maar eerder het ongebruikelijke: waarom wachten op interessante resultaten in de tests, als je met processors werkt die in wezen zijn gebouwd op één en dezelfde kern. Mijn verwachtingen bleken juist, maar er was nog wel iets dat niet helemaal was zoals ik dacht…
En nu, de testresultaten.

Het resultaat is volkomen logisch: wie meer threads en een hogere frequentie heeft, krijgt ook meer punten. Daarom staan de i7-8700 en i9-9900k vooraan. Het verschil tussen de i7-7700 en i7-7700k is 10% in zowel de single-thread als multi-thread test. De achterstand van de i7-7700 ten opzichte van de i7-8700 is 38% en ten opzichte van de i9-9900k is dat 49%, dus bijna het dubbele, maar de achterstand ten opzichte van de i7-9700k is slechts 15%.

Links naar de testresultaten:
Testresultaten uit het pakket The Phoronix Test Suite

In de John The Ripper-test is het verschil tussen de tweelingbroers i7-7700 en i7-7700k 10% ten gunste van de 'k', dankzij het verschil in Turbo Boost. Voor de processors i7-8700 en i7-9700k is het verschil zeer gering. De i9-9900k verslaat iedereen dankzij een groter aantal threads en een hogere kloksnelheid. De tweelingbroers blijven bijna op 2 keer achter.

Het resultaat van de C-Ray-test lijkt mij het interessantst. De aanwezigheid van de Hyper-Threading-technologie bij de i9-9900k levert in deze multi-thread test slechts een kleine winst op ten opzichte van de i7-9700k. Maar de tweelingbroers blijven bijna 2 keer achter bij de leider.

In de single-thread test van Himeno is het verschil niet zo groot. Een merkbaar voordeel van de 8e en 9e generatie ten opzichte van de tweelingen: de i9-9900k verslaat hen met 18% en 15% respectievelijk. Het verschil tussen de i7-8700 en i7-9700k zit binnen de foutmarge.

Bij de compressietest met 7zip presteren de tweelingen 44-48% slechter dan de i9-9900k. Dankzij het grotere aantal threads verslaat de i7-8700 de i7-9700k met 9%. Maar dat is niet genoeg om de i9-9900k te overtreffen, waardoor we een achterstand van bijna 18% zien.

De tijdcompressietest met het BZIP2-algoritme toont vergelijkbare resultaten: de threads winnen.

Bij de mp3-codering is er een 'trap' met een maximale kloof van 19,5%. In de ffmpeg-test verliest de i9-9900k van de i7-8700 en i7-9700k, maar overtreft de tweelingen. Ik heb deze test meerdere keren opnieuw gedaan voor de i9-9900k, maar het resultaat blijft altijd hetzelfde. Dit is al onverwacht 🙂 In de multi-thread test gaf de meest multi-threaded processor van de geteste modellen zo'n laag resultaat, lager dan de 9700k en 8700. Er zijn geen duidelijke verklaringen voor dit fenomeen, en ik wil er geen veronderstellingen over doen.

De openssl-test toont een 'trap' met een kloof tussen de tweede en derde trede. Het verschil tussen de tweelingen en de leider i9-9900k varieert van 42% tot 47%. De kloof tussen de i7-8700 en de i9-9900k is 14%. Belangrijk zijn de threads en kloksnelheden.

In de Apache-test overtroefde de i7-9700k iedereen, inclusief de i9-9900k (6%). Maar in het algemeen is het verschil niet significant, hoewel er een kloof van 24% is tussen het slechtste resultaat van de i7-7700 en het beste van de i7-9700k.

Over het algemeen leidt de i9-9900k in de meeste tests, met enkel een misser in ffmpeg. Als je met video gaat werken, kies dan liever de i7-9700k of i7-8700. De i7-9700k staat op de tweede plaats in het algemeen klassement, en hij loopt iets achter op de leider, maar in de ffmpeg en apache tests overtreft hij zelfs. Dus ik adviseer hem en de i9-9900k gerust aan degenen die regelmatig grote pieken in bezoekers op hun website hebben. De processors zouden je niet teleurstellen. Over video heb ik al gesproken.
De i7-8700 heeft goede resultaten in de Sysbench, 7zip en ffmpeg tests.
In alle tests presteert de i7-7700k beter dan de i7-7700 van 2% tot 14%, en in de ffmpeg test zelfs 16%.
Ter herinnering: ik heb geen optimalisaties uitgevoerd, behalve die vermeld aan het begin, wat betekent dat bij het installeren van een schoon systeem op een gloednieuwe dedi van ons, je precies dezelfde resultaten zult krijgen.
Kernen, threads, kloksnelheden - dat is ons alles.
Over het algemeen waren de resultaten voorspelbaar en verwacht. Bij vrijwel alle tests verschijnt de 'trap naar de lucht', die de afhankelijkheid van de prestaties van het aantal kernen, threads en frequenties aantoont: meer van dit alles leidt tot betere resultaten.
Aangezien alle proefpersonen feitelijk refreshes zijn van dezelfde core op hetzelfde proces en geen fundamentele architectonische verschillen vertonen, konden we geen 'overweldigend' bewijs vinden dat de processors kwalitatief van elkaar verschillen.
Het verschil tussen de i7-9700k en i9-9900k in alle tests, behalve Sysbench, neigt naar nul, aangezien ze in wezen alleen verschillen door de aanwezigheid van Hyper-Threading en een paar extra megahertz in Turbo Boost-modus voor de i9-9900k. In de Sysbench-test is het echter precies andersom: hier draait het niet om het aantal kernen, maar om het aantal threads.
Er is een zeer grote kloof in de multithread-tests tussen de i7-7700(k) en i9-9900k, in sommige gevallen zelfs tot twee keer. Er is ook een verschil tussen de i7-7700 en i7-7700k — de extra 300 MHz geven de laatste net wat meer pit.
Ik kan ook niet echt iets zeggen over de kwalitatieve invloed van de hoeveelheid cachegeheugen op de testresultaten — we hebben wat we hebben. Bovendien moet de ingeschakelde bescherming tegen de Spectre/Meltdown-familie de invloed van de hoeveelheid op de testresultaten aanzienlijk verminderen, maar dat is niet zeker. Als de gewaardeerde lezer 'brood en spelen' van onze marketingafdeling verlangt, ben ik graag bereid om u een test zonder bescherming voor te schotelen.
Als je me zou vragen: welke processor zou jij kiezen? — zou ik eerst de broekzakken tellen en degene kiezen die ik kan betalen. Kort gezegd, je kunt van punt A naar punt B met een 'Lada', maar met een 'Mercedes' gaat het toch sneller en aangenamer. Processors die op dezelfde architectuur zijn gebaseerd, zullen in meer of mindere mate een vergelijkbaar scala aan taken kunnen uitvoeren — sommigen gewoon goed, anderen uitstekend. Ja, zoals de tests hebben aangetoond, zijn er geen wereldschokkende verschillen tussen hen. Maar de kloof tussen de i7 en i9 is er nog steeds.
Bij het kiezen van een processor voor bepaalde specifieke taken, zoals het werken met mp3, compileren vanaf bronbestanden of het renderen van driedimensionale scènes met lichtverwerking, is het zinvol om naar de relevante testresultaten te kijken. Bijvoorbeeld, ontwerpers kunnen meteen de i7-9700k en i9-9900k overwegen, terwijl voor complexe berekeningen een processor met Hyper-Threading technologie moet worden gekozen, dus elke processor behalve de i7-9700k. Hier komen de threads tot hun recht.
Dus ik raad aan om te kiezen wat je je kunt veroorloven rekening houdend met de specificatie, en dat zal je gelukkig maken.
Bij de testen werden servers met processors i7-7700, i7-7700k, i7-8700k, i7-9700k en i9-9900k gebruikt met . Een van hen kan je met 5% korting voor 3 maanden bestellen — neem contact op met met de code «Ik kom van Habra». Bij betaling voor een jaar krijg je nog eens 10% korting.
De hele avond op de arena , systeembeheerder FirstDEDIC
Bron: habr.com
