Pinnacle Ridge срещу Coffee Lake – битката на IPC

Pinnacle Ridge срещу Coffee Lake – битката на IPC

В раздел: Прегледи, Ревюта, статии и ръководства, Статии от на 8.06.2018, 8,289 показвания
Страница от ревюто: 1 2 3 4 5 6



Резултати – AIDA64

За начало нека да видим как стоят нещата с производителността на паметта и кешовете. Двата Ryzen процесора имат практически идентична скорост на четене, запис и копиране от паметта. Разликата между тях идва от латентността на L2 и L3 кешовете и паметта – ако умножим дадените времена по 4 (4 ГХц, 4 такта за една наносекунда), то излиза че от AMD са намалили драстично изчакването на L2 кеша от 17 на 12 такта (42%!), като освен това леко са намалили и времето при L3 кеша от 45 на 38 такта (закръглени нагоре). Заедно с това е пипната и производителността на контролера на паметта, при който закъснението е намалено 6,6 нс, или най-вероятно 26 такта.

Сравнението с Intel е доста интересно, като при пропускателната способност на L1 кеша моделите на AMD дават малко под 50% от производителността на конкурента си. Това обаче е очаквано, тъй Core ядрата разполагат с 256-битови модули и за да може данните да се подават към тях синхронно, то и шините към L1 кеш паметта в моделите след Haswell са 256-битови, докато при Zen са 128-битови. Все пак изглежда, че освен това ефективността на достъпа до L1 е с една идея по-висока при Intel. При L2 кешовете обаче нещата се променят, като Zen/Zen+ имат предимство от около 20% при четенето, но пък Core има предимство от 20% при записа. При L1 и L2 латентносттана Zen+ (Ryzen 5 2600X) отговаря изцяло на тази при Intel (4 и 12 такта), което предвид по-големия обем в модела на AMD може да доведе до по-ефективна работа в някои ситуации. Интересното е че при L3 предимството е изцяло на страната на AMD, като дори Ryzen 5 1600X има по-добра производителност спрямо тази на Intel.

Тук обаче трябва да се отбележи и разликата между двете архитектури, като Zen използва разделен кеш между двата CCX, като вътре в CCX-а кешът е изцяло свързан с всички 4 ядра през crossbar, а между двата CCX се използва Infinity Fabric, която обаче работи със скоростта на паметта, а не на чипа, което в този случай означва 1600 МХц срещу 4000 МХц, т.е. 2,5 пъти по-бавно. В този смисъл резултатите на AIDA би следвало да отразяват производителността на ниво CCX, тъй като IF добавя сериозна латентност към комуникацията. При Intel кешът е разделен на блокове от 2 МБ към всяко ядро, като достъпът се извършва по двупосочна кръгова шина. Тук не е ясно какво точно отразяват стойностите, но най-вероятно става дума за усредненото време, тъй като комуникацията може да преминава между 1 и 3 „спирки” на кръговата шина.

Приключвайки с подсистематa на паметта, изглежда че Coffee Lake все пак предлага малко по-висока ефективност на четене и запис, въпреки че от AMD демонстрират доста добра производителност със своя DDR4 контролер. И това се случва въпреки използвания 2Т command rate при Core i7. Причината е, че контролера на паметта е свързан към същата кръгова шина както L3 кеша, така че няма добавена латентност спрямо него, докато при AMD връзката се извършва по Infinity Fabric, която стои на едно ниво след комутационната среда използвана за L3 в рамките на CCX и работи на по-ниска тактовата честота, което изглежда е причината да се добавят около 80 такта (20 нс) към латентността  на кеша. При все това латентността при AMD е еднаква спрямо всички ядра, докато при Intel тя е възможно да варира спрямо „отдалечеността” на ядрото от контролера по кръговата шина.

Процесорните тестове на AIDA64 са създадени да проверят отделните подсистеми на ядро и всеки от тестовете е внимателно оптимизиран за различните архитектури. Всеки от тях е паралелизиран, като поддържа многонишковост, многоядреност и многопроцесорност.

