Нетрадиционное использование видеокарты.

 
1 2 3

AlexL

новичок
Встретил информацию, о том, что видеокарту можно в принципе использовать для проведения инженерных и научных расчётов и при этом в принципе производительность процессора видеокарты может превзойти CPU до 10 и более раз.

Пробовал ли кто-нибудь использовать видеокарты таким нетрадиционным образом и на сколько указанное выше соответствует действительности?
 
+
-
edit
 

Wyvern-2

координатор
★★★★★
Знаю, что в станциях Ньюлет профессиональные видеопроцессоры используются Аутокадом в т.ч. для рассчетов (сил-нагрузок), а не только для обсчета 3D

А вообще то всё как всегда в руках программера ;)

Ник
Жизнь коротка, путь искусства долог, удобный случай мимолетен, опыт обманчив.... Ἱπποκράτης  

Murkt

Pythoneer

AlexL> Пробовал ли кто-нибудь использовать видеокарты таким нетрадиционным образом и на сколько указанное выше соответствует действительности?

До десяти раз... Зависит от видеокарты, типа вычислений и программиста. Можно выдавить гораздо больше, чем десять раз. Да, можно, достаточно несложно.
[team Їжачки - сумні падлюки]  
+
-
edit
 

Mishka

модератор
★★★
Смотря для каких расчётов. Эти процы весьма специализированы. Если специализация подошла, то хорошо. Если нет, то всё плохо.
 
EE Татарин #19.10.2007 22:40  @AlexL#19.10.2007 22:18
+
-
edit
 

Татарин

координатор
★★★★☆
AlexL> Встретил информацию, о том, что видеокарту можно в принципе использовать для проведения инженерных и научных расчётов и при этом в принципе производительность процессора видеокарты может превзойти CPU до 10 и более раз.
AlexL> Пробовал ли кто-нибудь использовать видеокарты таким нетрадиционным образом и на сколько указанное выше соответствует действительности?
Это должны быть весьма специфичные расчёты. Имеет смысл только при массивно-параллельных расчётах небольшой точности. Года три назад на форуме ixbt кто-то рассказывал о проекте, где так считалась газовая динамика, карта - как сопроцессор. Выигрыш был в несколько раз по сравнению с вычислениями только на CPU.
Там же было долгое обсуждение вопроса... пришли к мнению, что овчинка выделки не стОит: гораздо сложнее программирование и оптимизация и никакой переносимости, а выигрыш - не столь уж и велик... Тем паче, что по цене хорошей видеокарты можно поставить дополнительную пару процов. Обычный кластер получался выгоднее, тем более, что его апгрейдить куда легче.

Впрочем, может быть, сейчас всё переменилось...
...А неубитые медведи делили чьи-то шкуры с шумом. Боюсь, мы поздно осознали, к чему всё это приведёт.  

au

   
★★☆
У нвидии на сайте есть документы и прочее для этих дел. Словечко даже какое-то для этого выдумали.
 
UA Murkt #20.10.2007 21:54  @Татарин#19.10.2007 22:40
+
-
edit
 

Murkt

Pythoneer

Татарин> Там же было долгое обсуждение вопроса... пришли к мнению, что овчинка выделки не стОит: гораздо сложнее программирование и оптимизация и никакой переносимости, а выигрыш - не столь уж и велик... Тем паче, что по цене хорошей видеокарты можно поставить дополнительную пару процов. Обычный кластер получался выгоднее, тем более, что его апгрейдить куда легче.

Переносимость есть - OpenGL везде одинаков, а управляющее приложение без разницы на чём писать - C++, Python, Perl, Java.

Выигрыш уже огромен. По цене самой числодробильной видеокарточки не купишь один быстрый оптерон восьмой серии, а одна такая видеокарточка, похоже, считает быстрее, чем восемь таких оптеронов.

Татарин> Впрочем, может быть, сейчас всё переменилось...

