Предполагая, что у нас есть четыре 16-ядерных узла (node1, node2, node3, node4). Как я могу запустить большую параллельную программу на узле1,2,3 одновременно? Или даже используя 16 ядер во всех, однако выделяемых как 7cores в node1 + 8cores в node2 + 1core в node3 (другая часть занята)?
MPI общий способ? Нужно ли openmp? Я не изучил MPI, но использовал openmp в одном узле.Может ли OpenMP распараллелить код для работы на нескольких узлах?
-1
A
ответ
1
При необходимости вы можете использовать комбинацию OpenMP и MPI. Хотя MPI использует каждое ядро на каждом узле и оптимизирован для использования локальности ссылки, когда выясняется, что его другие задачи находятся на одной машине, база кода должна сильно измениться, если она уже была разработана. Пошаговое параллелирование кода рекомендуется с помощью OpenMP, поэтому вы можете захотеть организовать гибрид, где каждая задача MPI использует ядра с использованием OpenMP. Количество узлов = количество задач MPI количество ядер на машины = количество задач OpenMP на машину
Смежные вопросы
- 1. Может ли OpenMP использоваться для графических процессоров?
- 2. Как распараллелить цикл в OpenMP?
- 3. Можно ли распараллелить следующий код на C++ с помощью OpenMP для лучшей производительности?
- 4. Более медленный код с OpenMP, как его можно распараллелить?
- 5. распараллелить добавление вектора матриц в OpenMP
- 6. OpenMP C++ - Как распараллелить эту функцию?
- 7. Может ли компилятор автоматически распараллелить код, поддерживающий распараллеливание?
- 8. Лучший способ распараллелить рекурсии с использованием OpenMP
- 9. Как распараллелить цикл с помощью openmp?
- 10. Можно ли распараллелить это для цикла?
- 11. Конфигурация консула на нескольких узлах
- 12. Как распараллелить этот код?
- 13. Как эффективно распараллелить связанный список с помощью OpenMP (используя задачи?)
- 14. Запуск задания Hudson на нескольких узлах
- 15. Событие Mouseclick на нескольких узлах
- 16. Выполнение работы Jenkins одновременно на всех узлах
- 17. Может ли XPath использоваться для возврата пространств имен на узлах?
- 18. Время работы OpenMP
- 19. Возможно ли «распараллелить» эту программу?
- 20. Определите очередь на нескольких узлах на RabbitMQ
- 21. Краткосрочное развертывание Akka на нескольких узлах
- 22. На какой объем работы стоит использовать OpenMP-запуск?
- 23. Возможно ли распараллелить фильтр для ARM NEON?
- 24. Поддерживает ли OpenMP механизм кражи работы?
- 25. Как узнать, выполняется ли мое задание mapreduce на нескольких узлах?
- 26. OpenMP: необходимо распараллелить проблему зависимостей данных зацикливание, имеющий
- 27. Как распараллелить do while и while loop в openmp?
- 28. OpenMP на суперкомпьютере
- 29. Задачи планирования NodeJs на нескольких узлах
- 30. Как обновить ehcache на нескольких узлах?
Это, конечно, не единственный способ. Например, Erlang, Oz и многие другие языки имеют свой собственный способ распределения заданий, а PVM - это еще одна библиотека, которая обычно сравнивается с MPI. Но если вы находитесь на C или Fortran, MPI - довольно хороший выбор. – Amadan
Возможный дубликат программы OpenMP на разных хостах (http://stackoverflow.com/questions/13475838/openmp-program-on-different-hosts) –