URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 82753
[ Назад ]

Исходное сообщение
"В Gstreamer добавлена возможность ускорения c задействование..."

Отправлено opennews , 02-Фев-12 21:12 
Для мультимедиа-фреймворка Gstreamer подготовлен (http://dummdida.blogspot.com/2012/02/gst-plugins-cl-opencl-p...) плагин gst-plugins-cl (https://gitorious.org/valastuff/gst-plugins-cl), позволяющий задействовать OpenCL для ускорения обработки видеопотоков за счет выноса выполнения некоторых вычислительных операций на плечи GPU. В частности, подобная акселерация может быть полезна для применения фильтров к видеопотоку, которые могут быть полностью реализованы на стороне GPU.


URL: http://www.phoronix.com/scan.php?page=news_item&px=MTA1MTk
Новость: https://www.opennet.ru/opennews/art.shtml?num=32973


Содержание

Сообщения в этом обсуждении
"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 02-Фев-12 21:12 
Лучше бы они его научили метаданные/теги из потокового вещания вылавливать.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 02-Фев-12 21:21 
Не знаю кому там лучше, но вычисления на GPU - это будущее. Глупо на него забивать.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено anonymous , 03-Фев-12 01:16 
Вообще то GPU не CPU, например они не могут вытеснять "задачи", проще говоря когда что-то будет задействовано на твоей единственной видеокарте, то ощутишь заметные тормоза интерфейса. Вплоть до полусекундных замираний курсора мыши. Можешь конечно прикупить еще одну дополнительную видеокарту специально для OpenCL, но не для всех это так просто.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Карбофос , 03-Фев-12 16:26 
http://www.3dnews.ru/news/622822

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 03-Фев-12 18:20 
> Вообще то GPU не CPU, например они не могут вытеснять "задачи",

Вообще-то GPU это такой очень специализированный вычислятор, способный воротить горы за короткое время. Иначе б оно не успевало обсчитывать картинку для 3D игр с внятным фпс-ом. То что эта силища наконец пущена и для более дельных применений - EPIC WIN! :)

> то ощутишь заметные тормоза интерфейса.

Только в случае если кернел займет gpu на значительное время.

> Вплоть до полусекундных замираний курсора мыши.

В клинических случаях - в принципе возможно, только вот если gstreamer рискнет это делать при просмотре видео - его засыпят багами. А в случае батч-обработки когда никто не смотрит на экран, факт что кино запроцессилось за 1 час вместо 20 может спокойно перевесить весь этот бухтеж.

Тем не менее, насколько я знаю, амд что-то такое говорило о преемптивности недавно.

> Можешь конечно прикупить еще одну дополнительную видеокарту специально для OpenCL,

Ты будешь ржать аки конь, но именно это я и сделал ;]


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Atterratio , 02-Фев-12 21:35 
Неужели, наконец то!

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 02-Фев-12 21:43 
А vdpau/vaapi ? Вроде грозились сделать. Вообще позор, да. На дворе 2012 год, а фактически дефолтный медиадвижок не умеет аппаратно декодировать видео.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 02-Фев-12 21:48 
> А vdpau/vaapi ?

OpenCL - это _произвольные_ вычисления а не какое-то там галимое акселерирование предопределенных производиотелем форматов потоков. Так можно какой-то полностью кастомный эффект допустим обсчитывать. Например видится возможность допустим сделать деблокинг не надрывая на это проц а сбагрив сие на GPU. С его кучами SIMD он с удовольствием раскрушит сие по чуть ли не полкадра за такт, в отличие от проца, которому сие слабо за отсутствием сотен или даже тысяч параллельных элементов, которые однако ж за 1 такт применяют операции к сразу чуть более чем дофига данных за раз параллельно ;)

> Вроде грозились сделать. Вообще позор, да. На дворе 2012 год, а фактически
> дефолтный медиадвижок не умеет аппаратно декодировать видео.

Плач по турбовинтовому самолету при конструировании суборбитального реактивного самолета выглядит довольно забавно, да :)


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 02-Фев-12 21:54 
> Плач по турбовинтовому самолету при конструировании суборбитального реактивного самолета выглядит довольно забавно, да :)