Угу. Чем дальше, тем больше разрыв в вычислительной мощности, тем более программируемые видеопроцы, и тем более сложные расчёты на них можно выполнять.
[team Їжачки - сумні падлюки]  
RU Dem_anywhere #20.10.2007 22:28
+
-
edit
 

Dem_anywhere

аксакал
★☆
Разрыва большого нет, вопрос в том, на что эта мощь используется.
У х86 - в основном на оптимизацию исполнения. а вот если на неё плюнуть и запихнуть на чип пару сотен ядер уровня 386 (но на нынешнюю скорость) - ещё неизвестно кто лучше окажется...
 

Mishka

модератор
★★★
Murkt> Переносимость есть - OpenGL везде одинаков, а управляющее приложение без разницы на чём писать - C++, Python, Perl, Java.

Я не то, чтобы знаток, но можешь продемонстрировать умножение матриц С(m,k)=A(m,n)*B(n,k)?

Murkt> Выигрыш уже огромен. По цене самой числодробильной видеокарточки не купишь один быстрый оптерон восьмой серии, а одна такая видеокарточка, похоже, считает быстрее, чем восемь таких оптеронов.

Вот напишешь для умножения матриц, можно написать для всяких MMX или SSE(1,2,3).

Murkt> Угу. Чем дальше, тем больше разрыв в вычислительной мощности, тем более программируемые видеопроцы, и тем более сложные расчёты на них можно выполнять.

Это, мягко говоря, очень спорное утверждение.
 
RU Cormorant #21.10.2007 03:47
+
-
edit
 
+
-
edit
 

Mishka

модератор
★★★
Я пока не вижу ничего сколько-нибудь общего. Да, очень специфические считалки. Как Татарин и я сказали — на очень специальных задачах будет очень быстро. На других — не очень.
 

Murkt

Pythoneer

Murkt>> Переносимость есть - OpenGL везде одинаков, а управляющее приложение без разницы на чём писать - C++, Python, Perl, Java.
Mishka> Я не то, чтобы знаток, но можешь продемонстрировать умножение матриц С(m,k)=A(m,n)*B(n,k)?

А при чём здесь переносимость? Насколько я понимаю термин "переносимость" - это значит что программу писали на Linux под Radeon, а запустить можно на Windows и GeForce.

Murkt>> Выигрыш уже огромен. По цене самой числодробильной видеокарточки не купишь один быстрый оптерон восьмой серии, а одна такая видеокарточка, похоже, считает быстрее, чем восемь таких оптеронов.
Mishka> Вот напишешь для умножения матриц, можно написать для всяких MMX или SSE(1,2,3).

Я в первую голову написал, что возможность использовать видеокарту для расчётов сильно зависит от типа вычислений. Только это почему-то никто не прочёл.

Murkt>> Угу. Чем дальше, тем больше разрыв в вычислительной мощности, тем более программируемые видеопроцы, и тем более сложные расчёты на них можно выполнять.
Mishka> Это, мягко говоря, очень спорное утверждение.

Почему? За то время, пока процессор обзавёлся четырьмя ядрами вместо двух, а каждое ядро ускорилось пусть в полтора раза (2 * 1.5 = 3), у видеокарточек количество шейдерных процессоров выросло с 16-и (вроде столко было), до 128-и, а частота с где-то 600 МГц до 1.2 ГГц (GeForce 8800 GTX). Прирост - шестнадцать против трёх. А насчёт более сложных расчётов - кто-то вообще будет спорить о том, что на четвёртых шейдерах можно сделать гораздо более сложные вещи, чем на вторых? У которых не было динамического ветвления, например, и была очень ограничена длина шейдера (255 инструкций, вроде бы).
[team Їжачки - сумні падлюки]  
RU Владимир Малюх #21.10.2007 13:07  @Wyvern-2#19.10.2007 22:28
+
-
edit
 
Wyvern-2> Знаю, что в станциях Ньюлет профессиональные видеопроцессоры используются Аутокадом в т.ч. для рассчетов (сил-нагрузок), а не только для обсчета 3D

