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

 
 
> Хранение и работа с большими матрицами в ПЛИС, Размера 1000х500
count_enable
сообщение Aug 6 2014, 18:04
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 310
Регистрация: 28-01-13
Из: Лондон
Пользователь №: 75 384



Есть большая матрица, размера эдак 1000х500 8-битных целых. Требуемые операции (в порядке приоритета по скорости):
- Сумма выбранных элементов из столбца А, типа А1+А5+А100+А512.
- Сумма выбранных элементов из строки B, типа B1+B5+B100+B512.
- К выбранному элементу добавить или отнять 8-битное целое.
- Заполнение матрицы начальными значениями.

Операций умножения нет. Решение в лоб это декларация двумерного массива и работа как с однопортовой ОЗУ с чтением-записью поэлементно. Но так как по грубым прикидкам операция суммирования в столбце или в строке будет занимать около 3/4 всех вычислений, хочется чего-то более умного. Целевое железо это Virtex 5.

Думаю над тем чтобы разбить столбцы (число строк всегда больше числа столбцов) на отдельные BRAM, тогда можно будет выбрать все элементы строки в один цикл, но обратная задача - все элементы столбца тогда опять получается O(N). Есть ли решения получше? Можно использовать внешнюю DDR, но вряд ли она здесь поможет.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
count_enable
сообщение Aug 7 2014, 19:55
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 310
Регистрация: 28-01-13
Из: Лондон
Пользователь №: 75 384



Цитата
если есть желание, можете подъехать, лично расскажу, я пока в отпуске вблизи Монтекарловки, Вам вроде бы не далеко
Но ведь я-то не в отпуске sm.gif. Лучше Вы к нам, здесь значительно дешевле, а выпивка и море отличные.

Почему всё же FPGA? Ну, во-первых это предмет моего PhD и он уже пересмотру не подлежит. Во-вторых, так же как безалкогольное пиво это первый шаг к резиновой женщине, так и FPGA это дорожка ведущая к ASICu. Существует несколько очень обещающих аналоговых и гибридных нейрочипов, я же думаю о чисто цифровом.

Очень рад слышать, что кто-то еще здесь работал с RBM. Если не секрет, то какая область? Распознавание образов, системы управления? А строили свёрточные сети и автоэнкодеры? Они сейчас реально рулят, просто магия какая-то.
Go to the top of the page
 
+Quote Post
iiv
сообщение Aug 7 2014, 22:02
Сообщение #3


вопрошающий
*****

Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436



Цитата(count_enable @ Aug 8 2014, 01:55) *
Но ведь я-то не в отпуске sm.gif

так тем более - за знаниями в статистической области в командировку в Монтекарловку - к светиле в области статистики (у меня Нейчер есть) я Вам бы командировку-бы и подписал бы sm.gif

Цитата(count_enable @ Aug 8 2014, 01:55) *
Почему всё же FPGA? Ну, во-первых это предмет моего PhD и он уже пересмотру не подлежит.

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

Цитата(count_enable @ Aug 8 2014, 01:55) *
Очень рад слышать, что кто-то еще здесь работал с RBM. Если не секрет, то какая область? Распознавание образов, системы управления?

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

А по-существу, позвольте дать Вам несколько советов:

1. в статистических алгоритмах обычно очень много подгоночных параметров и нет четко устоявшихся алгоритмов, имейте рядом с хорошей вычислительной системой что-то типа софт-процессора. Очень желательно, чтобы у этого софтпроцессора было на борту и памяти и ресурсов достаточно, чтобы на лету что-то досчитать. Правда в диссере - это особенно не учитывается, а потребуется, когда Вы реально этим начнете заниматься sm.gif

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

3. Не ленитесь хотя бы на уровне статей сравнивать то, что получается на плиске у Вас или Ваших коллег/конкурентов с результатами на графических картах - часто помогает быстро упасть (или уронить шефа) с пьедестала.

Успехов!

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

Сообщений в этой теме
- count_enable   Хранение и работа с большими матрицами в ПЛИС   Aug 6 2014, 18:04
- - Maverick   Цитата(count_enable @ Aug 6 2014, 21:04) ...   Aug 6 2014, 18:39
- - SFx   Начните с модели на языке С/С++   Aug 6 2014, 19:00
|- - Maverick   добавлю к словам Цитата(SFx @ Aug 6 2014, 22...   Aug 6 2014, 19:03
- - count_enable   В матлабе уже давно всё работает, матлаб вообще пр...   Aug 6 2014, 19:30
|- - Timmy   Если разместить элементы матрицы в памяти диагонал...   Aug 6 2014, 20:18
- - count_enable   А можно поподробнее, что значит диагонально? К том...   Aug 6 2014, 20:25
|- - Timmy   Цитата(count_enable @ Aug 7 2014, 00:25) ...   Aug 6 2014, 20:44
- - RobFPGA   Приветствую! Полет буйной фантазии - если у В...   Aug 6 2014, 20:49
- - count_enable   RobFPGA, у меня XC5VLX110T, 64 DSP, 296 BRAM18. На...   Aug 6 2014, 22:22
- - RobFPGA   Приветствую! Ну с таким маленьким (чипом коне...   Aug 6 2014, 23:05
|- - Timmy   При диагональном расположении матрицы в памяти мож...   Aug 7 2014, 02:17
- - ASN   count_enable Уважаемый RobFPGA Вам посоветовал хор...   Aug 7 2014, 04:55
- - count_enable   Нутром чую, что советуете дельные вещи, но полност...   Aug 7 2014, 07:49
- - iiv   Цитата(count_enable @ Aug 7 2014, 00:04) ...   Aug 7 2014, 08:55
- - count_enable   Цитата(iiv @ Aug 7 2014, 12:55) Во-первых...   Aug 7 2014, 09:37
|- - ASN   count_enable Всё верно. Идея в том, что если у Вас...   Aug 7 2014, 10:37
|- - iiv   count_enable теперь конечно проще советовать, но ...   Aug 7 2014, 12:17
- - count_enable   Спасибо, уже начал потихоньку строчить код. Практи...   Aug 7 2014, 10:42
- - RobFPGA   Приветствую! Теоретически TC мог бы впихнуть ...   Aug 7 2014, 13:18
- - count_enable   Лиха беда начало... Существующие реализации RBM им...   Aug 7 2014, 13:58
|- - iiv   Цитата(count_enable @ Aug 7 2014, 18:58) ...   Aug 7 2014, 16:51
- - count_enable   Сразу практический вопрос: необходим ли RAMB18 при...   Aug 7 2014, 15:21
|- - SFx   Цитата(count_enable @ Aug 7 2014, 19:21) ...   Aug 7 2014, 16:10
- - dvladim   Я бы ещё добавил: 1. Идея использования двух порто...   Aug 7 2014, 17:34
- - count_enable   Да, конечно, будет или Микроблейз или Паверписишка...   Aug 8 2014, 09:34


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

 


RSS Текстовая версия Сейчас: 26th June 2025 - 08:01
Рейтинг@Mail.ru


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