Суборбитальный реактивный самолет без шасси и иллюминаторов... Летает тоже, да.


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 02-Фев-12 22:17 
> Суборбитальный реактивный самолет без шасси и иллюминаторов... Летает тоже, да.

А турбовинтовой сколько ни твикай, на орбиту не взлетит :P


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 03-Фев-12 08:06 
> А турбовинтовой сколько ни твикай, на орбиту не взлетит :P

Но большинству не нужно на орбиту, а нужно из точки A в точку B и чтобы пешком выходить, а не с парашютом прыгать :-)


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 04-Фев-12 16:26 
> Но большинству не нужно на орбиту, а нужно из точки A в
> точку B и чтобы пешком выходить, а не с парашютом прыгать :-)

Насчет не нyжно - хм... вообще, я встречал очень мало людей которые отказались бы от безопасного суборбитального полета за разумные бабки, если что :). И за прыжки с парашютом многие готовы еще и доплачивать почему-то, что дает почву для существования соотв. клубов по интересам :)


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 02-Фев-12 23:15 
>OpenCL - это _произвольные_ вычисления а не какое-то там галимое акселерирование предопределенных производиотелем форматов потоков.

Оно наверное не просто так предопределенное - там наверняка все оптимизированно.
>Так можно какой-то полностью кастомный эффект допустим обсчитывать. Например видится возможность допустим сделать деблокинг не надрывая на это проц а сбагрив сие на GPU. С его кучами SIMD он с удовольствием раскрушит сие по чуть ли не полкадра за такт, в отличие от проца, которому сие слабо за отсутствием сотен или даже тысяч параллельных элементов, которые однако ж за 1 такт применяют операции к сразу чуть более чем дофига данных за раз параллельно ;)

В отличии от opencl, vdpau/vaapi это не только декодирование, но еще и вывод видео(причем с деблокингом, деинтерлейсингом и прочей постобработкой силами видеокарты). А значит придется два раза гнать видео, один раз для декодирования, второй раз для вывода.
Кроме того, у меня лично opencl/cuda приложения настолько грузят видео, что даже без композитного менеджера окон становится очень медленно. А тут еще надо вывести.
И нормальный енкодер в h264 на cuda/opencl пока не написали почему-то.
Ну и плюс ко всему, аппаратно декодировать могут не только видеокарты, есть еще всевозможные платы crystalhd броадкомовские, omx на армах...
>Плач по турбовинтовому самолету при конструировании суборбитального реактивного самолета выглядит довольно забавно, да :)

Только ЭТО прямо скажем так не суборбитальный реактивный самолёт, а прямо скажем велосипед.


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 03-Фев-12 20:30 
>>OpenCL - это _произвольные_ вычисления а не какое-то там галимое акселерирование
>>предопределенных производиотелем форматов потоков.
> Оно наверное не просто так предопределенное - там наверняка все оптимизированно.

А у автомата оплаты предельно оптимизированный юзеринтерфейс для одной конкретной операции. Зачем вообще нужны эти неудобные писюки и планшеты, да? :)

> В отличии от opencl, vdpau/vaapi это не только декодирование, но еще и
> вывод видео(причем с деблокингом, деинтерлейсингом и прочей постобработкой силами видеокарты).

Опять же - все в объеме заранее вшитом в неперепрограммируемый блок. Нафиг нужно. Не хотите продать компьютер и купить себе телефон-звонилку взамен? В нем зашито минимум функций, программы добавить нельзя, зато типа оптимально звонить, во. А то что с него на произвольный форум типа опеннета писать нельзя - так давайте лучше полечим что зато звонить удобно и проц там оптимальнее расходуется, да? :)

> А значит придется два раза гнать видео, один раз для декодирования,
> второй раз для вывода.

Да и фиг с ним, там DMA во все поля и pci-e, особенно 2.0, х16 - еще и не на такое хватит. Кроме того, если кто в танке, фильтры не обязаны быть именно _декодированием_. Это может быть и какой либо полностью кастомный эффект, например.

