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

 
 
> видеокарта, без CUDA
sifadin
сообщение Jun 18 2014, 11:52
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 443
Регистрация: 11-02-09
Пользователь №: 44 698



Здравствуйте!
Если я куплю мощную видеокарту чтобы посчитать что-то там
Нужно ли в MATLAB вносить какие-то настройки, чтобы он использовал ее для вычислений
Или он автоматически ее обнаружит

Есть ли способ (dll напр) писать программы в Visual Studio задействуя видеокарту для вычислений

или нужен CUDA?
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 14)
RVlad
сообщение Jun 18 2014, 12:12
Сообщение #2


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

Группа: Свой
Сообщений: 135
Регистрация: 15-03-05
Пользователь №: 3 378



Цитата(sifadin @ Jun 18 2014, 15:52) *
Здравствуйте!
Если я куплю мощную видеокарту чтобы посчитать что-то там
Нужно ли в MATLAB вносить какие-то настройки, чтобы он использовал ее для вычислений
Или он автоматически ее обнаружит

Есть ли способ (dll напр) писать программы в Visual Studio задействуя видеокарту для вычислений

или нужен CUDA?

Если коротко -
1.Видеокарта рисует, считает GPU.
2.Если видеокарта содержит GPU - то можно программировать вычисления с GPU
3. Nvidia GPU поддерживает Cuda (a) и OpenCL (в) программирование.
4.AMD(ATI) GPU поддерживает OpenCL программирование.
5.Matlab имеет в своем составе функции , которые пользуются CUDA.
6. Можно использовать и Cuda и OpenCL для написания своих модулей в Matlab
7. Выбираете Cuda(проприетарный стандарт) или OpenCL(отраслевой стандарт) и изучаете документацию
по программированию и отладке.
8. Получаете результат.
Удачи.
Go to the top of the page
 
+Quote Post
Hale
сообщение Jun 18 2014, 22:55
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 735
Регистрация: 11-10-11
Пользователь №: 67 667



CUDA - это вычислительный API. если его нет, то ты об стенку разобьешься на ней что-то считать.

Лучшее что получится - быстрая свертка и простые операции с матрицами через Open-GL и Шейдеры. Но тут люди сталкиваются с низкой точностью и непредсказуемым "срезанием углов", которое годится для визуальной графики, но не годится для преобразований радарного видения, например.

На этом написаны раритетные видеофильтры и сигнальники для гео-радаров.

Сообщение отредактировал Hale - Jun 18 2014, 23:00
Go to the top of the page
 
+Quote Post
Hale
сообщение Jun 19 2014, 04:53
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 735
Регистрация: 11-10-11
Пользователь №: 67 667



"5.Matlab имеет в своем составе функции , которые пользуются CUDA."
знакомый году в 2011 рассказывал, что несмотря на казалось бы аппаратное ускоерние, матлаб так коряво сделан, что через КУДА все равно считает чуть ли не медленнее чем через ЦПУ. Ну и плюс ограничения на объем данных. Что-то он там со статистическим моделированием и нейронными сетями мутил... это атк, чтобы судить о применимости. Может для машинного видео и побыстрее будет, не знаю.
Go to the top of the page
 
+Quote Post
Xenia
сообщение Jun 19 2014, 05:11
Сообщение #5


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Скажите, а эти видеокарты (которые Cuda и/или OpenCL поддерживают) умеют ли считать в double (64 бит) или только во float (32 бита)?
Спрашиваю потому, что вроде бы double-точность видеокартам не нужна (избыточна для графических задач), а для матричной алгебры крайне желательна.
Go to the top of the page
 
+Quote Post
sifadin
сообщение Jun 19 2014, 08:08
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 443
Регистрация: 11-02-09
Пользователь №: 44 698



Я должен обработать звук. 10часовая запись. Таких записей немало MATLAB тормозить будет очень долго - тоже часы

Комп офисный

Вот если бы видеокарта могла ускорить....

но КУДА сложен, может есть что-то более высокоуровневое?

Либо может есть какой-то суперкомпьютерный хостинг в инете и для него проще запрограммировать?
Подскажите возможен ли такой путь, насколько это дорого?
Go to the top of the page
 
+Quote Post
thermit
сообщение Jun 19 2014, 08:52
Сообщение #7


Знающий
****

Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730



Цитата
Hale:
"5.Matlab имеет в своем составе функции , которые пользуются CUDA."
знакомый году в 2011 рассказывал, что несмотря на казалось бы аппаратное ускоерние, матлаб так коряво сделан, что через КУДА все равно считает чуть ли не медленнее чем через ЦПУ. Ну и плюс ограничения на объем данных. Что-то он там со статистическим моделированием и нейронными сетями мутил... это атк, чтобы судить о применимости. Может для машинного видео и побыстрее будет, не знаю.


на той же нвидии есть (по крайней мере был) матлаб тулбокс использующий куду. Вычисления все во float, но ускорение радикальное.


Цитата
Xenia:
Скажите, а эти видиокарты (которые Cuda и/или OpenCL поддерживают) умеют ли считать в double (64 бит) или только во float (32 бита)?
Спрашиваю потому, что вроде бы double-точность видеокартам не нужна (избыточна для графических задач), а для матричной алгебры крайне желательна.


Начиная с какой-то версии спецификации cuda есть поддержка double.

Цитата
sifadin:
но КУДА сложен


