Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Робя, а кто- нибудь уже работал с Parallel STL? / 13 сообщений из 13, страница 1 из 1
06.04.2018, 16:01
    #39626895
AlekseySQL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
Есть многообещающая статья, из которой как я понял алгоритмы STL теперь будут иметь несколько реализаций в том числе параллельную, векторную и векторно+параллельную: https://habrahabr.ru/company/intel/blog/346822/

Реализовано пока у Intel и MSVC: https://software.intel.com/en-us/get-started-with-pstl

Кто- то уже потыкал палочкой? :)
...
Рейтинг: 0 / 0
06.04.2018, 17:02
    #39626930
AlekseySQL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
Оказывается и в gcc уже есть параллельные алгоритмы:
YouTube Video
...
Рейтинг: 0 / 0
06.04.2018, 18:14
    #39626962
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
Я не работал.

Но обычно это плохая идея, распараллеливать отдельные операции.
Лучше параллелить вообще задачу.
Например, чтобы построить дом, надо вырыть котлован. Контлован -- это одна большая яма.
Её рыть одним эксковатором долго.
А мы будем рыть 10Х10 ям рядом друг с другом, задействовав 100 экскаваторов, и потом их соединим.

(правда, аналогия получилась плохая, нужно ещё рядом 100 домов построить и затем соединить).
...
Рейтинг: 0 / 0
06.04.2018, 19:46
    #39627008
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
Что за идиотская мода делать видео? Посмотрел три минуты, задолбался, а там еще час. Я за десять минут прочитаю все что он наговорил за час, за что у меня хотят отобрать 50 минут жизни? Извините за оффтоп, накипело.

По существу мне непонятно одно: откуда эти библиотеки берут потоки? Распараллелить сортировку можно, но затраты на создание потоков сожрут всю экономию, т.е. должен быть какой-то заранее заготовленный пул потоков, но где он?

В остальном согласен с MasterZiv`ом: за тебя нормально никто не распараллелит, т.к. если библиотека будет параллелить относительно небольшие операции типа сортировки, то выигрыш будет незначительным.
...
Рейтинг: 0 / 0
06.04.2018, 19:58
    #39627012
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
AlekseySQLSTL теперь будут иметь несколько реализаций в том числе параллельную, векторную и векторно+параллельную
Бред! Не надо мешать теплое и мягкое в одну кучу.

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

Параллельно - это возможность вести одновременно несколько расчетов, независимых друг от друга. И без разницы какие они, векторные или не очень, или совсем не векторные.
...
Рейтинг: 0 / 0
06.04.2018, 19:59
    #39627013
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
Dima Tкогда за один так выполняется
... за один такт процессор выполняет ...
...
Рейтинг: 0 / 0
06.04.2018, 20:20
    #39627017
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
У распараллеливания есть другая проблема: синхронизация доступа к общеиспользуемым данным. Любой потокобезопасный алгоритм в разы тормознее его однопоточного аналога.
Но есть решение: Модель акторов .
Тут очень длинный топик на эту тему. Лично меня этот топик зацепил и вдохновил на написание собственного фрэймворка для распараллеливания. Не совсем, но почти Модель акторов. Скорость последнего варианта 50 млн. попугаев (сообщений) в секунду.

Вкратце суть в том что фрэймворк обеспечивает однопоточную работу каждого актора, т.е. в коде актора не надо заморачиваться на синхронизацию. Минус - надо думать акторами.
...
Рейтинг: 0 / 0
06.04.2018, 20:39
    #39627027
AlekseySQL
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
Dima TAlekseySQLSTL теперь будут иметь несколько реализаций в том числе параллельную, векторную и векторно+параллельную
Бред! Не надо мешать теплое и мягкое в одну кучу.

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

Параллельно - это возможность вести одновременно несколько расчетов, независимых друг от друга. И без разницы какие они, векторные или не очень, или совсем не векторные.

Есть общая рекомендация внешний цикл параллелить, а внутренний векторизовать. Именно по этому принципу работают вектороно- параллельные алгоритмы.

Векторные операции позволяют выполнить одну операцию над целым набором данных. Подходят практически для всего (хоть поиска символа строке). Часто используются в обработке фото, потому что там заранее известное количество точек (размер кадра) + их большое количество (что понижает накладные расходы).

p.s. Товарищ в видео про параллельные алгоритмы в gcc рассказывал примерно три минуты.
...
Рейтинг: 0 / 0
06.04.2018, 20:56
    #39627032
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
AlekseySQLВекторные операции позволяют выполнить одну операцию над целым набором данных. Подходят практически для всего (хоть поиска символа строке). Часто используются в обработке фото, потому что там заранее известное количество точек (размер кадра) + их большое количество (что понижает накладные расходы).
С точки зрения распараллеливания - это однопоточная операция. Т.е. к распараллеливанию отношения не имеет, я об этом.
...
Рейтинг: 0 / 0
07.04.2018, 08:22
    #39627090
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
[quot Dima T]Что за идиотская мода делать видео? Посмотрел три минуты, задолбался, а там еще час.

чего ты хочешь от века интернета и поколения Телепузиков?
...
Рейтинг: 0 / 0
07.04.2018, 08:25
    #39627091
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
Ну похоже мы спорим ни о чем...
У него там видимо действительно большие данные и параллельная операция.
...
Рейтинг: 0 / 0
07.04.2018, 20:36
    #39627188
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
MasterZivНу похоже мы спорим ни о чем...
У него там видимо действительно большие данные и параллельная операция.
Мы не спорим, но он похоже не там ищет. Нет решений для уникальных случаев, есть решения для небольшого ускорения ширпотреба.
...
Рейтинг: 0 / 0
11.04.2018, 21:19
    #39628725
mayton
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Робя, а кто- нибудь уже работал с Parallel STL?
Dima TЧто за идиотская мода делать видео? Посмотрел три минуты, задолбался, а там еще час. Я за десять минут прочитаю все что он наговорил за час, за что у меня хотят отобрать 50 минут жизни? Извините за оффтоп, накипело.

По существу мне непонятно одно: откуда эти библиотеки берут потоки? Распараллелить сортировку можно, но затраты на создание потоков сожрут всю экономию, т.е. должен быть какой-то заранее заготовленный пул потоков, но где он?

В остальном согласен с MasterZiv`ом: за тебя нормально никто не распараллелит, т.к. если библиотека будет параллелить относительно небольшие операции типа сортировки, то выигрыш будет незначительным.
Я не смотрел видео. Почитал Хабр только. Если убрать векторизацию - то идея боян.
И почти все библиотеки для обработки BigData уже содержат коробочные способы
распараллеливания.

Кстати можно попробовать Parallel STL применить для нашего CardRaytracer.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Робя, а кто- нибудь уже работал с Parallel STL? / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]