170 похожих чатов

Почему бенчмарки гоняют на маках везде? я сервера не на

маках держу, а разница на epyc-е каком-нибудь может быть в другую сторону

21 ответов

13 просмотров

там есть бенчмарки на Ryzen 5 3600 и i7 3930k если у вас есть возможность запустить на условном Epyc или Xeon то с радостью приму 🙂

Alexey-Ermakov Автор вопроса
Roman Sharkov
там есть бенчмарки на Ryzen 5 3600 и i7 3930k есл...

я на ржавом себе когда парсер выбирал - гонял тесты на целевом железе на aws в 4-5 долларов уложился :)

Alexey Ermakov
я на ржавом себе когда парсер выбирал - гонял тест...

в любом случае с удовольствием приму результаты на другом железе) но в целом глобальной разницы быть не должно

Alexey-Ermakov Автор вопроса
Roman Sharkov
в любом случае с удовольствием приму результаты на...

у меня были прям кардинально разные, но это специфично для моего случая, возможно

Alexey Ermakov
у меня были прям кардинально разные, но это специф...

тут в целом идёт оптимизация на instruction-level parallelism, сокращение branch misprediction до минимума и удаление всего возможного жира включая минимизацию вызова функций

Roman Sharkov
там есть бенчмарки на Ryzen 5 3600 и i7 3930k есл...

закинул пр с результатами бенча на 2 х E5-2667 v2

Anton
закинул пр с результатами бенча на 2 х E5-2667 v2

спасибо! как и предполагалось, соотношения практически не отличаются. я конечно не могу убедиться что бенчмарк был проведён корректно (потенциальные источники шумов были исключены до максимуму, throttling'а не было, и т.д.)

маки априори так себе платформа для бенчмарков

Alexey-Ermakov Автор вопроса
Павло Побуджувач
маки априори так себе платформа для бенчмарков

ну, пока сервера на армах не распространены - да я об этом и написал

Alexey Ermakov
я на ржавом себе когда парсер выбирал - гонял тест...

А кто то запускает софт на bare metal и результаты тестов на условном aws им ничего не дадут

А можно не брать и на одном железе сравнить библиотеки, чтобы увидеть разницу )

Alexey-Ermakov Автор вопроса
Павло Побуджувач
маки априори так себе платформа для бенчмарков

osx очень много иногда документированной магии имеет внутри - например на М1 тот же шедулер имеет свою логику раскидывания задач по ядрам, на которую невозможно повлиять и которая может вызывать много приколов если вдруг у тебя нагрузка стала странной. То есть есть задачи когда 4 потока казалось бы идеально распаралеливающегося кода (где каждый тред не зависит от работы соседа) могут оказаться быстрее чем 8 (на М1, точнее быстрее чем 5, 6, 7 и скорее всего 8). И логика этого всего меняется от версии ОС (в 12-ой макоси поведение было чуть другим чем в 13-ой)

Anton
А можно не брать и на одном железе сравнить библио...

а зачем, если мы получим де-факто лишь разные циферки, соотношение останется примерно прежним

Павло Побуджувач
а зачем, если мы получим де-факто лишь разные цифе...

ну окей, это верно лишь в рамках го. В рамках нормальных языков с нормальными оптимизаторами и -march=native флагом, могут всплыть новые детали, связанные со специфичными инструкциями, недоступными ранее

Павло Побуджувач
тем более

это все о том, что бенчмарки проводить сложно и можно случайно получить мусор в качестве результата, если ты случайно сделал что-то не то. Другой пример - в osx есть системный blas, который на самом деле интерфейс к Accelerate Framework’у везде, где это возможно. И если цель побенчмаркать только процессор - можно на этом погореть и получить странные результаты. Притом на всем коде, что линкуется с blas’ом.

Павло Побуджувач
ну окей, это верно лишь в рамках го. В рамках норм...

Надо еще помнить, что native не определяет ничего, он использует захардкоженные авторами компилятора списки поддерживаемого, размеры кэшей и прочего. Если там ошибка - тоже будет плохо. Или если компилятор ничего не знает о процессоре.

Vladimir Smirnov
Надо еще помнить, что native не определяет ничего,...

говоря про корнер-кейсы, мы можем дойти до неточного следования спеке. Вот где веселье начинается суть нейтива как раз в том, что используются более широкий набор инструкций, доступный под конкретный процессор. А это может открыть новые пути для оптимизаций, начиная со свертывания директив, заканчивая более оптимальными способами решения задачи

Павло Побуджувач
говоря про корнер-кейсы, мы можем дойти до неточно...

Ну корнер кейс или нет, а Zen 4 появился только в gcc 13.1, который вышел в апреле. А вот процессор вышел в сентябре прошлого года. И все это время тюнить надо было вручную хотя бы по набору инструкций. А так еще нужно правильно расставлять цену каких-то инструкций.

Похожие вопросы

Обсуждают сегодня

я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
в сях есть множество как в питоне? для удаление дубликатов
Linus
25
читать файл максимально быстро? странный вопрос))
zamtmn
53
Я хочу запустить свой проект в тг. Что-то между пирамидой и майнилкой. Еще подобного ничего не было. Уникальная идея. Нужен именно не бот, а приложение. С ввод, выводом тон...
Павел А.
6
а как бы вылезти из ИО, что то типа IO -> Ether или в какую сторону смотреть ? что то туплю
Fedor
14
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Реально в одиночку написать игровой движок на Си?
ㅤ (SVO)
11
Всем привет, товарищи! Можете меня поздравить, получил "отлично" за дисциплину "языки программирования низкого уровня". Честно говоря, не очень хочу, чтобы основы асма, которы...
Ыиу
1
Карта сайта