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

 
 
 
Reply to this topicStart new topic
> АЛУ и большая разрядность данных
bva_rzn
сообщение Jul 25 2013, 12:56
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 15-08-11
Пользователь №: 66 737



Доброго времени суток.

ПЛИС Cyclone IV E.

Решаю задачу решения СЛАУ. Ax=B. Система 5 на 5.
В матрице A все числа целые (разрядность 52 бита).
Взял метод Холецкого без вычисления квадратного корня (разложение LDL^t). Получилось около 20 делений.
Если числа переводить во floaе, то кажное умножение займёт 33 такта.
Причём в проекте необходимо решить три таких системы.

И здесь возник вопрос: при такой разрядности данных (52 бита) есть ли смысл переходить на фиксированную точку?

Спасибо.



Go to the top of the page
 
+Quote Post
iiv
сообщение Jul 25 2013, 13:06
Сообщение #2


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

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



Цитата(bva_rzn @ Jul 25 2013, 17:56) *
Решаю задачу решения СЛАУ. Ax=B. Система 5 на 5.

У Вас есть больше информации о матрице - например, если Вы взяли Холецкого, значит - положительно определенная, но вот об обусловленности, диагональном преобладании, структуре Вы ничего не сказали?

Как Вариант, взять метод сопряженного градиента, параллелится легко, сойдется гарантированно за 5 шагов, не вывалится как Холецкий если будет почти сингулярная, и если сильно постараться, то будет только одно деление и квадратный корень. Без последнего тоже можно обойтись, но нужно явно прорисовать весь алгоритм и тащить эту нормировку с шага на шаг, а в последнем - искать его итеративно (ИМХО, проще все-таки с квадратным корнем).

EDIT и самое главное, сопряженный градиент тривиально пишется в целочисленной арифметике - все векторы у Вас нормированные, то есть, при экспоненте 2**52 Вы можете не задумываясь соскалировать каждый вектор на эту же величину и взять целое. Есть куча более элегантных решений и для CG и без оного, но они обычно на 5*5 матрицах не применяются sad.gif
Go to the top of the page
 
+Quote Post
bva_rzn
сообщение Jul 25 2013, 13:23
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 30
Регистрация: 15-08-11
Пользователь №: 66 737



Да, матрица положительно определённая, симметричная.
Метод сопряжённых градиентов применяется для поиска экстренума нелинейной функции, но у меня система линейная.
Go to the top of the page
 
+Quote Post
iiv
сообщение Jul 25 2013, 22:47
Сообщение #4


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

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



Цитата(bva_rzn @ Jul 25 2013, 19:23) *
Да, матрица положительно определённая, симметричная.

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

Цитата(bva_rzn @ Jul 25 2013, 19:23) *
Метод сопряжённых градиентов применяется для поиска экстренума нелинейной функции, но у меня система линейная.

Неее, не надо пролистывать гугл или википедию, читайте их пожалуйста, внимательно. Для квадратичной функции - которая порождает линейную систему, метод сходится за размерность. Можно на Hestenes и Stiefel для верности погуглить, они примерно 60 лет назад впервые метод сопряженных градиентов для решения линейных систем опубликовали...

Но, боюсь, Вам все-таки мат часть надо будет внимательнее учить, Холецкий с выделенной диагональю (LDL^T) для Вашей матрицы требует не как Вы сказали 20 делений, а только 5, плюс 30 умножений, но все это нужно делать или с плавающей точкой, или можно с фиксированной, но с выбором ведущего, или знать больше о матрице.
Go to the top of the page
 
+Quote Post
Maverick
сообщение Jul 25 2013, 22:59
Сообщение #5


я только учусь...
******

Группа: Модераторы
Сообщений: 3 447
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



Цитата(bva_rzn @ Jul 25 2013, 15:56) *
Доброго времени суток.
Спасибо.

Вы это смотрели?


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post

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

 


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


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