Comments 43
приведите возможные примеры применения в реальной жизни
+1
Параллельные вычисления на кластере с возможностью предоставления доступа через веб. Реальная задача выполняемая на реальном кластере. Реализация на яве, правда без MPJ.
+1
ну типа того, только в данном примере — «зачем коню пятая нога»? веб-приложения по своей архитектуре хорошо паралелятся и это решается без MPJ, интересно что-то более приближенное к реальности.
0
Возможно, вопрос недопонял, но чем научные изыскания плохи? Разумеется, с numerics возможно будут какие-то проблемы (о чём пишут создатели на сайте), но как дополнительное средство в случае полного незнания (и нежелания тратить N лет для достижения определённого уровня) С и хорошего знания Java вполне можно использовать.
Лично я буду пробовать свои исследования переводить на Java. В частности, сейчас пробую себя в местном проекте — параллельном вейвлетном сжатии с нашими дополнительными плюшками. Пока не вижу возможных проблем с использованием Java.
С сайта MPJ:
«Mark Baker, Bryan Carpenter, and Aamir Shafi, MPJ Express Meets Gadget: Towards a Java Code for Cosmological Simulations, Submitted to Special Session ParSim in Euro»
+ к тому, когда я читал переписку официального листа сайта, возникали вопросы вполне исследовательского плана. Значит, средство востребовано. Однако, в связи со сложностю (=>невостребованностью) дисциплины как таковой и высокого порога вхождения о нём всё ещё мало кто знает.
Лично я буду пробовать свои исследования переводить на Java. В частности, сейчас пробую себя в местном проекте — параллельном вейвлетном сжатии с нашими дополнительными плюшками. Пока не вижу возможных проблем с использованием Java.
С сайта MPJ:
«Mark Baker, Bryan Carpenter, and Aamir Shafi, MPJ Express Meets Gadget: Towards a Java Code for Cosmological Simulations, Submitted to Special Session ParSim in Euro»
+ к тому, когда я читал переписку официального листа сайта, возникали вопросы вполне исследовательского плана. Значит, средство востребовано. Однако, в связи со сложностю (=>невостребованностью) дисциплины как таковой и высокого порога вхождения о нём всё ещё мало кто знает.
0
Пока не вижу возможных проблем с использованием Java.
Первое, что приходит на ум: низкая производительность операций с плавающей точкой; борьба в gc за память (вспоминаем, как при знакомстве с Java нам рассказывают, почему для сложения строк придумали StringBuffer); отсутствие поддержки OpenMP (запустить 8 воркеров на 8-ядерной машине и утверждать, что «будет не хуже, чем с OpenMP» — ересь).
Я бы такое применение JVM рассматривал разве что «for fun» или «на курсовую».
0
Советую почитать java-grande.org. Существует несколько групп специалистов, специально разрабатывающих новые парадигмы использования Java для HPC с учётом проблем производительности и уже добились некоторых успехов. Как я уже упоминал, возможны действительные проблемы, но, как утверждает автор и несколько юзеров, проблема возникает с некоторым неудобством использования самого MPJ :-)
Кроме того, MPJ — это обёрнутая нативная библиотека MPI. Как и JOMP — обертка для OpenMP. Так что поддержка есть.
Насчёт «for fun» — может быть, но технологии развиваются, возможно, эти группы специалистов придумают что-то, от чего С просядет? :-)
Кроме того, MPJ — это обёрнутая нативная библиотека MPI. Как и JOMP — обертка для OpenMP. Так что поддержка есть.
Насчёт «for fun» — может быть, но технологии развиваются, возможно, эти группы специалистов придумают что-то, от чего С просядет? :-)
0
Параллелинг веб-приложений и пареллелинг алгоритмов для обработки данных это не одно и тоже. MPJ создан именно для реализаций алгоритмов параллельной обработки данных, где требуется высокая скорость маппинга задач на ноды. Класс задач который решается такой либой сугубо математический.
0
отлично! попробую.как раз возникла задача распараллеливания процессов.не хотелось делать на С++.посмотрим как Java справится
0
Реальный пример… Вы пишете прототип быстрый на java. потом понимаете, что добавив 10 строк получите версию для кластера, а на плюсы будите месяц переписывать. Для задачи счетной на 100+ часов но менее 1000 я бы и C# и java бы использовал.
+1
А вообще заголовок звучит как «Fortran как язык для создания Rich Web Applications»
-2
На самом деле я гнусно украл первую часть заголовка из статьи авторов MPJ. Остальное всё моё — честно. :-)
0
Гхм, а почему бы и нет
0
Ну и подходящий же ты пример выбрал… :D
-1
В контексте параллелизма душа должна тянуться не к Java, а к Erlang или Limbo.
-2
Начальство не слышало — значит не нужно. Да и в большинстве (у нас в России) случаев платят за время, а не за эффективность. Таким образом, адекватный выбор технологий никому не нужен.
-2
Erlang был создан с другой целью.
если очень коротко… Параллелизм- не цель. Цель решить задачу. Если задача решается в 1 поток, то не какого параллелизма не нужно.
Когда говорят о параллельных вычислениях сразу имеют ввиду, что просто считать много надо. А Erlang- это все таки во первых язык не математиков, которые в большинстве и пишут софт, которому нужен кластер.(им и с/fortran хватает. и как правила дальше массивов, списков, циклов и условий им язык знать не надо.)
А во вторых- erlang все таки создан для систем реального времени типа атс… а не для числодробилки. попробуйте на коммутаторе проводить расчеты… они просто не для того. Производительность+многопоточность+ многомашинность. вот зачем эта библиотека нужна.!!!
По этому обертка над mpi на java- это очень хорошая вещь.
если очень коротко… Параллелизм- не цель. Цель решить задачу. Если задача решается в 1 поток, то не какого параллелизма не нужно.
Когда говорят о параллельных вычислениях сразу имеют ввиду, что просто считать много надо. А Erlang- это все таки во первых язык не математиков, которые в большинстве и пишут софт, которому нужен кластер.(им и с/fortran хватает. и как правила дальше массивов, списков, циклов и условий им язык знать не надо.)
А во вторых- erlang все таки создан для систем реального времени типа атс… а не для числодробилки. попробуйте на коммутаторе проводить расчеты… они просто не для того. Производительность+многопоточность+ многомашинность. вот зачем эта библиотека нужна.!!!
По этому обертка над mpi на java- это очень хорошая вещь.
+1
Когда я был в летней школе по HPC, организуемой Microsoft, нам вообще рассказывали и показывали, как использовать в параллельных вычислениях Хаскелль. Рассказывал Саймон Джонс, так что все верили :-)
Но, если честно, в одном бы разобраться, а уж потом за функциональные языки браться.
Но, если честно, в одном бы разобраться, а уж потом за функциональные языки браться.
0
Расскажите, сильно ли ощущалась разница в уровне иностранных и русских лекторов там?
0
Для удобства сошлюсь на сайт с материалами школы.
Общие впечатления двоякие. Это был первый опыт Microsoft в организации подобных школ в России, длилась она всего неделю, попахивало маркетингом. Поназвали элиту Microsoft, начиная с вице-президента Microsoft Research и заканчивая Саймоном Джонсом.
Двоякость впечатления основывалась на не очень хорошей проработанности материалов. Лекторы все были замечательные, особенно понравились господа Грановский (который, хоть говорил тихо и в бороду, но по интересным темам), Болдырев и Абрамов. Показали нам тестовые образцы новых супермикросхем для кластеров, разрабатываемые в России :-)
Я могу сказать, что лекторы ВСЕ были профессионалами высшего уровня. Саймон Джонс — душка, потрясающе ведёт себя на «сцене» :-).
Различий в уровне между нашими и зарубежными лекторами не замечал. За эту неделю они умудрились впихнуть в наши головы множество полезных и не очень знаний. Но, судя по проведенному мной соцопросу, «параллельный хаскель не осилили» :-)
Общие впечатления двоякие. Это был первый опыт Microsoft в организации подобных школ в России, длилась она всего неделю, попахивало маркетингом. Поназвали элиту Microsoft, начиная с вице-президента Microsoft Research и заканчивая Саймоном Джонсом.
Двоякость впечатления основывалась на не очень хорошей проработанности материалов. Лекторы все были замечательные, особенно понравились господа Грановский (который, хоть говорил тихо и в бороду, но по интересным темам), Болдырев и Абрамов. Показали нам тестовые образцы новых супермикросхем для кластеров, разрабатываемые в России :-)
Я могу сказать, что лекторы ВСЕ были профессионалами высшего уровня. Саймон Джонс — душка, потрясающе ведёт себя на «сцене» :-).
Различий в уровне между нашими и зарубежными лекторами не замечал. За эту неделю они умудрились впихнуть в наши головы множество полезных и не очень знаний. Но, судя по проведенному мной соцопросу, «параллельный хаскель не осилили» :-)
0
Спасибо, значит стоящее дело. Посмотрим, насколько понравится школа в Нижнем, делает её на этот раз Intel, насколько я понял.
0
Была пара ребят-завсегдатаев Интеловских школ. У Интела всё это на поток уже поставлено и более практическая направленность. Рекомендую. :-)
0
Осталось чтобы злобная комиссия оценила мои «планы на ближайший год и пять лет».
0
Сейчас расскажу страшную историю — как я проходил в школу Microsoft.
Проходил я её два или три месяца. Звонили, терзали вопросами на английском и русском, проверяли. Девочки очень приятные в Microsoft :-)
Но потом оказалось, что не добираю четвертинку балла до нужных 3 баллов. Пришлось задействовать связи, потому что ну очень хотелось. Прошёл.
Во время школы слышал краем уха разговор одного из организаторов школы (русского товарища) с аспирантом: «знаешь, Лёш, я как вас увидел троих, сразу без конкурса вам галочки поставил, что вы прошли».
Между тем, эти аспиранты были тухлые и поехали, как сами признались, for fun.
Однако их количество статей и блат сделали своё дело. Поэтому, если хочешь, чтобы тебя брали на любые школы в России, надо иметь:
1) блат
2) пару статей (неважно каких)
Именно в этом порядке. Тогда и присылать будут раньше письма-уведомления, и свои источники всегда будут. В России многие школы курируют одни и те же люди.
Проходил я её два или три месяца. Звонили, терзали вопросами на английском и русском, проверяли. Девочки очень приятные в Microsoft :-)
Но потом оказалось, что не добираю четвертинку балла до нужных 3 баллов. Пришлось задействовать связи, потому что ну очень хотелось. Прошёл.
Во время школы слышал краем уха разговор одного из организаторов школы (русского товарища) с аспирантом: «знаешь, Лёш, я как вас увидел троих, сразу без конкурса вам галочки поставил, что вы прошли».
Между тем, эти аспиранты были тухлые и поехали, как сами признались, for fun.
Однако их количество статей и блат сделали своё дело. Поэтому, если хочешь, чтобы тебя брали на любые школы в России, надо иметь:
1) блат
2) пару статей (неважно каких)
Именно в этом порядке. Тогда и присылать будут раньше письма-уведомления, и свои источники всегда будут. В России многие школы курируют одни и те же люди.
0
почему не Hadoop/GridGain?
0
Потому, что Hadoop для High Availability Cluster а не для High Performance Cluster. И области применения разные и производительность разная.
0
ээ… разве? в любом случае у автора какая-то не очень параллельная система получается да ещё и на каких-то левых компонентах…
0
Начнём с того, что это не система. :-) Левые компоненты — может быть, однако, во многих настоящих системах, как коммерческих, так и нет, используется порой с половинку или больше левых компонентов или засабмиченных на самом деле неизвестно кем.
Почему не Hadoop/GridGain? С удовольствим бы почитал, если вы напишете про эти вещи, но у самого рук не хватает и памяти, чтобы всё охватывать.
Почему не Hadoop/GridGain? С удовольствим бы почитал, если вы напишете про эти вещи, но у самого рук не хватает и памяти, чтобы всё охватывать.
0
Более того, hadoop вообще как числодробилка не очень. Он скорее для всякой аналитики для оочень больших объемов данных. На нем даже можно сделать некое подобие sql (см. проект cascading). И еще: все промежуточные результаты храняться в файлах, да еще и в распределенной ФС.
0
У меня вопрос, как человека, который пытался это счастье применить…
Скачав по той же ссылку, у меня были проблемы с отсутствием класса MpiException.
И при попытке скомпилить была естественно ошибка.
Вы его написали сами, или я дурак не смог найти этот класс? Потому, что в jar нике не было этого класс- это точно.
Кстати, я хоть и не был на школе MS в 2009 по HPC, но не в регалиях дело.
Вы бы сразу уточнили, что для работы на кластере эта штука именно, дали ссылочку на стандарт mpi (ну хоть в пару предложений сказали, что есть различные имплементации от ms, intel и тд. понятно что ms версия не для linux).
О том, что есть различные оболочки поверх mpi оригинального (c/fortran)на Java/.Net
Люди любят магические мантры типа параллельного программирования. Вы бы хоть чуток просветили тех, кто первый раз то…
Скачав по той же ссылку, у меня были проблемы с отсутствием класса MpiException.
И при попытке скомпилить была естественно ошибка.
Вы его написали сами, или я дурак не смог найти этот класс? Потому, что в jar нике не было этого класс- это точно.
Кстати, я хоть и не был на школе MS в 2009 по HPC, но не в регалиях дело.
Вы бы сразу уточнили, что для работы на кластере эта штука именно, дали ссылочку на стандарт mpi (ну хоть в пару предложений сказали, что есть различные имплементации от ms, intel и тд. понятно что ms версия не для linux).
О том, что есть различные оболочки поверх mpi оригинального (c/fortran)на Java/.Net
Люди любят магические мантры типа параллельного программирования. Вы бы хоть чуток просветили тех, кто первый раз то…
+3
Название поста не совсем верное. Скорее Message Passing Programming for Java. Параллельное программирование это типа fork-join. Конечно MPI это тоже параллельное программирование, но не детерминированное из-за т.н. concurrency.
-1
UFO just landed and posted this here
Есть такая вещь как Terracotta www.terracotta.org/
К ней куча коммерческих J2Ee-приблуд, но сам движок opensource.
К ней куча коммерческих J2Ee-приблуд, но сам движок opensource.
0
это круто, мне понравилось, но мне непонятно, почему когда я запустил
mpjrun.bat -np 100 HelloWorld.java
то он сначала секунд 10-15 ждал, а потом сразу вывел сто строк
mpjrun.bat -np 100 HelloWorld.java
то он сначала секунд 10-15 ждал, а потом сразу вывел сто строк
0
Sign up to leave a comment.
Java как язык для параллельных вычислений. Установка, настройка, первая программа