Перейти к публикации

Как "распараллелить" расчет на два компа.


Blonde-O

Рекомендованные сообщения

Добрый день участники форума! :smile:

Хочу спросить знатаков и разобраться с задачей. По долгу службы пришлось не так давно начать осваивать расчеты МКЭ с помощью Abaqus. Считаю пока преимущественно статику, но детальки достаточно габаритные, поэтому расчет занимает много времени если мельчить с сеткой. На работе имеется два серьезных компа одинаковой комплектации:

Двенадцатиядерный Intel Core i7 3.30GHz 
Оперативки   64,0 GB

Видеокарта GeForce GTX TITAN Black (2880 ядер CUDA, 6144 МВ памяти и т.д.)
HDD 1 TB + SSD 256 GB

Один комп чаще простаивает, а мой не вытягивает (включил в модуле JOB parallelization на процессоры и GPU), все равно счет долго идет. Как подключить к расчетам второй компьютер???

Благодарен за любую помощь!! :worthy:

Ссылка на сообщение
Поделиться на других сайтах


Даже на зарубежных форумах инфы на этот счет очень мало.

Будет просто чудо наяву, если кто-то тут напишет что-то дельное.

 

PS Интересно, на чем там в Тезисе считают   :rolleyes:

 

PPS: хотел спросить -- использование GPU дает какой-то прирост производительности? А то мои опыты показали разницу на уровне погрешности..

Ссылка на сообщение
Поделиться на других сайтах

PPS: хотел спросить -- использование GPU дает какой-то прирост производительности? А то мои опыты показали разницу на уровне погрешности..

На счет GPU свяжитесь с Антоном Джораевым! Это представитель Nvidia он поможет тесты сделать вашей видюхи! А компы так не распаралелишь , нужно создавать рабочую станцию из них. По крайней мере как вы будете винты связывать если sata то к примеру у меня проц считает итерации по 5 мин а вот записывает данные (не хватало оперативки) по 20 мин.

При быстрых расчетах упираемся в скорости предачи и записи данных ! Хотя может я не прав , это мое личное мнение!

Ссылка на сообщение
Поделиться на других сайтах
На счет GPU свяжитесь с Антоном Джораевым! Это представитель Nvidia

Хотелось услышать об опыте практического использования с абакусом на игровых картах.

Ссылка на сообщение
Поделиться на других сайтах

 

На счет GPU свяжитесь с Антоном Джораевым! Это представитель Nvidia

Хотелось услышать об опыте практического использования с абакусом на игровых картах.

 

Там не все Сuda потдерживают расчеты в мкэ программах. На сколько мне известно Nvidia tesla только потдерживает расчте с Abaqus(могу ошибаться). Точно знаю что Quadra 2000 хоть там и есть Cuda не потдерживает расчеты мкэ. Все данные можете на сайте Nvidia найти там и тесты есть вроде. 

Ссылка на сообщение
Поделиться на других сайтах

Может, не в тему, конечно... У меня 4 ядра, остальные CUDA, так вот: когда я подключаю больше 4 ядер, у меня результаты расчета ABAQUS меняются...

Ссылка на сообщение
Поделиться на других сайтах

У меня такое было с явным решателем и очень нелинейной задачей -- результаты расчета на одном ядре существенно отличались от расчета на 2 и более.

Ссылка на сообщение
Поделиться на других сайтах

Как распараллелить на два компа,  можно почитать тут:
Abaqus Analysis User's Guide
3.5 Parallel execution
    “Parallel execution: overview,” Section 3.5.1
    “Parallel execution in Abaqus/Standard,” Section 3.5.2
    “Parallel execution in Abaqus/Explicit,” Section 3.5.3
    “Parallel execution in Abaqus/CFD,” Section 3.5.4

для Standard  есть ограничения. Принцип такой(сам не прбовал)

abaqus job=job-name cpus=8

в environment файл надо добавить имена компа
mp_host_list=[['имя1',4],['имя2',4]]
4 - кол-во CPU

Попробуйте и  можете написать, работает ли.

Ссылка на сообщение
Поделиться на других сайтах
хотел спросить -- использование GPU дает какой-то прирост производительности? А то мои опыты показали разницу на уровне погрешности..

Про GPGPU мне тоже не до конца понятно. Вы в разделе Use GPGPU acceleration что вводите? Кратность ускорения или кол-во ядер CUDA видюхи? Для меня не понятно осталось...запускал один итот же расчет несколько раз менял  комбинации процессор и GPU вотт что получилось:

12 ядер проца.

JOB TIME SUMMARY

       USER TIME (SEC)      =   5730.7   

       SYSTEM TIME (SEC)    =   245.20   

       TOTAL CPU TIME (SEC) =   5975.9   

       WALLCLOCK TIME (SEC) =        782=13 мин

12 ядер проца и GPGPU (2880 ядер CUDA ).

