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

 
 
> Тонкости работы LAPACK, на c
pdk
сообщение Aug 5 2010, 09:27
Сообщение #1


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

Группа: Validating
Сообщений: 107
Регистрация: 25-05-05
Из: Moscow
Пользователь №: 5 377



Имеется следующая проблема:
понадобилось мне разложение Шура, поиски привели к функции DHSEQR из LAPACK, с помощью f2c перевел с фортрана на c все что понадобилось (всего ~50 файлов), работает, но очень медленно.
Для матрицы N=38 0.32сек ( i920, MSVS без оптимизации).Сложность задачи всего 20*n^3 = 1MFLOP для N=38.
В MATLAB же даже для N=1000 функция schur выполняется мгновенно (судя по документации внутри тот же LAPACK ).

Кому приходилось сталкиваться с переносом кода из LAPACK, есть ли там тонкости?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Oldring
сообщение Aug 5 2010, 09:56
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(pdk @ Aug 5 2010, 13:27) *
Имеется следующая проблема:
понадобилось мне разложение Шура, поиски привели к функции DHSEQR из LAPACK, с помощью f2c перевел с фортрана на c все что понадобилось (всего ~50 файлов), работает, но очень медленно.
Для матрицы N=38 0.32сек ( i920, MSVS без оптимизации).Сложность задачи всего 20*n^3 = 1MFLOP для N=38.
В MATLAB же даже для N=1000 функция schur выполняется мгновенно (судя по документации внутри тот же LAPACK ).

Кому приходилось сталкиваться с переносом кода из LAPACK, есть ли там тонкости?


Классическая книжка Голуба по матричным вычислениям вас спасет.
Там проще написать с нуля, чем переносить. Там десяток строк всё разложение Шура, а не полсотни файлов.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post



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

 


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


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