CPU Queen се влияе най-вече от ефективността на блока за предсказване на разклонения и свързаното с него наказание за грешно предсказване. В това отношение изглежда моделите на Intel имат предимство, въпреки че конвейера на Zen е малко по-къс. CPU PhotoWorkxx пък натоварва подсистемата на паметта и ефективността на изпълнението на целочислени SIMD инструкции, като поддържа дори AVX-512 и XOP. При това положение, въпреки че моделите на AMD разполагат с двойно по-къси AVX блокове, тъй като не се използва FMA, те са способни да обработват до 4 128-битови инструкции за такт, спрямо 2 256-битови инструкции при Intel. T.E. теоретичната пикова производителност е сходна, но при AMD се налага да се генерират и следят две вътрешни инструкции вместо една. Като комбинираме това с малко по-ниската производителност на контролера на паметта в Ryzen, получаваме изоставане с около 12%.

CPU Zlib използва основно обикновени целочислени х86 инструкции и натоварва паметта, като компресира данни с помощта на популярната zlib библиотека. Очаквано Coffee Lake излиза напред в това отношение най-вероятно отново заради по-добрата ефективност на работата с паметта.

Следващите два теста са свързани с криптиране на данни с AES и хеширане с SHA-1 алгоритми, като и двата са ускорени с AES-NI и други SIMD инструкции. Тук се демонстрира ясно архитектурното предимство на AMD в тази област, като моделите на AMD могат да изпълнят по 2 AES-NI инструкции на такт, докато Core са ограничени до 1.

FPU VP8 прекодира видео във VP8 формата на Google и е оптимизиран за различните версии на SSE (2/3/4.1) и MMX инструкции. Благодарение на това наличието на 4 отделни 128-битови блока отново дава предимство на AMD, като 2-та 256-битови блока при модела на Intel се налага да работят само с половината на възможностите си. Разликата обаче не е двойна, тъй като 4-те блока при Zen не са симетрични (2 за събиране и 2 за умножение/FMA) и съответно не винаги може да се достигне максимална ефективност. Все пак 30% предимство не е малко.

За сметка на това 256-битовите блокове в Core показват напълно възможностите си във FPU Julia и FPU Mandel, които изчисляват съответните фрактали, като Julia работи с единична точност (32-бита), а Mandel с двойна точност (64-бита). Тестовете са оптимизирани за всичко до AVX2, AVX-512 и FMA3/4. По тази причина пиковата производителност при Sky lake/Kaby lake/Coffee Lake архитектурите може да демонстрира потенциала, а Ryzen изостава с 30 и 45% назад.

FPU SinJulia пък на свой ред използва разширена точност (80-бита), поради което се използва най-обикновен х87 код. Отново, възможността на Zen да изпълнява до 4 FP операции на такт му дава сериозно предимство. Трябва да се отбележи, че чист х87 код и разширена точност се използва все по-рядко.

Накрая за Ray-Tracing тестовете важи същото като за FPU Julia и FPU Mandel, като в добавка се наслагва и лекото предимство на Core архитектурата при предсказване на разклонения.

Общо взето всичко това се покрива с видяното и очаквано до момента от процесорите при нормалните приложения – при целочислените операции AMD са много близо до Intel, при криптиране и хеширане са силно напред, но това е важно най-вече за сървърното пространство, а при работата с плаваща запетая всичко зависи от коректните изисквания и оптимизации – при използване на AVX2+FMA предимството е на страната на Intel, докато при липса на FMA, и при 128-битови операции (SSE2/3/4) нещата се обръщат в полза на AMD. Заедно с това важно е и какъв точно е миксът от инструкции.



Всички страници от статията:

  1. Що е то IPC
  2. Тестови системи
  3. Резултати - AIDA64
  4. Резултати - приложения
  5. Резултати - игри
  6. Заключение


Страница от ревюто: 1 2 3 4 5 6




Етикети: , , ,


