Тогда из этого сразу следует, что это "нужно миллионами" процессов не будут работать параллельно, плюс будут тратить время на общение с менеджером, в итоге должно работать медленнее, чем если бы мы запустили потоков столько, сколько процессов.
Речь видимо идёт не о распараллеливание по функциям, а о распараллеливании циклов и тому подобных вещей. А это интелловский компилятор действительно делает и действительно даёт прирост в нужное количиство раз при большом объёме вычислений.
Спасибо за перевод :)
Но некоторые вещи вызывают удивление, возможно и из-за того что я не в курсе этого языка.
Каким образом модель с передачей сообщений в рамках одного процессора может быть лучше чем модель с общей памятью? Мне думается что в такой ситуации не стоит изучать специально Erlang, а пользоваться C + OpenMP, так будет быстрее и проще, и время на пересылку сообщений тратиться не будет.
Для приведённых в статье применений я не оспариваю полезность этого языка, но он не становиться популярным именно потому, что распараллелить и убыстрить код можно и другими, менее затратными способами, и пока что этого вполне хватает :)
Думаю не всё так просто и с написанием крупных приложений. Наверняка там код не такой прозрачный, как в примере, и нужно уже самому продумывать и прописывать взаимодействие процессов, блокировки и пересылки. И тогда по затраченному времени на написание это не будет быстрее, чем тотже MPI...
> Недавно МГУ приобрела у HP новейший суперкомпутер
Разве у HP? :) Если и был, то о нём никто особо не знает, видимо есть другие системы. на которых считают.
По крайней мере последникй куплен не у них, и, насколько я знаю, он с распределённой памятью, так что кластер.
Но ведь и затраты на пересылку при таком количестве взаимодействующих процессов будут велики?
Но некоторые вещи вызывают удивление, возможно и из-за того что я не в курсе этого языка.
Каким образом модель с передачей сообщений в рамках одного процессора может быть лучше чем модель с общей памятью? Мне думается что в такой ситуации не стоит изучать специально Erlang, а пользоваться C + OpenMP, так будет быстрее и проще, и время на пересылку сообщений тратиться не будет.
Для приведённых в статье применений я не оспариваю полезность этого языка, но он не становиться популярным именно потому, что распараллелить и убыстрить код можно и другими, менее затратными способами, и пока что этого вполне хватает :)
Думаю не всё так просто и с написанием крупных приложений. Наверняка там код не такой прозрачный, как в примере, и нужно уже самому продумывать и прописывать взаимодействие процессов, блокировки и пересылки. И тогда по затраченному времени на написание это не будет быстрее, чем тотже MPI...
jmp $
ещё короче, или я уже подзабываю школу? :)
Разве у HP? :) Если и был, то о нём никто особо не знает, видимо есть другие системы. на которых считают.
По крайней мере последникй куплен не у них, и, насколько я знаю, он с распределённой памятью, так что кластер.