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

 
 
 
Reply to this topicStart new topic
> Вопрос по FPGA, Интересуют возможности
v1vas
сообщение Feb 11 2015, 11:38
Сообщение #1





Группа: Участник
Сообщений: 12
Регистрация: 5-01-07
Пользователь №: 24 120



Приветствую всех!
Я в плис полный новичок, кому несложно - подскажите пожалуйста.

Есть алгоритм, для работы которого нужно:
700 32 битных слова памяти (массив)
3 32 битных константы

На каждый шаг работы алгоритма делается:
3 обращения к массиву на чтение
Два битовых сдвига и одно суммирование
Две операции XOR
Три сравнения.
Одно обращение к массиву на запись.

Примерно раз в 4 миллиарда операций нужно пробросить два двойных слова наверх.

Требуется обработать огромное количество таких данных (тот же алгоритм, разный входной массив).
А теперь собственно вопросы:
1) Насколько эта задача подходит для реализации на плис ?
2) Сколько одновременно выполняющихся таких "алгоритмов" можно засунуть в самую навороченную FPGA ?

Текущие тесты пока показывают, что
1) Вычислять на процессорах - совсем плохо
2) Xeon Phi - быстрее, но далеко от желаемой производительности
3) CUDA - Kepler K10 практически в шесть раз быстрее одного Intel Core i7 3.33 Ghz, но хочется большего.

Интересует на что можно рассчитывать на плис.
Go to the top of the page
 
+Quote Post
XVR
сообщение Feb 11 2015, 13:27
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 123
Регистрация: 7-04-07
Из: Химки
Пользователь №: 26 847



Цитата(v1vas @ Feb 11 2015, 14:38) *
1) Насколько эта задача подходит для реализации на плис ?
Хорошо подходит. Что бы знать насколько хорошо нужно более подробное описание потока данных и зависимостей между чтениями и записями в массив
Цитата
2) Сколько одновременно выполняющихся таких "алгоритмов" можно засунуть в самую навороченную FPGA ?

Если исходить из размера памяти (в вашем случае потребуется 2048х32, т.к. нужно увеличить число портов до 3х), то в самый большой Virtex7 (XC7VX1140T) влезет 1000 шт. В Virtex Ultra Scale (XCVU190) в 2 раза больше
На шаг алгоритма уйдет 2-4 тактов (надо смотреть data flow). Частота будет в районе нескольких сот мегагерц (100-200, может и больше)

Стоят они в районе 25-40K$ (первый), сколько будет стоить второй - даже боюсь предположить smile3046.gif
Go to the top of the page
 
+Quote Post
olegras
сообщение Feb 11 2015, 13:55
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 113
Регистрация: 12-03-07
Пользователь №: 26 075



Без описания Вашего алгоритма, параметров "входного массива", что такое "на процессорах - совсем плохо
" и др. - подсказать что-то конкретное довольно сложно.
Судя по всему можно добиться выполнения одного шага алгоритма за один такт (если например получится разбить 3 обращения к массиву на чтение - на 1 обращение к 3 массивам). Расчитывайте на такты в сотни МГц.
В любом случае задача полностью "подходит для реализации на плис".
По поводу сколько одновременно выполняющихся таких "алгоритмов" врядли Вам кто-то поможет (см. выше). Можно поступить примерно так:
В среде разработки выбрать "самую навороченную FPGA", реализовать алгоритм и посмотреть сколько он занимает емкости камня в процентах от общей емкости. А если мало - поставить несколько FPGA (т.к. все алгоритмы параллельны).
Кстати, самые навороченные FPGA стоят тысячи долларов...
Пока набирал текст - XVR уже ответил, получилось почти одно и тоже...

Сообщение отредактировал olegras - Feb 11 2015, 14:01
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Feb 11 2015, 14:14
Сообщение #4


отэц
*****

Группа: Свой
Сообщений: 1 729
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



QUOTE (olegras @ Feb 11 2015, 16:55) *
Пока набирал текст - XVR уже ответил, получилось почти одно и тоже...

..так не думаю, по моему XVR ответил правильнее.
з.ы.
Память кстати - можно внешнюю использовать, тогда поместиться гораздо больше 1000.


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
olegras
сообщение Feb 11 2015, 14:20
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 113
Регистрация: 12-03-07
Пользователь №: 26 075



Да ладно Вам, конечно правильнее. Я же написал "почти"...
По поводу внешней памяти - если важнее количество параллельных блоков - внешняя память поможет. Если важнее скорость - внешняя память может стать узким местом.
Go to the top of the page
 
+Quote Post

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

 


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


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