JOB TIME SUMMARY

       USER TIME (SEC)      =   4992.7   

       SYSTEM TIME (SEC)    =   465.00   

       TOTAL CPU TIME (SEC) =   5457.7   

       WALLCLOCK TIME (SEC) =        860= 14,3 мин.

Только GPGPU (2880 ядер CUDA ).

JOB TIME SUMMARY

       USER TIME (SEC)      =   2331.5   

       SYSTEM TIME (SEC)    =   473.80   

       TOTAL CPU TIME (SEC) =   2805.3   

       WALLCLOCK TIME (SEC) =       2808= 47 мин.

12 ядер проца и GPGPU (x8).

JOB TIME SUMMARY

       USER TIME (SEC)      =   4977.9   

       SYSTEM TIME (SEC)    =   479.80   

       TOTAL CPU TIME (SEC) =   5457.7   

       WALLCLOCK TIME (SEC) =        868= 14,46 мин.

12 ядер проца и GPGPU (x2).

JOB TIME SUMMARY

       USER TIME (SEC)      =   5028.3   

       SYSTEM TIME (SEC)    =   486.90   

       TOTAL CPU TIME (SEC) =   5515.2   

       WALLCLOCK TIME (SEC) =        883=14,71 мин.

12 ядер проца и GPGPU (x12).

JOB TIME SUMMARY

       USER TIME (SEC)      =   5007.5   

       SYSTEM TIME (SEC)    =   495.30   

       TOTAL CPU TIME (SEC) =   5502.8   

       WALLCLOCK TIME (SEC) =        887=14,78 мин.

Какая-то ерунда, получается что подключение GPU только тормозит расчет! Как так?


Как распараллелить на два компа,  можно почитать тут:
Abaqus Analysis User's Guide
3.5 Parallel execution
    “Parallel execution: overview,” Section 3.5.1
    “Parallel execution in Abaqus/Standard,” Section 3.5.2
    “Parallel execution in Abaqus/Explicit,” Section 3.5.3
    “Parallel execution in Abaqus/CFD,” Section 3.5.4

для Standard  есть ограничения. Принцип такой(сам не прбовал)

abaqus job=job-name cpus=8

в environment файл надо добавить имена компа
mp_host_list=[['имя1',4],['имя2',4]]
4 - кол-во CPU

Попробуйте и  можете написать, работает ли.

Благодарю, как попробую отпишусь.

Ссылка на сообщение
Поделиться на других сайтах

Как распараллелить на два компа,  можно почитать тут:

Abaqus Analysis User's Guide

3.5 Parallel execution

    “Parallel execution: overview,” Section 3.5.1

    “Parallel execution in Abaqus/Standard,” Section 3.5.2

    “Parallel execution in Abaqus/Explicit,” Section 3.5.3

    “Parallel execution in Abaqus/CFD,” Section 3.5.4

для Standard  есть ограничения. Принцип такой(сам не прбовал)

abaqus job=job-name cpus=8

в environment файл надо добавить имена компа

mp_host_list=[['имя1',4],['имя2',4]]

4 - кол-во CPU

Попробуйте и  можете написать, работает ли.

в enviroment файле прописал указанные строчки, при задании работы вылетает сообщение Aborted с пояснением

Failed to execute "hostname" on host "comp_2". Please verify that you can execute commands remotely on "comp_2" without a password. Command used: "C:\Program Files\Microsoft HPC Pack 2008 R2\bin\mpiexec.exe -wdir C:\Windows -hosts 1 comp_2 1 -env PATH C:\SIMULIA\Abaqus\6.14-1\code\bin;C:\Windows\system32 C:\SIMULIA\Abaqus\6.14-1\code\bin\dmpCT_rsh.exe hostname".

У кого какие идеи?

Ссылка на сообщение
Поделиться на других сайтах

@@Blonde-O, спасибо за отклик.

Мои опыты с gpu:

Сделал тестовую задачу, создал шаг Dynamic Implicit, создал два джоба: один с GPGPU, другой без. С GPGPU wallclock time = 254s, без = 290s. Потом снова запустил, c gpu = 250s, без = 262s. Потом снова: 244s, 248s. Так что хз какие выводы делать.. Видимо, мне какой-то абакус самообучаемый попался..

Но хоть ошибку никакую не вываливает, когда с GPU запускаешь. У меня, правда, никаких программ-мониторов для gpu не установлено. Если судить по температуре, то не сильно она напрягается при расчете, если вообще хоть то-то делает.

Нашел статью одного китайца, у него свои выводы по этой теме (http://www.nus.edu.sg/comcen/news/HPC/articles/GPUandABAQUS.pdf)

Так что пока, как мне кажется, эта возможность -- вроде игрушки.. Тем более, для explicit солвера она не работает.

Да, у меня GeForce 555M, а не Tesla. Может, еще и в этом причина)

Ссылка на сообщение
Поделиться на других сайтах

