|
Демодулятор PSK, Оптимизация |
|
|
|
Jan 25 2009, 09:27
|
Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030

|
Цитата(Serg76 @ Jan 24 2009, 23:08)  Доброго времени суток! После написания программного ФМ демодулятора сразу возникла проблема оптимизиции. Начал с оптимизации структуры демодулятора, переписал основные узлы, убрал тривиальные операции, что можно заменил таблицами и т.д. и т.п., в общем выжал все возможное. В результате получил 1,5 Мсим/с символьной скорости в реальном масштабе времени на Intel Core2Duo 2,4 GHz. Но надо еще быстрее. Единственным возможным выходом вижу переход демодулятора на работу с целочисленной арифметикой т.е. замена всех операций с плавающей точкой на целочисленные, но как это реализовать пока не знаю. Посему прошу помощи уважаемой аудитории предоставить любую информацию по этому вопросу, заранее благодарен. Использовать Intel C compiler и написать все в интристиках задействующих SSE2(3).
--------------------
ну не художники мы...
|
|
|
|
|
Jan 25 2009, 09:44
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(petrov @ Jan 25 2009, 12:11)  Не получите на персоналке много, на FPGA десятки мегабод легко. Вообще непонятно как быть когда операционная система задумывается на неопределённое время? А зачем такое на персоналке если не секрет? На ПЛИС понятное дело что быстрее. Секрета никакого нет, просто стоимость разработки на базе ПЭВМ определяется в конечном счете по сути только стоимостью самого сервера, разработка на ПЛИС стоит гораздо дороже. Цитата(alex_os @ Jan 25 2009, 12:27)  Использовать Intel C compiler и написать все в интристиках задействующих SSE2(3). Именно его и использовал совместно с IPP производительность существенно повысилась Цитата(shf_05 @ Jan 25 2009, 12:25)  какая ОС, язык, компилятор? вспомните про ассемблер говорят еще на фортране быстро летает, может даже в матлабе будет быстрее- там оптимизированно много чего. есть еще один невероятный совет- pci плата с каким нибудь ДСП или той же ФПГА. ОС Win32, компилятор C от Intel совместно с Intel primitive performance. Поэтому использовать ассемблер нет смысла. Цитата(Pathfinder @ Jan 25 2009, 12:28)  Используйте SIMD инструкции, гораздо шустрее будет. Если задержка на обработку не важна, можно для этой цели современную видеокарту использовать. Прошу прощения не понял причем здесь видеокарта
|
|
|
|
|
Jan 25 2009, 09:47
|
Гуру
     
Группа: Свой
Сообщений: 2 220
Регистрация: 21-10-04
Из: Balakhna
Пользователь №: 937

|
Цитата(Serg76 @ Jan 25 2009, 12:34)  На ПЛИС понятное дело что быстрее. Секрета никакого нет, просто стоимость разработки на базе ПЭВМ определяется в конечном счете по сути только стоимостью самого сервера, разработка на ПЛИС стоит гораздо дороже. Так стоимость сервера очень высокая, плюс надо какую то плату чтоб сигнал оцифровывать, и при этом жалкий результат. Сейчас же есть FPGA относительно дешевые с большим количеством логических элементов, в простых корпусах, достаточно будет 4-х слойной платы, да и ничего сложного в разработке нету, больше времени разработка алгоритмов демодуляции занимает.
|
|
|
|
|
Jan 25 2009, 17:05
|

Местный
  
Группа: Свой
Сообщений: 275
Регистрация: 29-06-05
Пользователь №: 6 400

|
Цитата Прошу прощения не понял причем здесь видеокарта Современные видеокарты можно использовать для вычислений. Они уже поддерживают плавающую точку с двойной точностью, есть библиотеки, типа http://rapidmind.net/, которые позволяют более-менее прозрачно использовать их ресурсы. Однако, мне FPGA в данном случае тоже кажется более перспективным вариантом...
--------------------
|
|
|
|
|
Jan 25 2009, 17:30
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(Pathfinder @ Jan 25 2009, 20:05)  Современные видеокарты можно использовать для вычислений. Они уже поддерживают плавающую точку с двойной точностью, есть библиотеки, типа http://rapidmind.net/, которые позволяют более-менее прозрачно использовать их ресурсы. Однако, мне FPGA в данном случае тоже кажется более перспективным вариантом... Не знал об этом, интересное предложение, обязательно проанализирую, спасибо. Не дадите ссылочку где можно скачать библиотеки?
Сообщение отредактировал Serg76 - Jan 25 2009, 17:48
|
|
|
|
|
Jan 26 2009, 10:52
|

Местный
  
Группа: Свой
Сообщений: 275
Регистрация: 29-06-05
Пользователь №: 6 400

|
rapidmind, к сожалению, убрали из открытого доступа. Теперь вроде как регистрироваться нужно, чтобы скачать... Есть библиотеки на сайтах AMD ( Stream) и Nvidia ( Cuda), можно их использовать. AMD ещё собиралась свою ACML портировать под Stream.
--------------------
|
|
|
|
|
Jan 26 2009, 21:10
|
Профессионал
    
Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775

|
Цитата(Pathfinder @ Jan 26 2009, 13:52)  rapidmind, к сожалению, убрали из открытого доступа. Теперь вроде как регистрироваться нужно, чтобы скачать... Есть библиотеки на сайтах AMD ( Stream) и Nvidia ( Cuda), можно их использовать. AMD ещё собиралась свою ACML портировать под Stream. Спасибо за ссылки буду разбираться. Как по вашему что лучше IPP или CUDA при всех прочих равных условиях?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|