8 коментара

  1. 1 Сашо // 08.06.2018 в 17:57

    > ефективността на блока за предсказване на разклонения и свързаното с него наказание за грешно предсказване

    И именно причината за meltdown и spectre проблемите, понеже се правят оптимизации повече от разумното.

    Бях чел някъде, че виндос *не* конфигурира всички поправки, за да избегне твърде голяма загуба на производителността. Предполагам където те си смятат, че риска не е голям за обикновения потребител. Нямам време сега да проучвам от чисто любопитство, вие сигурни ли сте, че всички поправки за тези проблеми са разрешени, когато правите тестовете?

  2. 2 Deyan Dimitrov // 08.06.2018 в 18:17

    Страхотна статия!

  3. 3 bat_zerga // 08.06.2018 в 22:46

    Да де, като “за „прост рефреш“ не е чак толкова зле”, ама реално AMD-тата до тука (или почти до тука) им свършва границата за overclock, a 8700k-то е declocked и има 1/4 отгоре потенциал да движи (моя 8700k го бях забравил на prime c AVX load та беше изкарал над ден с разкопващи три 1080ti в кутията и нямаше грижи с температурите на 5GHz). А и 8700к е станал the процесора за видеообработка с Adobe Premiere. Oще имам ban във форума и нямах възможност да пиша и споделя нова информация за 8700к, но от Adobe са си обновили софтуера да ползва освен CUDA ускорение и вграденото видео при часта с CPU сметките и тогава 8700к-то от изоставащ от 2700х с 12% го изпреварва с 20% и свършва работата почти с времената на Threadripper 1950X и Intel i9-7980XE. Та за хора занимаващи се с видеообработка с Adobe Premiere 8700 и 8700к за сега стават the процесорите за целта.
    https://www.gamersnexus.net/guides/3310-adobe-premiere-benchmarks-rendering-8700k-gpu-vs-ryzen
    https://www.youtube.com/watch?time_continue=273&v=Tj6rUdhmIvQ

  4. 4 Nik // 09.06.2018 в 08:44

    Много качествена статия, показваща големият напредък на AMD в последната 1,5г. и същевременно колко са близки като производителност двата процесорни производителя при еднакви тактови честоти. Мисля, че важен фактор при крайният избор специално при 2600Х и 8700К е цената. Да, в различни класове са, но тестовете доказват че разликата в производителността в повечето ситуации е много малка, а разликата в цената остава голяма.

  5. 5 Димитър Чизмаров (DeepBlue) // 09.06.2018 в 15:48

    @Сашо – каквото и както инсталира Windows Update, това е. В края на краищата се съмнявам че повечето нормални потребители все още помпнят каква са Спектър и Мелтдаун. Предвид резултатите в предната статия с включен HPET и трагичната производителност на интелите в някои приложения, си мисля че дори и само тако WU доста добре ги пачва.

    @bat_zerga – нещо си пропуснал, че това не е сравнение на процесорите, а на архитектурите.

  6. 6 Додко // 09.06.2018 в 16:56

    На целия свят стана ясно как 6700к са супер стабилни и студени на 5гхз,докато се крайно тежко натоварени с … тетрис.Знаем ги,няма смисъл да се натяква от всеки собственик,как процесора му е мегастабилния на 5-6-7 и нагоре гигахерци.

  7. 7 Any // 09.06.2018 в 18:55

    Аз още си връткам едно Атлонче Х2 250 и за нет минавам през виртуални машини, но последните месеци (дистроверсии) файърфокса е невъзможен. Като го спра системата си работи добре, но пусна ли лисицата и зависва всичко. Мисля си, че е от лековете за Спектър и Мелтдоун. Време е за някое Ризенче. Дилло лети впрочем. Ама да сравняваш каруца с каляска не е работа.

  8. 8 Сашо // 09.06.2018 в 20:50

    DeepBlue, то е ясно, че потребителите няма да пипат стандартните настройки. Мисълта ми беше, че този невероятен бранч предиктор и спекулатор, който някой може да хвали, всъщност ти дава производителност за сметка на сигурността. То вярно, че като си с виндос вече имаш по-голям проблем. Но ако като потребители не изискваме сигурността да е на ниво във всеки компонент от компютъра ни, става положението неуправляемо, като около 2000-та където всеки нескопосан хакер може да ти влезе.
    Става както автомобилните производители дават некоректни нива на емисиите, че уж колата е екологична и мощна, а реално е или едното или другото.
    Нямам против да правят компромис, но да кажат нещата както са си и вече потребителя да си прави сметка дали му трябва едното или другото.