Если линейная (без ветвлений) однотипная обработка - видеокарта с кудой очень даже гут. Главное взять карту с широкой шиной (384/448/512). Программирование примитивное.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Jun 19 2014, 09:30
Сообщение #8


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(sifadin @ Jun 18 2014, 14:52) *
Здравствуйте!
Если я куплю мощную видеокарту чтобы посчитать что-то там
Нужно ли в MATLAB вносить какие-то настройки, чтобы он использовал ее для вычислений
Или он автоматически ее обнаружит

Есть ли способ (dll напр) писать программы в Visual Studio задействуя видеокарту для вычислений

или нужен CUDA?

Может пока еще не успели купить карточку, попробуете повысить производительность за счет мощностей ЦП? У Intel есть пакет Parallel Studio с набором примитивов IPP для ускорения вычислений, при правильном программировании дает неплохой прирост производительности + может интегрироваться в Visual Studio.
Go to the top of the page
 
+Quote Post
RVlad
сообщение Jun 19 2014, 15:54
Сообщение #9


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

Группа: Свой
Сообщений: 135
Регистрация: 15-03-05
Пользователь №: 3 378



Цитата(Xenia @ Jun 19 2014, 09:11) *
Скажите, а эти видеокарты (которые Cuda и/или OpenCL поддерживают) умеют ли считать в double (64 бит) или только во float (32 бита)?
Спрашиваю потому, что вроде бы double-точность видеокартам не нужна (избыточна для графических задач), а для матричной алгебры крайне желательна.

Да имеют. И Cuda и OpenCL. Точнее говоря , в опциях OpenCL для карточки указывается набор того, что подддерживается.. собственно и поддержка double тоже. Однако в большинстве карт производительность по double существенно ниже , чем производительность по float. Собственно есть известная библиотека матричной арифметики BLAS 3, под(на основе ) OpenCL от AMD. Так вот она работает с функциями и single float и double float. Оччень прилично работает..
Go to the top of the page
 
+Quote Post
sifadin
сообщение Jun 21 2014, 18:00
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 443
Регистрация: 11-02-09
Пользователь №: 44 698



Цитата(Serg76 @ Jun 19 2014, 12:30) *
Может пока еще не успели купить карточку, попробуете повысить производительность за счет мощностей ЦП? У Intel есть пакет Parallel Studio с набором примитивов IPP для ускорения вычислений, при правильном программировании дает неплохой прирост производительности + может интегрироваться в Visual Studio.

Его можно как-то запихнуть в MATLAB, чтобы он его использовал в вычислениях?





Go to the top of the page
 
+Quote Post
thermit
сообщение Jun 21 2014, 18:59
Сообщение #11


Знающий
****

Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730



Цитата
sifadin:
Его можно как-то запихнуть в MATLAB, чтобы он его использовал в вычислениях?


В матлаб можно запихнуть все. Если использовать mex.
Go to the top of the page
 
+Quote Post
Serg76
сообщение Jun 22 2014, 06:58
Сообщение #12


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Разрабатываете dll с помощью Intel-их средств и подключаете ее затем через mex-функцию к матлабу, как советовал thermit, но я лично не пробовал, а с Parallel Studio работал, очень неплохие результаты скажу я вам получаются
Go to the top of the page
 
+Quote Post
Hale
сообщение Jun 22 2014, 16:10
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 735
Регистрация: 11-10-11
Пользователь №: 67 667



Вычисления все во float, но ускорение радикальное.
Конкретнее. В чем? Перемножить матрицу на константу?
Как я сказал, на тот момент большие научные задачи видеокарта через матлаб ускорить не могла. Простые числожробилки, я почти уверен что ускорит, как ускоряли и через OpenGL, что мне кажется более универсалным решением. Если серьезно, для ЭМ симуляций коммерческие продукты используют ГПУ только в ФДТД, быстрый, но не лучший метод. А вот на векторные операции новых i7 с радостью перешла практически вся индустрия... может C++ и i7 c AVX будет не сложнее, но универсальнее CUDA, как думаете?
Go to the top of the page
 
+Quote Post
thermit
сообщение Jun 22 2014, 18:27
Сообщение #14


Знающий
****

Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730



Цитата(Hale @ Jun 22 2014, 20:10) *
Как я сказал, на тот момент большие научные задачи видеокарта через матлаб ускорить не могла.


Видеокарта ускоряет вычисления. А распараллелить задачу это уже к программеру. Т е программер не смог...
Ну и есть класс задач которые принципиально не параллелятся...

Сообщение отредактировал thermit - Jun 22 2014, 18:40
Go to the top of the page
 
+Quote Post
Serg76
сообщение Jun 22 2014, 19:58
Сообщение #15


Профессионал
*****

Группа: Участник
Сообщений: 1 050
Регистрация: 4-04-07
Пользователь №: 26 775



Цитата(Hale @ Jun 22 2014, 19:10) *
А вот на векторные операции новых i7 с радостью перешла практически вся индустрия... может C++ и i7 c AVX будет не сложнее, но универсальнее CUDA, как думаете?

Очень удачный процессор, особенно, при векторных операциях с плавающей точкой, широкий набор функций IPP как раз и предоставляет такую возможность + если задача параллелится, да все это в умелых руках, то будет счастье.
Go to the top of the page
 
+Quote Post

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

 


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


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