Ник, извини конечно - но нифига ты в этом впросе не знаешь :) AutoCAD вообще не содержит никакой функциональности по инженерным расчетам, в том числе и "сил-нагрузок", потому и пользоваться для этого ничем не может...
Maschinen muessen "idiotensicher" werden  
RU Владимир Малюх #21.10.2007 13:13
+
-
edit
 
Вы ребята не путайте т.н. "расчет физики" для игрушк и обычные инженерные расчты. Я с большим любопытсвоам послушаю о реально работающих системах расчeта например "сил-нагрузок-напряжний" МКЭ с использованием видеокарточек :)
Maschinen muessen "idiotensicher" werden  
MD Wyvern-2 #21.10.2007 14:04  @Владимир Малюх#21.10.2007 13:07
+
-
edit
 

Wyvern-2

координатор
★★★★★
Wyvern-2>> Знаю, что в станциях Ньюлет профессиональные видеопроцессоры используются Аутокадом в т.ч. для рассчетов (сил-нагрузок), а не только для обсчета 3D
В.М.> Ник, извини конечно - но нифига ты в этом впросе не знаешь :) AutoCAD вообще не содержит никакой функциональности по инженерным расчетам, в том числе и "сил-нагрузок", потому и пользоваться для этого ничем не может...

100% :lol: Вообщем либо какая то программа сильно похожая интефейсом на АутоКАД либо программа "понимающая" файлы АутоКАДа :F

Ник
Жизнь коротка, путь искусства долог, удобный случай мимолетен, опыт обманчив.... Ἱπποκράτης  
RU Владимир Малюх #21.10.2007 14:15
+
-
edit
 
Хы, CAD/CAM/CAE-система "не понимающая" файлов AuoCAD нынче лишена всякого будущего :F
Maschinen muessen "idiotensicher" werden  
UA Murkt #21.10.2007 14:43  @Владимир Малюх#21.10.2007 13:13
+
-
edit
 

Murkt

Pythoneer

В.М.> Вы ребята не путайте т.н. "расчет физики" для игрушк и обычные инженерные расчты. Я с большим любопытсвоам послушаю о реально работающих системах расчeта

Какой-то проект из области распределённых вычислений несколько месяцев назад научился использовать видеокарточку. Подойдёт в качестве обычных инженерных расчётов? Там что-то насчёт химии. Как он называется - не помню, но если возникнут сомнения, ссылку найду.
[team Їжачки - сумні падлюки]  

AlexL

новичок
Кое-что нашёл. Пакет CUDA от NVIDIA.
Что интересно, там во введении обещают производительность до 330 Гфлор для последних моделей видеокарт(GeForce 8800 GTX).
P.S. Меня этот вопрос интересует применительно к задачам квантовой молекулярной динамики(по типу WPMD Цвитнагеля, но с более сложным описанием состояния частицы). И они, кажется, для такого типа вычислений подходят очень неплохо. Т.е. позволяют осуществлять глубокое распараллеливание процесса вычислений и кроме того требуют большого количества матричных операций(умножение матриц, преобразование таблиц матричных элементов(типа преобразования при повороте системы координат) и т.д.)
 
Это сообщение редактировалось 21.10.2007 в 15:23

Murkt

Pythoneer

AlexL> Меня этот вопрос интересует применительно к задачам квантовой молекулярной динамики(по типу WPMD Цвитнагеля, но с более сложным описанием состояния частицы). И они, кажется, для такого типа вычислений подходят очень неплохо.

Поройся здесь http://www.gpgpu.org/, может найдёшь ещё что-нибудь полезное.
[team Їжачки - сумні падлюки]  
RU Владимир Малюх #21.10.2007 15:27  @Murkt#21.10.2007 14:43
+
-
edit
 
