Оттестировал новой 64-битной версией программки FPU (x87) на нескольких компьютерах.
Попутно понял, что не совсем правильно построил логику работы теста. Сейчас у меня, если памяти не хватает, то тест на этой размерности пропускается и берется, следующая, большая.
Логика тут простая: при увеличении размерности в 2 раза требуемый объем памяти увеличивается в 4 раза, а производительность падает (теоретически) в 8 раз, то есть при увеличении размерности нужно меньше СЛАУ, что бы провести тест.
Если же использовать только доступную память, то время решения будет слишком маленьким, а погрешность теста ‒ высокая.
Но производительность современных процессоров настолько велика, да и ядер тоже более чем достаточно, так что получается на параллельном тесте памяти практически всегда не хватает на маленьких размерностях.
Видимо, нужно тестировать на имеющейся памяти, игнорируя выросшую погрешность.
Параллельно этим размышлениям появилась следующая мысль: видимо, при покупке нового компьютера, если есть цель обеспечить максимальную производительность современного процессора, нужно много памяти. Иначе процессор будет простаивать, ожидая загрузки страниц виртуальной памяти с внешнего ЗУ. Конечно, я тут не имею в виду процессорные обрубки для офисных пиш. машинок.
Минимум сейчас требуется, кмк, 16 ГиБ, рекомендуется 32 ГиБ, ну а если брать топовые процессоры с количеством ядер 8 и больше, то тут нужно все 64 ГиБ.
Для рабочих станции все цифры, мне кажется, надо увеличить минимум вдвое.
А теперь итоги теста.
Как видно, старенький мобильный i3-3227U с 2 ядрами выступает вровень с AMDшным A10-4600M с четырьмя ядрами. Более новый мобильный i5-8300H обгоняет i7-6700HQ какого-то более старого поколения.
А вот свежий бюджетный AMD Ryzen 5 3600 откровенно разочаровывает, так как новый десктопный процессор проигрывает обоим более пожилым мобильным конкурентам от Intel. Всегда почему-то думал, что десктопный процессор должен быть быстрее аналогичного по позиционированию мобильного.
После массы новостей, заполонивших тематические сайты, у меня создалось впечатление, что все же Ryzen должен выступать как минимум вровень с процессорами от Intel. Но нет. По крайней мере по FPU он явно проигрывает.
Правда, есть робкая надежда, что AMDшные процессоры хороши в каких-то иных дисциплинах. Проверю это чуть позже. Ну и понятно, что они точно дешевле Intel, а кроме того, у них есть PCIe 4.0.
Теперь посмотрим на многоядерную производительность в параллельном режиме.



Я как-то тоже ожидал что Ryzen победит :( Может AMD забили на x87 и работали только над ускорением SIMD инструкций?
ОтветитьУдалитьВы случайно не пробовали тестировать код без ручной оптимизации на разных процессорах? Delphi, хоть и не очень оптимально, но ведь SSE инструкции использует, интересно на них Ryzen тоже проиграет?
У меня тоже была такая идея, что AMD сосредоточили внимания на других блоках процессора. Но, с другой стороны получается,что Intel почему-то не забросили её?
УдалитьДа и насколько я понимаю, там особенно-то нечего оптимизировать, просто копируют с одного тех. процесса на другой... В общем, не понятно...
>Вы случайно не пробовали тестировать код без ручной оптимизации на разных процессорах?
Нет, не пробовал. Но я относительно скоро сделаю scalar SSE, там будет видно, хорош ли Ryzen.
> Но, с другой стороны получается,что Intel почему-то не забросили её?
УдалитьМожет у Intel просто удачнее сразу получилось, а AMD вместо того чтобы улучшать придумал 3DNow, дальше SSE и пошло поехало, про x87 забыли. Но это так пальцем в небо, я понятия не имею что да как на самом деле было.
> Но я относительно скоро сделаю scalar SSE, там будет видно, хорош ли Ryzen.
Тогда жду :) Очень интересно, у меня такого парка машин нет.
По поводу размера памяти, очень сильно от задачи зависит, хотя... памяти много не бывает. Лично мне, для работы, 16 ГБ - это минимум, с меньшим объемом не уверен что смог бы работать, но 32 - намного комфортнее, можно легко держать несколько проектов открытыми, 64 - не было, но думаю не простаивала бы. При этом основной объем памяти не активен, так, чтобы не свопилось. С другой стороны наши Data Scientists иногда и монстры с терабайтом запускают на AWS, и им все мало :)