> Кроме того, у меня лично opencl/cuda приложения настолько грузят видео, что даже
> без композитного менеджера окон становится очень медленно. А тут еще надо вывести.

Капитан намекает что нагрузка зависит от opencl kernel-а и его свойств. Вон например в Коливасовском майнере вообще можно регулировать кушание ресурсов видеокарты - от пахания в совсем фоне до состояния когда все ресурсы - нам, а экран изредка обновляется. Ну и так далее. Думается что фильтры ориентированные на реалтайм воспроизведение будут вести себя культурно, иначе гстримеру багов навалят до упора. А не ориентированные на реалтайм - так там час процессинга вместо 20 часов - все перевесит. Кому надо часто и много - заведет себе рендер ферму в чулане :)

> И нормальный енкодер в h264 на cuda/opencl пока не написали почему-то.

Если честно, мне - насрать. Для себя я вообще планирую использовать для долговременного хранения VP8+Vorbis = WEBM, если что. Потому что зависеть от капризов погоды и что там через эн лет еще поменяет в условиях лицензирования MPEG LA мне жутко влом, а вот проиграть видео через 10 лет на недискриминационных условиях и без привязки к конкретной железке конкретного вендора мне бы хотелось, да. У гугла в отличие от некоторых - простая и честная лицензия, по ней дать задний ход проблематично, она проста для понимания и проверена годами.

> Ну и плюс ко всему, аппаратно декодировать могут не только видеокарты, есть
> еще всевозможные платы crystalhd броадкомовские, omx на армах...

Чип на то, чип на се, карта для того и сего. Вот opencl и внесет порядок в этот бардак наконец. Позволив акселерировать _произвольные_ тяжелые массовые операции на более-менее generic хардваре ориентированном на массовые параллельные операции. Вот этот твой crystalhd - он мне зашифрует чтонить blowfish'ем? А sha-512 посчитает? Нет? Замечательно, тогда идите в сад. На opencl можно написать и то и другое. И даже обсчитать кучу данных за раз параллельно во многих случаях. Ну вот а эти доперли кастомные фильтры делать. Логично: зачем и без того замучанный цпу дрюкать операциями с которыми видяхи справляются в десятки раз быстрее?

> Только ЭТО прямо скажем так не суборбитальный реактивный самолёт, а прямо скажем
> велосипед.

Это хороший и правильный велосипед позволяющий двигать туда куда мне надо, а не по вон тем двум с половиной маршрутов в направлении которых заранее проложены рельсы. Не вижу в этом ничего плохого.


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 02-Фев-12 23:19 
Ах да, плюс нужные кодеки придется переписывать на opencl, что нифига не быстро и не просто.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 03-Фев-12 20:32 
> Ах да, плюс нужные кодеки придется переписывать на opencl, что нифига не
> быстро и не просто.

Целиком - нахрен не надо. Самые тяжелые и ресурсожоркие куски, занимающие львиную долю времени CPU и параллелизуемые выпнуть в кернел, ну и хватит, имхо.


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено anonymous , 03-Фев-12 01:20 
Для OpenCL GPU нужна отдельная видеокарта, они не умеют так быстро пререключаться по задачам как CPU. Иначе GUI будет подтормаживать. Даже самое последнее поколение AMD 7xxx этим страдает и никаких намеков на изменение ситуации в будущем.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено anonimous , 03-Фев-12 02:04 
Практически все новые ноутбуки(за исключением бюджетных на интеловских карточках) поставляются с двумя видео картами - одна интел, с эффективным энергосбережением подходит для повседневной работы, а вторая nvidia или amd для игр. И переключение на более производительную видеокарту происходит автоматически при запуске ресурсоёмких до GPU программ.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено 1 , 03-Фев-12 04:39 
ну переключится бук на нвидию после запуска этого плагина, и начнет ею тормозить, в чем профит?

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено mma , 03-Фев-12 07:07 
Да бесполезно спорить. ну не понимают люди что ничего кроме матриц на GPU не посчитать, и то только целочисленных, с плавающей вопрос в точности. Ну может есть узкий круг задачь где GPU есть смысл задействовать, на на десктопе рядового пользователя или инженера их не будет с вероятностью 99%

