реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Как рассчитать Флопсы?, Для разных процессоров
syoma
сообщение Jan 27 2016, 09:51
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Привет.
Собственно вопрос возник из того, что мы обнаружили, что наш код, сгенерированный из моделей в Matlab, нуждается только в гигагерцах и плавающей запятой. То есть скорость выполнения одного шага практически линейно зависит от частоты ядра, а скорость работы с памятью и периферией практически не влияет.
Сама прога не распараллеливается - то есть нужно просто производительное ядро.

Мы хотим понять, какой из представленных на рынке ширпотребных процессоров (ориентируемся на Intel Core) нам подходит больше. Как правило, это самый быстрый, но мне кажется, что не факт.
Я так понимаю, что производительность ядер процессоров меряется в GFlopsах. Но тот же интел перестал публиковать производительность своих процессоров с 2011 года, а Benchmarkи гоняют непонятно какие тесты разных версий, что невозможно сравнить процессоры разных лет выпуска или генераций.
Так вот возможно ли как-то рассчитать производительность в GFlops для конкретного процессора по даташиту? Или только тестировать?
Go to the top of the page
 
+Quote Post
krux
сообщение Jan 27 2016, 10:49
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 700
Регистрация: 2-07-12
Из: дефолт-сити
Пользователь №: 72 596



поскольку intel core - это суп, сваренный из multi-core, out-of-order, и 4-way superscalar, то вычислять по даташиту - это гадать на кофейной гуще.

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

Если объем данных сопоставим с полным размером оперативки - то в качестве теста реомендую linpack (можно взять LinX если у вас Windows). Собственно именно им гигафлопсы связки материнка-проц-память и определяются. Собственно, linpack-ом даже TOP500 оценивают.
Если объём данных до 50 мегабайт - есть Xeon-ы с 45 Мбайт кеш-памяти, можно подумать в эту сторону.
Если и того меньше - то смотреть только на частоту.


--------------------
провоцируем неудовлетворенных провокаторов с удовольствием.
Go to the top of the page
 
+Quote Post
syoma
сообщение Jan 27 2016, 11:06
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Данных у меня от силы 1 мегабайт. Это то, что надо прочитать из памяти, обработать и записать обратно. Сам шаг выполняется примерно за 80мкс на одном ядре процессора Core i7 второй генерации с тактовой частотой 2,2ГГц.
Проблема в том, что у меня цикл реалтайм в 100мкс, и поэтому загрузка процессора уже 80%, что приводит к мысле, что усложнить модель уже не получится, а оптимизации включать не хочется.

Go to the top of the page
 
+Quote Post
krux
сообщение Jan 27 2016, 12:52
Сообщение #4


Профессионал
*****

Группа: Свой
Сообщений: 1 700
Регистрация: 2-07-12
Из: дефолт-сити
Пользователь №: 72 596



если сейчас у вас процесс один - может попробовать разбить задачу на последовательные куски, и попытаться состыковать процессы друг с другом сокетами.
может тогда удастся задействовать >1 ядра?


--------------------
провоцируем неудовлетворенных провокаторов с удовольствием.
Go to the top of the page
 
+Quote Post
_4afc_
сообщение Jan 27 2016, 15:25
Сообщение #5


Профессионал
*****

Группа: Свой
Сообщений: 1 262
Регистрация: 13-10-05
Из: Санкт-Петербург
Пользователь №: 9 565



Цитата(krux @ Jan 27 2016, 13:49) *
поскольку intel core - это суп, сваренный из multi-core, out-of-order, и 4-way superscalar...


А если распараллеливать вычисления с плавающей точкой, сколько в современных i3, i5, i7, Xeon есть FPU?


Цитата(syoma @ Jan 27 2016, 12:51) *
Я так понимаю, что производительность ядер процессоров меряется в GFlopsах. Но тот же интел перестал публиковать производительность своих процессоров с 2011 года, а Benchmarkи гоняют непонятно какие тесты разных версий, что невозможно сравнить процессоры разных лет выпуска или генераций.


А Intel Microprocessor Export Compliance Metrics с обновлениями 21-Nov-2015 вас не устраивают?
Go to the top of the page
 
+Quote Post
syoma
сообщение Jan 27 2016, 18:45
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



Цитата
А Intel Microprocessor Export Compliance Metrics с обновлениями 21-Nov-2015 вас не устраивают?

Если кликнуть на любой серии, то скромно говорится о ноябре 2011. Также новые серии там отсутствуют вообще.
Go to the top of the page
 
+Quote Post
syoma
сообщение Jan 28 2016, 09:07
Сообщение #7


Профессионал
*****

Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368



С другой стороны - позавчера послал запрос по мылу на ctp.determinations@intel.com на i5-4400E - сегодня бодренько ответили с GFlopsами и прочей инфой. Так, что похоже проблема решена.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 6th July 2025 - 09:10
Рейтинг@Mail.ru


Страница сгенерированна за 0.01403 секунд с 7
ELECTRONIX ©2004-2016