Модераторы: bsa

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Учебник по параллельному программированию и OpenMP, Для Visual C++ 
:(
    Опции темы
Rasool
Дата 7.7.2011, 17:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Сейчас озаботился написанием программы распараллеливания кое-каких алгоритмов (нужно для диссера) для настольных многоядерных компьютеров.
Ищу хороший учебник по С++ с описанием OpenMP для Visual C++, желательно с описанием техники параллельного программирования, на русском языке.
Есть опыт программирования под Borland C++ 3.1. У меня есть следующие книги:
 Г.Эндрюс. Основы многопоточного, параллельного и распределенного программирования. 2003.
 А.Хортон, Visual C++ 2005. Базовый курс. 2007.
 Шилдт Г. Искусство программирования на C++. 2005.
 Брюс Эккель, Чак Эллисон - Философия C++. Практическое программирование. 2005.
Что порекомендуете еще из нового?

PM MAIL   Вверх
bsa
Дата 7.7.2011, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Rasool, зайди в ответы на часто задаваемые вопросы (закреплена), там есть раздел про литературу (с чего начать). Думаю, для начала нужно изучить С++, а уж затем браться за оптимизацию через OpenMP. Borland C++ 3.1 от современного С++ отличается также, как жигуль от танка.
PM   Вверх
Rasool
Дата 8.7.2011, 14:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Спасибо, книги почитаю, но они - по общему языку C++.
В дальнейшем мне нужно будет изучить связку Visual C++ и OpenMP. Для изучения Visual C++ есть книга Айвора Хортона Visual C++ 2005. Базовый курс, а вот использование Visual C++ в параллельном программировании - где можно почитать? У меня сейчас на компьютере стоит Visual C++ 2008 Express Edition.

Это сообщение отредактировал(а) Rasool - 8.7.2011, 14:36
PM MAIL   Вверх
bsa
Дата 8.7.2011, 16:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Rasool, вообще-то, С++ от Microsoft не сильно хуже стандартного. Если тебя интересуют кнопочки и рюшечки, то это в любом случае к С++ отношения не имеет.
Подозреваю, что связка Visual C++ + OpenMP не сильно отличается от других xxx C++ + OpenMP.
http://www.microsoft.com/Rus/Msdn/Magazine.../10/OpenMP.mspx
PM   Вверх
Rasool
Дата 8.7.2011, 17:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Цитата(bsa @ 8.7.2011,  16:33)
http://www.microsoft.com/Rus/Msdn/Magazine.../10/OpenMP.mspx

О, спасибо большое!
PM MAIL   Вверх
Rasool
Дата 8.7.2011, 18:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



На сайте http://openmp.org/wp/openmp-compilers/ сказано, что OpenMP включено только для Standard, Professional и Team System Editions. Значит, придется покупать. 
На сайте allsoft.ru нашел версию Visual Studio 2008 Standard за 4802,11 руб. Насколько я понял, туда входит OpenMP? И нет ли подешевле вариантов с OpenMP?
PM MAIL   Вверх
boostcoder
Дата 8.7.2011, 18:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 20
Всего: 110



Цитата(Rasool @  8.7.2011,  18:03 Найти цитируемый пост)
И нет ли подешевле вариантов с OpenMP? 

вот бесплатный компилятор с поддержкой OpenMP: i686-pc-mingw32-bin-4.7.0-snapshop-20110617
PM WWW   Вверх
Rasool
Дата 9.7.2011, 12:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Цитата(boostcoder @ 8.7.2011,  18:06)
вот бесплатный компилятор с поддержкой OpenMP: i686-pc-mingw32-bin-4.7.0-snapshop-20110617

Спасибо. А среда разработки для него - Eclipse? (Нашел ссылку: Бесплатная среда разработки под Win32 = MinGW + MSYS + Eclipse + FLTK)

Это сообщение отредактировал(а) Rasool - 9.7.2011, 12:03
PM MAIL   Вверх
boostcoder
Дата 9.7.2011, 12:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 20
Всего: 110



Цитата(Rasool @  9.7.2011,  12:01 Найти цитируемый пост)
А среда разработки для него - Eclipse?

Code::Blocks
Eclipse
QtCreator
SlickEdit

это те что я когда-либо использовал совместно с MinGW. а вообще их огромное множество.

Это сообщение отредактировал(а) boostcoder - 9.7.2011, 12:04
PM WWW   Вверх
Rasool
Дата 9.7.2011, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Цитата(boostcoder @ 9.7.2011,  12:02)
Code::Blocks
Eclipse
QtCreator
SlickEdit

это те что я когда-либо использовал совместно с MinGW. а вообще их огромное множество.

А NetBeans для него подходит?
PM MAIL   Вверх
bsa
Дата 10.7.2011, 17:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(Rasool @  9.7.2011,  19:04 Найти цитируемый пост)
А NetBeans для него подходит? 

подходит. Но секса у тебя с настройкой будет очень много.
Рекомендую просто скачать Qt SDK и не заморачиваться (там все необходимое в комплекте, только в инсталляторе надо отключить все, кроме mingw).

Это сообщение отредактировал(а) bsa - 11.7.2011, 16:12
PM   Вверх
Rasool
Дата 11.7.2011, 15:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Спасибо, посмотрим.
PM MAIL   Вверх
ValeryLaptev
Дата 12.7.2011, 07:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Препод



Профиль
Группа: Участник
Сообщений: 41
Регистрация: 19.8.2010
Где: Астрахань

Репутация: 1
Всего: 1



Цитата(Rasool @ 7.7.2011,  17:22)
Сейчас озаботился написанием программы распараллеливания кое-каких алгоритмов (нужно для диссера) для настольных многоядерных компьютеров.
Ищу хороший учебник по С++ с описанием OpenMP для Visual C++, желательно с описанием техники параллельного программирования, на русском языке.
Есть опыт программирования под Borland C++ 3.1. У меня есть следующие книги:
 Г.Эндрюс. Основы многопоточного, параллельного и распределенного программирования. 2003.
 А.Хортон, Visual C++ 2005. Базовый курс. 2007.
 Шилдт Г. Искусство программирования на C++. 2005.
 Брюс Эккель, Чак Эллисон - Философия C++. Практическое программирование. 2005.
Что порекомендуете еще из нового?

Эндрюс - хорошая книжка.
Еще хорошая книжка: Богатырев К.Ю. Основы параллельного программирования.
Еще хорошая книжка: Эхтер Ш., Робертс Дж. Многоядерное программирование. 

Вот еще очень хорошая книжка: http://www.ozon.ru/context/detail/id/2512096/
Анатомия параллелизма.
PM MAIL   Вверх
Silent
Дата 12.7.2011, 07:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 252
Регистрация: 3.10.2006

Репутация: 1
Всего: 9



Уважаемый Rasool, покупать эту буржуйскую лицензионную студию не стоит, есть способ поработать и на экспрессе - http://iproc.ru/programming/openmp-visual-studio/. И если уж собрался "жечь" быстрый код, и при условии, что пишешь под процы-интелы, то взять интеловский компилятор (триал, 30 дней бесплатно), по сравнению со студийным его выходной код на 5-15% быстрее.
PM MAIL   Вверх
Rasool
Дата 13.7.2011, 17:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Цитата(Silent @ 12.7.2011,  07:34)
Уважаемый Rasool, покупать эту буржуйскую лицензионную студию не стоит, есть способ поработать и на экспрессе - http://iproc.ru/programming/openmp-visual-studio/. И если уж собрался "жечь" быстрый код, и при условии, что пишешь под процы-интелы, то взять интеловский компилятор (триал, 30 дней бесплатно), по сравнению со студийным его выходной код на 5-15% быстрее.

О, спасибо, а то я уже запутался в Qt. smile
PM MAIL   Вверх
borisbn
Дата 13.7.2011, 20:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



Цитата(Silent @  12.7.2011,  07:34 Найти цитируемый пост)
интеловский компилятор (триал, 30 дней бесплатно), по сравнению со студийным его выходной код на 5-15% быстрее.

Не факт, что всегда. У меня было с точностью наоборот (причём у intel'а была опция /O3 и /QaxK, а у M$VC - по-умолчанию для Release).

Rasool, если нужны быстрыи и параллельные вычисления, посмотри в сторону IPP (юзал, доволен, рекомендую), TBB (не юзал, листал доку - впечатляет) или QtConcurrent (юзал, доволен, рекомендую)


Цитата(Rasool @  13.7.2011,  17:06 Найти цитируемый пост)
я уже запутался в Qt.

хммм. более простую IDE и набор классов я не видел (много чего не хватает, того, чего есть в студии (IDE, а не классы), но для первых шагов IMHO само то). Чего не так то ?


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
bsa
Дата 14.7.2011, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(Rasool @  13.7.2011,  17:06 Найти цитируемый пост)
О, спасибо, а то я уже запутался в Qt.

 smile Это как?!? И вообще, я тебе посоветовал IDE Qt Creator с компилятором в комплекте. Причем тут Qt?
Имхо, Qt - самый удобный, простой и понятный инструментарий для создания гуишных программ на С++.
PM   Вверх
borisbn
Дата 14.7.2011, 13:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 21
Всего: 135



Цитата(bsa @  14.7.2011,  10:39 Найти цитируемый пост)
Имхо, Qt - самый удобный, простой и понятный инструментарий для создания гуишных программ на С++

Почему только гуишных ? А сеть, БД, XML, параллельные вычисления, скрипты... Вроде тоже всё предельно просто и понятно.


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
asmdzen
Дата 16.7.2011, 13:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата



**


Профиль
Группа: Участник
Сообщений: 345
Регистрация: 28.11.2010

Репутация: 3
Всего: 5



Цитата(bsa @  14.7.2011,  10:39 Найти цитируемый пост)
Qt - самый удобный, простой и понятный инструментарий

тогда в чем загвоздка? разве там нет чего-то с лицензией, типа можно писать только фривары или что-то такое?
PM MAIL   Вверх
bsa
Дата 17.7.2011, 15:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(asmdzen @  16.7.2011,  13:21 Найти цитируемый пост)
тогда в чем загвоздка? разве там нет чего-то с лицензией, типа можно писать только фривары или что-то такое? 

нет. уже давно обсуждалось.
PM   Вверх
boostcoder
Дата 17.7.2011, 16:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 20
Всего: 110



bsa, а разве тот mingw что поставляется с Qt поддерживает OpenMP? что-то я помню что нет.
PM WWW   Вверх
bsa
Дата 17.7.2011, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



PM   Вверх
boostcoder
Дата 17.7.2011, 17:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


pattern`щик
****


Профиль
Группа: Завсегдатай
Сообщений: 5458
Регистрация: 1.4.2010

Репутация: 20
Всего: 110



в общем понятно. но нужно проверить, а венды нет.


Это сообщение отредактировал(а) boostcoder - 17.7.2011, 18:16
PM WWW   Вверх
Rasool
Дата 2.9.2011, 15:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Цитата(Silent @ 12.7.2011,  07:34)
Уважаемый Rasool, покупать эту буржуйскую лицензионную студию не стоит, есть способ поработать и на экспрессе - http://iproc.ru/programming/openmp-visual-studio/. И если уж собрался "жечь" быстрый код, и при условии, что пишешь под процы-интелы, то взять интеловский компилятор (триал, 30 дней бесплатно), по сравнению со студийным его выходной код на 5-15% быстрее.

Заодно я озаботился покупкой новой материнской платы с микропроцессором, поскольку сейчас у меня стоит одноядерный Celeron. Думаю, что иметь четырехядерный Intel Core i5 достаточно или же нужно замахиваться на Core i7? И как правильно выбрать материнскую плату и память, исходя из требований максимальной производительности для работы программ на Visual C++ с OpenMP?
PM MAIL   Вверх
bsa
Дата 5.9.2011, 17:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(Rasool @  2.9.2011,  15:08 Найти цитируемый пост)
И как правильно выбрать материнскую плату и память, исходя из требований максимальной производительности для работы программ на Visual C++ с OpenMP?
У тебя идеальная платформа для создания эффективного кода. Поверь мне, если тебя его работа напрягать не будет, то обладателей современных систем тем более.  smile 
PM   Вверх
Silent
Дата 6.9.2011, 09:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 252
Регистрация: 3.10.2006

Репутация: 1
Всего: 9



А чем обусловлена необходимость распараллеливания именно под настольные многоядерные процессоры? Конечно, i5 или i7 дома - хорошо, но может быть проще арендовать облачный кластер на время счета задачи?
К тому же такая платформа, по моему мнению, не может считаться идеальной - одноядерная же
PM MAIL   Вверх
Rasool
Дата 22.9.2011, 18:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Цитата(Silent @ 6.9.2011,  09:40)
А чем обусловлена необходимость распараллеливания именно под настольные многоядерные процессоры? Конечно, i5 или i7 дома - хорошо, но может быть проще арендовать облачный кластер на время счета задачи?
К тому же такая платформа, по моему мнению, не может считаться идеальной - одноядерная же

А где можно узнать про облачные кластеры, цены на них?
И где можно почитать про особенности работы параллельных алгоритмов на них?
Мне для диссертации нужно, мне научный руководитель предложил распараллелить с целью ускорения несколько алгоритмов.

Это сообщение отредактировал(а) Rasool - 22.9.2011, 19:08
PM MAIL   Вверх
bsa
Дата 23.9.2011, 13:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Цитата(Rasool @  22.9.2011,  18:32 Найти цитируемый пост)
А где можно узнать про облачные кластеры, цены на них?
думаю, тебе они все-таки не нужны
Цитата(Rasool @  22.9.2011,  18:32 Найти цитируемый пост)
Мне для диссертации нужно, мне научный руководитель предложил распараллелить с целью ускорения несколько алгоритмов.
Прежде чем "распараллеливать" я бы все-таки немного освоил инструмент. В частности, классический С++.

PM   Вверх
Rasool
Дата 24.9.2011, 12:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Цитата(bsa @ 23.9.2011,  13:49)
Прежде чем "распараллеливать" я бы все-таки немного освоил инструмент. В частности, классический С++.

Сначала мне нужно определиться, на чем я буду работать: на многоядерных настольных машинах или на облачном кластере.
PM MAIL   Вверх
W4FhLF
Дата 24.9.2011, 18:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 2
Всего: 121



Компьютер -- это средство решения задачи. А средство должно выбираться прежде всего исходя из потребностей при решении задачи, а не крутизной звучания формулировки. Конечно, тема диссертации "решение квадратного уравнения с использованием инновационных технологий облачных вычислений" звучит очень круто, особенно в современных реалиях российской науки, но смысл данного исследования сомнительный. Вот и по вашим сообщениям возникает ощущение, что вы распараллеливаете программу просто ради того, чтобы написать об этом, для галочки. Если так, то берите то, что круче звучит. Если же нет и необходимость использования параллельных вычислений действительно продиктована задачей, то для получения толковых советов вам нужно описать кратко задачу, ваши способы решения и то, что вы хотите получить от распараллеливания.


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Rasool
Дата 25.9.2011, 18:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Один из алгоритмов, который предлагается распараллелить - это генетический алгоритм, с помощью которого ищутся траектории (пути) движения редундантного манипулятора в пространстве с препятствиями. Ожидается, что в результате распараллеливания он будет работать быстрее и быстрее находить нужные пути.
PM MAIL   Вверх
W4FhLF
Дата 25.9.2011, 21:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


found myself
****


Профиль
Группа: Участник Клуба
Сообщений: 2831
Регистрация: 2.12.2006

Репутация: 2
Всего: 121



Генетические алгоритмы не всегда можно эффективно распараллелить. я бы даже сказал, что распараллеливание не самый эффективный способ оптимизации ГА по скорости. Тем не менее... 
Сколько алгоритм сейчас работает по времени на вашей машине? Какое время вы бы хотели получить? Сколько, в относительных единицах (%), времени тратится на данный алгоритм в рамках программы целиком?
Что представляет собой ваша функция цели?


--------------------
"Бог умер" © Ницше
"Ницше умер" © Бог
PM ICQ   Вверх
Rasool
Дата 26.9.2011, 12:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Что касается времени работы алгоритма, то она зависит от сложности пространства препятствий. Чем сложнее пространство с препятствиями, тем больше будет работать ГА, ищущий пути для редундантного манипулятора. Следовательно, если распараллеливание даст нужный эффект, то с его помощью можно будет в приемлимое время прокладывать траектории путей манипулятора в более сложном пространстве.
Функция цели определяется следующими параметрами:
1) Пригодность по достижению цели;
2) Пригодность по достаточности длины манипулятора;
3) Пригодность по укладываемости  и достаточности звеньев манипулятора;
4) Пригодность по допустимости углов поворота;
5) Пригодность по пересечению с препятствиями;
6) Пригодность по толщине манипулятора.


Это сообщение отредактировал(а) Rasool - 26.9.2011, 12:41
PM MAIL   Вверх
bsa
Дата 26.9.2011, 16:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Rasool, случаем это не похоже на обход дерева снизу вверх? Если похоже, то довольно легко параллелится (n потоков, каждый берет из очереди ветку маршрута и проверяет ее до разветвления, все разветвления добавляет в очередь).
PM   Вверх
Rasool
Дата 26.9.2011, 21:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 58
Регистрация: 4.6.2011

Репутация: нет
Всего: нет



Цитата(bsa @ 26.9.2011,  16:23)
Rasool, случаем это не похоже на обход дерева снизу вверх? Если похоже, то довольно легко параллелится (n потоков, каждый берет из очереди ветку маршрута и проверяет ее до разветвления, все разветвления добавляет в очередь).

Да, есть алгоритм метода ветвей и границ, который ищет пути для редундантного манипулятора, который тоже можно успешно распараллелить.
Мне сейчас нужно определиться в "железе" - на чем лучше делать: на настольной многоядерной системе или же арендуя облачный кластер.
PM MAIL   Вверх
bsa
Дата 27.9.2011, 11:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 85
Всего: 196



Rasool, для дисертации, думаю, достаточно и настольного компьютера. А кластер уже лучше использовать для решения практических задач.
PM   Вверх
phprus
Дата 27.9.2011, 19:33 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 129
Регистрация: 22.8.2006

Репутация: нет
Всего: 3



Цитата(bsa @  27.9.2011,  14:07 Найти цитируемый пост)
Rasool, для дисертации, думаю, достаточно и настольного компьютера. А кластер уже лучше использовать для решения практических задач. 

Достаточно для тестирования, но к сожалению не всегда.

Цитата(Rasool @  27.9.2011,  00:14 Найти цитируемый пост)
Мне сейчас нужно определиться в "железе" - на чем лучше делать: на настольной многоядерной системе или же арендуя облачный кластер. 

Надо определиться не в железе, а в целесообразности распараллеливания в системе с общей памятью (многоядерные процессоры), в системах с распределенной памятью (кластера) или на GPU. (Комбинации также возможны).
Так как методы распараллеливания могут кардинально отличаться в зависимости от архитектуры планируемой системы.

Если к вопросу подходить с наивной точки зрения, то после портирования задачи, которая успешно масштабиравалась на SMP, на суперкомпьютер, можно и уменьшение производительности получить раз так в 100 (например, забыв что резко подорожали синхронизации и обмены данными).
PM MAIL WWW ICQ   Вверх
Страницы: (3) [Все] 1 2 3 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "C/C++: Для новичков"
JackYF
bsa

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, bsa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.1346 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.