А уж задействовать OpenCL как "фоновый ускоритель" это вообще глупость, видеокарта "считает" по принципу "получил-посчитал-показал(вернул) и пусть весь мир подождет"


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 03-Фев-12 20:37 
> по принципу "получил-посчитал-показал(вернул) и пусть весь мир подождет"

Отсюда вывод: фоновые вычисления должны быть кратковременными в пересчете на порцию данных. А у плеера они всяко должны уложиться в реалтайм. Если вы будете 5 секунд декодить даже 100500 кадров в параллель, то чего эти 5 секунд показывать юзеру, которого явно не пропрет заклинившая картнка?!


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 04-Фев-12 01:56 
Ерунду городите. Сжатие\декодинг видео, обраотка фото... - можно ускорить. Брутфорс опять же.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 04-Фев-12 16:32 
> Да бесполезно спорить. ну не понимают люди что ничего кроме матриц на
> GPU не посчитать,

Ага, то-то я полмиллиарда SHA1 в секунду могу скрушить на GPU, раз в 30 больше чем мой проц разопрется :)

> и то только целочисленных,

А вот фиг, крушить плавучку оптом видеокарты тоже умеют.

> с плавающей вопрос в точности.

Нужна двойная точность с большой скоростью? Вам на дорогие топовые GPU :P. Да, 10-баксовая затычка для слота урезана по всем параметрам.

> Ну может есть узкий круг задачь где GPU есть смысл задействовать,

Он узкий лишь потому что до недавних пор не было удобных стандартных механизмов. Как максимум народ изгалялся считая данные как графику, шейдерами, но это адов изврат и наконец то механизмы вычислений вывесили как нечто более удобоваримое и менее извращенское :)

> на на десктопе рядового пользователя или инженера их не будет с вероятностью 99%

3D играм это расскажете, ага. А то как раз одна из задач. Просто теперь эта механика стала видна не только для вычисления 3D сцен, только и всего :-)

> А уж задействовать OpenCL как "фоновый ускоритель" это вообще глупость, видеокарта "считает"
> по принципу "получил-посчитал-показал(вернул) и пусть весь мир подождет"

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


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено anonimous , 03-Фев-12 22:59 
Нет, это работает совсем не так. Механизм следующий: часть приложений могут использовать видео карту intel, а часть видеокарту nvidia/amd, таким образом, получается что рабочее окружение всё считает через intel, а игры считаются через nvidia/amd, но вывод на экран уже готовой картинки осуществляется всегда через видеокарту intel. Загруженность дискретной карты nvidia/amd никак не влияет на загруженность интегрированной видеокарты intel.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено anonimous , 03-Фев-12 23:03 
короче говоря работают две видеокарты одновременно но вывод на экран общий через интеловскую карту.

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 04-Фев-12 16:33 
> короче говоря работают две видеокарты одновременно но вывод на экран общий через
> интеловскую карту.

А это было бы вообще довольно умно, но пока это первые эксперименты с технологиями, оно еще не устаканилось, но вероятно к чему-то более-менее устоявшемуся и в примерно такоа виде и придет.


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 03-Фев-12 20:34 
> Для OpenCL GPU нужна отдельная видеокарта, они не умеют так быстро пререключаться
> по задачам как CPU.

Отсюда вывод: opencl кернель для фильтра ориентированного на реалтайм должен завершаться за короткое время. Это так внезапно! Но почему-то это характерно для вообще всех операций  в видеоплеере, не обязательно вгружаемых в видеокарту :))


"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 03-Фев-12 11:08 
http://gitorious.org/vaapi/gstreamer-vaapi
Это?

"В Gstreamer добавлена возможность ускорения c задействование..."
Отправлено Аноним , 05-Фев-12 14:27 
Не знаю как вообще, но у меня на нвидии оно не заработало.