В.М.>> Вы ребята не путайте т.н. "расчет физики" для игрушк и обычные инженерные расчты. Я с большим любопытсвоам послушаю о реально работающих системах расчeта
Murkt> Какой-то проект из области распределённых вычислений несколько месяцев назад научился использовать видеокарточку. Подойдёт в качестве обычных инженерных расчётов?

Неа... см. то, что я выделил. Имеется ввиду промышленный софт.


Поймите - "какой-то проект" это одно а реальное применение - это другое. Любой поставщик САЕ, который сможет использовать такую технологию - раззвонит тут же об этом на весь мир. Но этого не наблюдается...
Maschinen muessen "idiotensicher" werden  
UA Murkt #21.10.2007 15:51  @Владимир Малюх#21.10.2007 15:27
+
-
edit
 

Murkt

Pythoneer

В.М.>>> Вы ребята не путайте т.н. "расчет физики" для игрушк и обычные инженерные расчты. Я с большим любопытсвоам послушаю о реально работающих системах расчeта
Murkt>> Какой-то проект из области распределённых вычислений несколько месяцев назад научился использовать видеокарточку. Подойдёт в качестве обычных инженерных расчётов?
В.М.> Неа... см. то, что я выделил. Имеется ввиду промышленный софт.
В.М.> Поймите - "какой-то проект" это одно а реальное применение - это другое.

Если я написал "какой-то проект", это не значит что это наколенная поделка Васи Пупкина. Поискал в инете - я говорил про Folding@home.

Foldinghome is one of the largest distributed computing projects. The goal of the project is "to understand protein folding, misfolding, and related diseases."
 

As of October 2, 2006, the Foldinghome GPU client has been released into the public as a beta test. After 9 days of processing from the Beta client the Foldinghome project had received 31 teraFLOPS of computational performance from just 450 X1900 GPUs, averaging at over 70x the performance of current CPU submissions.
 

Это не реальное применение?

В.М.> Любой поставщик САЕ, который сможет использовать такую технологию - раззвонит тут же об этом на весь мир. Но этого не наблюдается...

Я ничего не могу сказать про эту область, не интересовался.
[team Їжачки - сумні падлюки]  
RU Владимир Малюх #21.10.2007 15:57
+
-
edit
 
Как я и предполагал - именно НИР, исслдовательский проект. Вполне успешный, но - не промышленный. Даже реальную производительность посчитать не удастся, только степень популярности...
Maschinen muessen "idiotensicher" werden  
UA Murkt #21.10.2007 16:07  @Владимир Малюх#21.10.2007 15:57
+
-
edit
 

Murkt

Pythoneer

В.М.> Как я и предполагал - именно НИР, исслдовательский проект. Вполне успешный, но - не промышленный. Даже реальную производительность посчитать не удастся, только степень популярности...

Можно посчитать. Можно усреднённую - количество обычных процессоров и их суммарный результат, количество графических и их суммарный результат. Поделить одно на другое. Можно оставить на сутки считать проц, посмотреть статистику, потом на сутки оставить видео и посмотреть статистику. Перед выпуском обещали преимущество до сорока раз, это было больше года назад (в июне-июле 2006).

А насчёт того что иссоледовательский проект... Так они всегда впереди промышленных решений.
[team Їжачки - сумні падлюки]  
RU Владимир Малюх #21.10.2007 16:15
+
-
edit
 
Количество использовавшихся процессоров - не более того. Про точность вычислений - как-то туманно опять же..

А насчет НИР - увы, но в части вычислений пока именно промышленность (САЕ-промышленность имется ввиду) в эти самые НИР больше вкладывает и, потому, все спецы именно там...
Maschinen muessen "idiotensicher" werden  

AlexL

новичок
James:
Имеет смысл только при массивно-параллельных расчётах небольшой точности.
 


А что имеется ввиду под небольшой точностью?
 
1 2 3

в начало страницы | новое
 
Поиск
Настройки
Твиттер сайта
Статистика
Рейтинг@Mail.ru