ПАРАЛЛЕЛЬДІ ЕСЕПТЕУДЕГІ КОМПЬЮТЕРЛІК МОДЕЛЬ КЛАСТЕРІ
ЖОРАНОВА Н.Ж
Зерттеулерді жүргізу кезінде көптеген
уақытты әртүрлі жүйелерді имитациялық моделді
қолдану кезінде күрделі есептеулерді жақсартуға болады.
Мамандандырылған кластерде параллельді есептеулерді осы мақсатта
пайдалануда, зерттелерді жүргізу кезінде уақытты
қысқартуға мүмкіндік туар еді.
Есептеу кластер жалпы алғанда-
бұл өзінің операциялық жүйелерінің
басқаруымен және өзінің жедел жадысы бар есептеу
байланыстарының компьютерлер жиынтығы. Бұл саласда кең
тараған бір текті клсатерлер, сол сияқты желілерде,
өнімділігі және сұлбасы жағынан барлық
байланыстар бірдей болып келеді.
Әрбір кластер үшін арнаулы
кластер меншіктеледі- басқы машина (front-end). Бұл машинада бағдарламалық
қамтамасыздандыру орнатылған, ол кластерде бағдарламаны іске
қосу арқылы басқарылады. Меншікті есептеу процессі
пайдаланушының есептеу байланыстарында іске қосылады, ол
әрбір процессорда тек бірғана есептеу проецессі болып
бөлінеді. Есептеу процессін
кластердің басқы машинасында іске қосуға
болмайды.
Пайдаланушыда кластердің басқы
машинасына терминальды мүмкіндігі беріледі, ол кластер байланысына
қажеттілік туындаған жағдайда кіре алады. Кластерде бағдарламаны
іске қосуды «пакетті» режимде жүргізіледі, бұл дегеніміз
пайдаланушы бағдарламаны
«интерактивті» өзара әректтестере алмайды, бағдарлама
перне тақтададан мәліметтерді енгізіп күтпейді және оны
экран бетіне шығара алмайды.
Сондықтан пайдаланушы кластерге қосулы кезінде бағдарламамен жұмыс істей
алмайды. Есептеу кластері ОС Unix әртүрлі көріністің
біреуінің басқаруымен, ОС Windows нұсқаларының
желілерінің біреуі арқылы , көп пайдаланушы көп есепті
желілік операциялық жүйелер жұмыс жасайды.
Файл серверде орналасқан жалпы
файлдық жүйеге барлық кластер түйіндеріне мүмкіндік
алуға болады. Файл құру, басқы машинада немесе
басқада түйіндерде, содан сол атпен басқа
түйіндерде ішкі тақырып
атауын бере аласыз. Бірдей файл жазбалары бір мезетте әртүрлі
түйіндерде мүмкін емес, бірақ әртүлі
файлдағы жазбалар мүмкін. Бұдан басқа жалпы
файлдық жүйеде кластердің түйіндерінде жергілікті дискі
болуы мүмкін. Олар уақытша файлдарды сақтау үшін
бағдарламаларды пайдалана алады. Бағдарламамен жұмыс
аяқталғаннан кейін осы файлдар жойылуы тиіс.
Ешқандай мамандандырылған параллельді компиляторлар кластер үшін болмайды. Си және Фортран – GNU тілдерімен қарапайым тиімдеу компиляторы қолданылады. Intel немесе басқа, ОЖ Linux бағдарламаларын құруды орындайды.
Ереже ретінде параллельді MPI-бағдарлама компиляциясы үшін
арнаулы скриптері қолданылады, (mpicc, mpif77, mpitVO және басқа.), компиляторлары бар
қондырмалар және қажетті кітапхана қосуға
мүмкіндік береді.
Кластердің есептеу қуаттылығын
іске қосудың бірнеше тәсілдері бар:
1.
Бір процессорлы есептер жиынын әске қосу.
Бұл нұсқа ең тиімді болуы мүмкін, егер
әртүрлі кіру мәліметтерімен тәуелсіз есептеу
сынақтарды жүргізсе, әрбір бөліктік есептеулердің
мерзімдерінің мәндері болмайды, ал барлық мәліметтер
жады көлеміне сиғызылады, бір процесске мүмкіндік беріледі.
2.
Дайын параллельді бағдарламаларды іске қосу.
Ереже ретінде C/C++ немесе Фортран MPI интерфейсімен, алғашқы
мәтінге мүмкіншілік болатындай бағдарлама болса жеткілікті.
Мысалы еркін таратылатын параллельді бағдарлама, MPIкөмегімен
таратылады: GAMESS-US (кванттық
химия). POVRay-MPI
(трассировкалы сәулелер).
3.
Өзінің бағдарламада параллельді
кітапхананы шақыру. Сонымен
қатар бірнеше аймақта сызықты алгебра, кітапхана
мүмкіндігі, параллельді өңдеу мүмкіндіктерін
қолданып стандартты ішкі есеп көлемді дөңгелек шешуге
мүмкіндік береді. Егер осындай
ішкі есептерді бағдарламаның есептеу операциясының
үлкен бөлігі құрайды, бірақ мұндай
параллельді кітапхананы қолдану параллельді бағдарламалардың
өзіндік параллельді кодтарын жазылуынсыз алуға мүмкіндік
береді.
4.
Өзіндік параллельді бағдарламаларын
құру. Бұл өте ауқымды еңбек, бірақ
әмбебап тәсіл. Оның екі негізгі нұсқасы бар:
1) Параллельді
бағдарламалардағы параллельді конструкцияны қою.
2) Нөлден бастап параллельді
бағдарламаны құру.
Есептеу кластерінде параллельді бағдарламалар хабарламаларды жіберу моделінде жұмыс жасайды. (messagepassing). Бұл дегеніміз бағдарлама процесстер жиынынан тұрады, әрқайсысы өз процессорында жұмыс істейді және өзіндік адрестік кеңістігі болады. Хабарды жіберу және операцияны қабылдау көмегімен процесстер арасында мәліметтер алмасу жүргізіледі, сондықтан басқа процессті жадыға жіберу мүмкін емес. Процесс мәлімет алуы тиіс, ол Receive операциясын шақырады, ал процесс мәліметті алу керек, ол басқа процесстерге жібере алады, Send операциясын шақырады. Бұл модель MPI стандартты интерфейсінің көмегімен, атап айтқанда MPICH2 бағдарламалық пакет жедел әрекет етуші және MPI стандартты кеңінен қолданылады. (MPI-1 және МР1-2 екі стандартта іске асырылады) Әртүрлі MPICH2, соның ішінде тегін және коммерциялық, нақты коммуникациялық желілерде ауыстырылатын және бейімделген пакеті іске асырылады.
Ереже ретінде, MPI-бағдарламалары SPMD модельдері бойынша тұрғызылған (бір бағдарлама –көп мәліметтер), барлық процесстер үшін тек бір
ғана бағдарламаның бір коды болады, ал әртүрлі
мәліметтер әртүрлі процесстерде сақталады және
процесстің реттік нөмірінен тәуелсіз өзінің
әрекеті орындалады.
Параллельді есептеу негізінде имитациялық моделдерді
тұрғызу мәселелері немесе кластерлік жүйелерде есептеу
есептерін шешуге талпынуымыз қажет. Содан кейін ұйымдастыру
кластері өзіндік күрделі есептер екендегін білдіреді және
мұндай мүмкіндікті барлық университет ала алмайды. Сондықтан
көптеген жағдайда математик есептеуіштер бағдарламаларды
даярлау кезінде эмпирикалық бағалаумен шектеледі, таталған аспект есептің
қойылымы кезінде елеулі рөл атқармайды және жалпы
өткізіліп жіберілуі мүмкін. Кішігірім немесе сынаманы шешу кезінде
бірақ есеп өлшемдерін кездейсоқ әрекет етуге болады,
бірақ ауқымды есептеу эксперименті жоспарлау кезінде, шот
уақыты күн және апталап есептеледі, ішкі есеп өлшемі немесе сынақ
нәтижесінде
ұйымдастырудың жеке есептеу тәсілінде есеп уақыты көрінеді. Сондықтан
күрделі бағдарламаларды құруда кластерде
бағдарламаның жұмысқа жарамдылығын алдын ала
тексеруге имитациялық модель құру қажет,
қарапайым компьютерде кластерді имтациялау виртуальды машина кешенің
көмегімен орындалады.
Параллельді есептеулерді мұндай моделдерді
құруға мүмкіндік беред:
·
параллельді есептеу априорлі және апостериорлі
бағалау тиімділігін орындайды;
·
алгоритм шешімінің негізгі таңдауы,
тиімділікті мәнін жеделдетуге жету үшін параметрлерін
бөлу.
Осындай тұрғыда нақты кластерде
қашықтықтан бақылау, содан кейін параллельді бағдарлама.
Жалпы моделдеуге екі бағытты көрсетуге
болады: бұл бағыт «құралдан» және «есептен».
«Құралдан» бағытына кластер
мінездемесіне талдау бағдарламалық аппаратты жүйелер, бірнеше
операциялар жиынтығы кіреді.
«Есептен» бағыты бағдарламалы
аппараттық қамтамасыз етудің белгілі дәрежесі есептеу
есептерінің шешімі оның
негізгі есептеу процесінің көзқарасымен қарастырылады.
Өзекті параллельді есептеу және
параллельді есептеу жүйелерін модельдеу қазіргі таңда шешімін
таппаған мәселе, кластерді ұйымдастыру үшін анықталған
шығынды талап етеді. Сондықтан
ұсынылып отырған бөлек виртуальды машина және желілік
жүйелері, имитацияланатын кластер
жұмысының жиынтығын құру әдісі
ұсынылады, содан кейін нақты бір кластерде
қашықтықтан бақылау, параллельді есептеу
бағдарламаларын дайындау уақытты үнемдеуге мүмкіндік
береді және жасалатын моделдің сапасын жоғарлатады.
Қазіргі уақытта жоспарлауға имприкалық бағыт және параллельді есептеу, сынақтан өткізілген моделдерге және теориялық түрде негізін тапқан сынақ қойылымы қажет. «Құралдан» бағытында қолданылатын негізгі параметрлер көптеген жағдайларда аналитикалық қисықтарға жақындайды. Бағалаудың ықтималдылық әдісін қолдану тәуелсіз арнаулы түрін тұрғызуға талпынуға мүмкіндік береді. Қарастыруға қажетті тағы бір мәселе «есептерден» есептеу математикасының белгілі тізбектелген әдісіне сүйенеді немесе қосымша параллельді есептеу спецификациясына сәйкес өңделеді.
Әдебиеттер
1.
PARALLEL.RU:
Информационно-аналитические материалы по параллельным вычислениям /
[Электронный ресурс) / Режим доступа: www.parallel.ru/
2001-2013.
2.
Малышев
Л.В. Некоторые аспекты моделирования параллельных и кластерных вычислений
//Сибирская школа-семинар по параллельным вычислениям /Под рсд. проф.
А.В.Старчснко. - Томск: Изд-во Том. ун-та. 2002. - 129