Как распараллелить на два компа, можно почитать тут:

Abaqus Analysis User's Guide

3.5 Parallel execution

“Parallel execution: overview,” Section 3.5.1

“Parallel execution in Abaqus/Standard,” Section 3.5.2

“Parallel execution in Abaqus/Explicit,” Section 3.5.3

“Parallel execution in Abaqus/CFD,” Section 3.5.4

для Standard есть ограничения. Принцип такой(сам не прбовал)

abaqus job=job-name cpus=8

в environment файл надо добавить имена компа

mp_host_list=[['имя1',4],['имя2',4]]

4 - кол-во CPU

Попробуйте и можете написать, работает ли.

в enviroment файле прописал указанные строчки, при задании работы вылетает сообщение Aborted с пояснением

Failed to execute "hostname" on host "comp_2". Please verify that you can execute commands remotely on "comp_2" without a password. Command used: "C:\Program Files\Microsoft HPC Pack 2008 R2\bin\mpiexec.exe -wdir C:\Windows -hosts 1 comp_2 1 -env PATH C:\SIMULIA\Abaqus\6.14-1\code\bin;C:\Windows\system32 C:\SIMULIA\Abaqus\6.14-1\code\bin\dmpCT_rsh.exe hostname".

У кого какие идеи?

Для работы программе требуется возможность логин на comp_2 без задания пароля . Это нужно реализовать на базе виндовс . Как это делать может подсказать сисадмин.
Ссылка на сообщение
Поделиться на других сайтах

я пробовал тоже распаралелить +  GPU под Win тоже

результаты "скромные" - ввиду отсутствия свободного времени и скромных результатов - на время бросил эти эксперименты

 

на сколько я понял - читая переписку на иностранных форумах по этой тематике - "положительных" результатов мало кто достиг

Ссылка на сообщение
Поделиться на других сайтах

Мой препод по информатике говорил , что не всегда многопроцессорность приводит к положительным результатам. Пример : допустим перенести 10 яблок одному человеку(взял поднос загрузил понес) , или прейдет десять человек возьмет по одному яблоку и понесут! Ну и в этом роде! В общем задачи на которых будет существенный прирост д.б. соответственные данному железу! Есть задачи которые при использовании многопроцессорности будут наоборот медленне решаться чем даже на одном процессоре! 

 

PS Наш институт писал мануал майкрасофту для многопроцессорных систем и занимается ими уже более 20 лет!

Ссылка на сообщение
Поделиться на других сайтах
Мой препод по информатике говорил , что ....
 

А он часом не упоминал, как абакус на два компа распараллелить?  :rolleyes:

Раз уж институт мануалы микрософту пишет 20 лет.

Ссылка на сообщение
Поделиться на других сайтах

Я думаю он знает !)))Правда я сним не общаюсь, сейчас. Там преимущественно Ansys на кафедре. Кстати и кластер есть второй в россии по мощности, на сколько мне известно(после МГУ). Да и с Microsoft сотрудничество суже около 10 лет есть совместный центр инновацый , на сколько мне известно! Попытаюсь спросить на кафедре на счет CUDA . Тоже интересно стало! Да и вот нашел в инете что с 2011 года открыт на базе универа- исследовательский центр CUDA.

Ссылка на сообщение
Поделиться на других сайтах
  • 1 год спустя...
Какая-то ерунда, получается что подключение GPU только тормозит расчет! Как так?

У меня тоже такие результаты получились. В Абакус 6.14-5 с включенной галочкой "Use GPGPU acceleration" расчет идет на 10-15% медленнее!

В 6.12-3 без разницы было - что с галкой, что без. 

Ссылка на сообщение
Поделиться на других сайтах
  • 2 месяца спустя...

По этому решил купить себе 2-х процессорную рабочию станцию, два ксеона по 6 ядер , а теслу вставить всегда успею. Кто знает как работают ксеоны и i7 там есть отличия вроде на уровне железа. ксеоны заточены именно под распределенную работу. Грраф станция кстати нр z800 именно так и сделана на ксеонах .. очень не дорого :)

кому нужно заказывайте в личку.

Изменено пользователем Maik812
Ссылка на сообщение
Поделиться на других сайтах
  • 1 год спустя...

добрый день,

 

есть вопросы по работе ABAQUS на кластере под win 64 - пожалуйста напишите в личку если кто имеет опыт по настройке

 

в частности вот такая непонятная ситуация - при решении задач с технологией CEL - получаю несколько "странные" результаты с точки зрения "ускорения" счета в зависимости от кол-ва узлов ....
*** при решении "обычных" задач (implicit/explicit) "ускорение" счета в зависимости от кол-ва узлов - более-менее "адекватное".... - хотя тоже не все так "гладко" как это рекламируется.... - остается надеяться, что все эти "странные" факты - есть следствие неумелой настройки системы, а не ошибок самой программы

 

 

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




×
×
  • Создать...