
- •Лабораторна робота № 1
- •1. Теоретичні відомості
- •1.1 Simd- і mimd- системи як апаратна основа паралельних середовищ
- •Загальні процедури mpi
- •1.3 Засоби для відлагодження мрі програм, аналізу їх виконання
- •1.4 Засоби перегляду логфайлів
- •1.5 Структура апаратних та системних програмних засобів
- •2. Хід роботи
- •4. Контрольні питання
- •5. Список літератури
- •Додаток 1. Управління файлами у linux
- •Переглядачі: more, less, most
- •Простий вивід: cat, echo
- •Створення файлів і каталогів: touch, mkdir
- •Копіювання і зміна назви.
- •Усунення: rm, rmdir
- •Жорсткі і символічні посилання: ln
- •Додаток 2. Контроль над процесами
- •Фонові процеси
- •Пріоритетні процеси
- •Додаток 3. Приклад програми пересилки повідомлень між паралельними процесами
- •Додаток 4. Програма, що виводить кількість паралельних процесів та їх номери
- •Додаток 5. Приклад розпаралелення ітераційного процесу
4. Контрольні питання
Що таке МРІ?
Для чого призначена бібліотека МРІ?
Перерахувати типи ЕОМ за Флінном.
Що таке SISD комп’ютер?
Охарактеризуйте векторні й матричні ЕОМ.
Для яких мов програмування реалізована бібліотека МРІ?
Охарактеризуйте MIMD та MISD ЕОМ.
Що таке бібліотека МРЕ і для чого вона призначена?
Перерахуйте категорії МРЕ процедур?
Що забезпечують процедури Паралельної графіки?
Які особливості процедур реєстрації (Logging)?
Назвіть три профілюючі бібліотеки МРЕ.
Які існують формати логфайлів?
Як можна проаналізувати логфайл?
Для чого призначена програма states?
Які Ви знаєте програми для графічного подання інформації профілювання?
Яке призначення команди top?
Які Ви знаєте програми для віддаленого доступу до Linux-систем?
Наведіть приклад компілювання МРІ програм.
Наведіть приклад запуску на виконання МРІ програм.
Які ключі компілювання вказують на використання бібліотек МРЕ?
5. Список літератури
Камерон Хьюз, Трейси Хьюз. Параллельное и распределенное программирование с использованием С++. : Пер. с англ. – М. : Издательский дом "Вильямс", 2004. – 627 с.
Эндрюс Г.Р. Основы многопоточного, параллельного и распределенного программирования. : Пер. с англ. – М.: Издательский дом "Вильямс", 2003. – 512 с.
Воеводин В.В. Воеводин Вл.В. Параллельные вычисления. СПб.: БХВ-Петербург, 2002. – 608 с.
А. А. Букатов, В. Н. Дацюк, А. И. Жегуло. Программирование многопроцессорных вычислительных систем. Ростов-на-Дону. Издательство ООО «ЦВВР», 2003, 208 с.
Джин Бэкон, Тим Харрис. Операционные системы. Параллельные и распределенные системы. – Питер: Издательская группа BHV, 2004. – 800 с.
www.mpi-forum.org
www.parallel.ru
Додаток 1. Управління файлами у linux
Навігація: ls, cd, pwd
ls
Команда ls(1) перечислює файли у певній директорії. Якщо ви більш знайомі із DOS командною лінією, то ls дещо подібна до dir команди. Сама по собі, без аргументів, ls перечислить файли у поточній директорії. Щоб побачити що знаходиться у вашому кореневому каталозі (/), наприклад, ви можете використати ці команди:
$ cd /
$ ls
bin cdr dev home lost+found proc sbin tmp var
boot cdrom etc lib mnt root suncd usr vmlinuz
Проблема з таким виводом може полягати у тому що у ньому важко відрізнити звичайні файли від каталогів. Деякі користувачі надають перевагу вживанню команди із опціями що допомагають ідентифікувати тип файла, наприклад:
$ ls -FC
bin/ cdr/ dev/ home/ lost+found/ proc/ sbin/ tmp/ var/
boot/ cdrom/ etc/ lib/ mnt/ root/ suncd/ usr/ vmlinuz
Завдяки -FC опції, у виводі каталоги отримують слеш на кінці нзазви, виконуючі файли - зірочку.
Дуже популярною опцією являється також --color, або --color=auto. Ця опція дозволяє отримати кольоровий вивід. Так назви каталогів будуть синього кольору, виконуючі файли - зеленого, символічні посилання - світло-блакитного, тощо.
Ви можете закріпити за ls командою --color опцію, якщо створите відповідний синонім у .bashrc файлі у домашньому каталозі, ви просто повинні добавити alias ls="ls --color=auto" до ~/.bashrc.
Ми можемо також перечислити що знаходяться у відмінній від поточної директорії. Для цього аргументом ls повинен бути каталог який нас цікавить. Так, ми можемо перечислити що знаходиться у /boot каталозі виконавши
$ ls /boot
ls також може вивести додаткові інформацію про файли, таку як дата створення, власник і права доступу, для цього слід добавти -l (long) іпцію:
$ ls -l /
drwxr-xr-x 2 root bin 4096 May 7 09:11 bin/
drwxr-xr-x 2 root root 4096 Feb 24 03:55 boot/
drwxr-xr-x 2 root root 4096 Feb 18 01:10 cdr/
drwxr-xr-x 14 root root 6144 Oct 23 18:37 cdrom/
drwxr-xr-x 4 root root 28672 Mar 5 18:01 dev/
drwxr-xr-x 10 root root 4096 Mar 8 03:32 etc/
drwxr-xr-x 8 root root 4096 Mar 8 03:31 home/
drwxr-xr-x 3 root root 4096 Jan 23 21:29 lib/
drwxr-xr-x 2 root root 16384 Nov 1 08:53 lost+found/
drwxr-xr-x 2 root root 4096 Oct 6 12:47 mnt/
dr-xr-xr-x 62 root root 0 Mar 4 15:32 proc/
drwxr-x--x 12 root root 4096 Feb 26 02:06 root/
drwxr-xr-x 2 root bin 4096 Feb 17 02:02 sbin/
drwxr-xr-x 5 root root 2048 Oct 25 10:51 suncd/
drwxrwxrwt 4 root root 487424 Mar 7 20:42 tmp/
drwxr-xr-x 21 root root 4096 Aug 24 03:04 usr/
drwxr-xr-x 18 root root 4096 Mar 8 03:32 var/
Щоб побачити також приховані файли і каталоги (ті чия назва починається з крапки), використайте -a (all) прапорець (~, тильда є скороченням для домашнього каталогу):
$ ls -a ~
.Xauthority .bash_profile .mc .vimrc
.Xdefaults .bashrc .mozilla docs
.bash_history .inputrc .viminfo www
Крім вище вказаних опцій також уснують багато інших. Обов'язково передивіться сторінку посібника man для ls.
cd
cd(1) команда використовується щоб поміняти директорію у якій ви знаходитесь. Просто введіть cd із шляхом до каталогу у який ви хочете перейти:
darkstar:~$ cd /bin
darkstar:/bin$ cd usr
bash: cd: usr: No such file or directory
darkstar:/bin$ cd /usr
darkstar:/usr$ ls
bin
darkstar:/usr$ cd bin
darkstar:/usr/bin$
Зауважте що якщо назва шляху не починається з слешу, cd перенесе нас у підкаталог поточного каталогу із такою назвою, тобто якщо ми вже знаходимся у /usr і ми вказали cd команді bin каталог, то ми опинимось у /usr/bin. Це демонструє важливий концепт абсолютних шляхів і відносних шляхів. Назви шляхів що починаються зі слешу, тобто вказується повний шлях, починаючи з кореневого каталогу, називаються абсолютним шляхом. У відносних шляхах, в свою чергу, вказується шлях до файла по відношенню до поточного каталогу. До відносних шляхів ми також можемо долучити дві крапки (..), що означає "одним каталогом вище поточного". Так, якщо ми знаходимось у /usr/bin, то cd .. перенесе нас у /usr.
cd команда без жодних аргументів перенесе нас у наш домашній каталог.
cd команда відрізняється від багатьох інших команд тим що вона є вбудованою командою оболонки. Вбудовані оболонкові команди розглянуті у Розділі 8.3.1. Це, можливо, не є важливим у даний момент для вас, все що вас повинно цікавити, це те що cd описане у man 1 bash і отримати допомогу по цій команді можна завдяки
$ help cd
pwd
Команда pwd(1) (print working directory) використовується для того щоб показати ваше поточне місцезнаходження. Просто введіть pwd на командній лінії:
$ cd /bin
$ pwd
/bin
$ cd /usr
$ cd bin
$ pwd
/usr/bin