Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Mpirun -np 2 cpilog




 

Результатом виконання програми є розраховане число Пі, та приблизна помилка розрахунку. А також логфайл cpilog.clog роботи програми.

 

 

 

2.10 Під час виконання попередньої програми, було розраховане число Піі був створений логфайл cpilog.clog роботи програми. Нам необхідно скопіювати цей логфайл на робочу машину. Для цього можна увійти на віддалений комп’ютер за допомогою засобів Windows по протоколу FTP.

 

 

Або скористатися програмою Winscp для копіювання файлів. Програма Winscp має зручний інтерфейс файлового менеджера і можливість збереження сесій користувача.

 

 

Увійдіть на віддалений комп’ютер і скопіюйте файл cpilog.clog у каталог С:\temp

 

2.11 Увійдіть в каталог C:\Temp\slog2rte-1.2.2\lib на локальному комп’ютері і запустіть програму jumpshot_launcher.jar. Дана програма запустить на виконання засіб перегляду логфайлів Jumpshot-4. Даний засіб використовує бібліотеки java (j2sdk) для графічного відображення інформації з лофайлів, тому може працювати на різних платформах.

 

 

На запит конвертування файлу у формат slog2 натисніть кнопку Convertі по закінченні конвертування Return

 

 

На екрані буде графічно відображено процес виконання та взаємодії паралельних процесів. За допомогою бігунків можна змінювати параметри відображення.

 

На рисунку нижче подано вікно легенди кольорів, тобто їх значень.

 

 

 

2.12 Підготуйте звіт та контрольні запитання. Здайте звіт викладачу

 


3. ЗМІСТ ЗВІТУ

3.1 Тема, мета лабораторної роботи

3.2 Короткі теоретичні відомості

3.3 Опис виконання лабораторної роботи згідно пунктів 2.2-2.12

3.4 Відповідь на одне контрольне запитання згідно номера варіанту

(порядковий номер у списку журналу групи)

3.5 Висновки

4. КОНТРОЛЬНІ ПИТАННЯ

 

4.1 Що таке МРІ?

4.2 Для чого призначена бібліотека МРІ?

4.3 Перерахувати типи ЕОМ за Флінном.

4.4 Що таке SISD комп’ютер?

4.5 Охарактеризуйте векторні й матричні ЕОМ.

4.6 Для яких мов програмування реалізована бібліотека МРІ?

4.7 Охарактеризуйте MIMD та MISD ЕОМ.

4.8 Що таке бібліотека МРЕ і для чого вона призначена?

4.9 Перерахуйте категорії МРЕ процедур?

4.10 Що забезпечують процедури Паралельної графіки?

4.11 Які особливості процедур реєстрації (Logging)?

4.12 Назвіть три профілюючі бібліотеки МРЕ.

4.13 Які існують формати логфайлів?

4.14 Як можна проаналізувати логфайл?

4.15 Для чого призначена програма states?

4.16 Які Ви знаєте програми для графічного подання інформації профілювання?

4.17 Яке призначення команди top?

4.18 Які Ви знаєте програми для віддаленого доступу до Linux-систем?

4.19 Наведіть приклад компілювання МРІ програм.

4.20 Наведіть приклад запуску на виконання МРІ програм.

4.21 Які ключі компілювання вказують на використання бібліотек МРЕ?

 

 

5. СПИСОК ЛІТЕРАТУРИ

 

5.1 Камерон Хьюз, Трейси Хьюз. Параллельное и распределенное программирование с использованием С++. : Пер. с англ. – М. : Издательский дом "Вильямс", 2004. – 627 с.

5.2 Эндрюс Г.Р. Основы многопоточного, параллельного и распределенного программирования. : Пер. с англ. – М.: Издательский дом "Вильямс", 2003. – 512 с.

5.3 Воеводин В.В. Воеводин Вл.В. Параллельные вычисления. СПб.: БХВ-Петербург, 2002. – 608 с.

5.4 А. А. Букатов, В. Н. Дацюк, А. И. Жегуло. Программирование многопроцессорных вычислительных систем. Ростов-на-Дону. Издательство ООО «ЦВВР», 2003, 208 с.

5.5 Джин Бэкон, Тим Харрис. Операционные системы. Параллельные и распределенные системы. – Питер: Издательская группа BHV, 2004. – 800 с.

5.6 www.mpi-forum.org

5.7 www.parallel.ru

 

 


ДОДАТОК 1. Управління файлами у linux

 

Навігація: ls, cd, pwd

Ls

Команда ls(1) перечислює файли у певній директорії. Якщо ви більш знайомі із DOS командною лінією, то ls дещо подібна до dir команди. Сама по собі, без аргументів, ls перечислить файли у поточній директорії. Щоб побачити що знаходиться у вашому кореневому каталозі (/), наприклад, ви можете використати ці команди:

$ cd /$ lsbin cdr dev home lost+found proc sbin tmp varboot cdrom etc lib mnt root suncd usr vmlinuz

Проблема з таким виводом може полягати у тому що у ньому важко відрізнити звичайні файли від каталогів. Деякі користувачі надають перевагу вживанню команди із опціями що допомагають ідентифікувати тип файла, наприклад:

$ ls -FCbin/ 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 файлі у домашньому каталозі, ви просто повинні добавити aliasls="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 /bindarkstar:/bin$ cd usrbash: cd: usr: No such file or directorydarkstar:/bin$ cd /usrdarkstar:/usr$ lsbindarkstar:/usr$ cd bindarkstar:/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

 

Переглядачі: more, less, most

More

Програма more(1), це текстовий переглядач (пейджер). Вона вживається часто коли текст файла (або вивід команди) не вміщається на екрані тож ми повинні переглядати його по частинах. more розбиває вивід на окремі частини і очікує притиску важіля пробілу перед тим як відобразити наступну сторінку тексту. Притиск Enter клавіші перемістить вивід на одну лінію. Команда візьме як аргумент назви файлів які ви хочете переглянути:

$ more /etc/X11/xorg.conf

Також more часто вживається у конвеєрі (введення до конвеєрів ви знайдете у Розділі 8.2.3), наприклад:

$ ls /usr/bin | more

Як і в більшості переглядачах, ви можете здійснювати пошук по тексту. Для цього під час роботи програми, введіть слеш за яким слідує текстовий рядок який вас цікавить. more перенесе вас до першого ж місця у тексті де цей рядок присутній.

Як тільки more дійшла до кінця тексту, вона припиняє свою роботу. Прочитайте обов'язково сторінку посібника more(1) для додаткових опцій і ключів навігації. Під час роботи програми h клавіша (help) викличе сторінку допомоги, q клавіша (quit) припинить роботу переглядача.

Less

Хоча more є досить зручною програмою, вона має один невеликий недолік - ви не можете прокрутити текст назад. Саме тому, напевне, більше вживають less(1). less дуже подібнa на попередню програму, ви так само викликаєте less і можете вживати її в конвеєрі:

$ less /var/log/messages$ dmesg | less

Пошук по тексту так само працює з less. Сторінку допомоги ви теж отримаєте з допомогою h клавіші. Ключі навігації описані у lesskey(1) сторінці посібника. q ключ завершує роботу переглядача.

View

На додаток до вищезгаданих програм перегляду тексту варто згадати view(1) переглядач, який є частиною vi(1) редактора. Це фактично vi, запущений у режимі тільки для читання. view зручний тим що надає стандартну для vi підсвітку синтаксису, що допомагає у перегляді різноманітного коду. Також view успадковує розвинутий пошук по тексту, характерний для vi. Для припинення огляду, введіть :q команду.

Простий вивід: cat, echo

Cat

cat(1) (скорочення від concatenate) спершу була задумана як програма що поєднує декілька файлів у один, але може використовуватись і для інших цілей.

Для того щоб поєднати декілька файлів у один більший, перечисліть необхідні файли після cat команди, після чого перенаправте вивід у інший файл (перенаправлення описане у Розділі 8.2.3):

$ cat file1 file2 file3 > bigfile

Простіший способів використання cat, це для відображення змісту файла на стандартному виводі. Для цього просто введіть:

$ cat file1

Ви також можете вживати cat у поєднанні з переглядачами, такими як more або less, якщо пропустите вивід cat команди через конвеєр (хоча простіше просто виконати more file1):

$ cat file1 | more

Інший поширений спосіб використання cat - для копіювання файлів (навіть бінарних):

$ cat /bin/bash > ~/mybash

Останнє скопіює bash програму у ваш домашній каталог, назвавши її mybash.

Також типовим використанням є долучення змісту одного файлу до іншого за домомогою подвійного оператора перенаправлення ">>":

$ cat file1 >> file2

В останньому випадку, file2 збереже свій зміст, до нього лише буде додано те що знаходиться у file1.

Універсальність cat робить її однією з найчастіше вживаних команд. Завдяки тому що cat широко використовує стандартний ввід і стандартний вивід, вона ідеальна для оболонкових скриптів і як частина інших, складніших команд.

Echo

echo(1) команда виводить наданий їй як аргумент рядок тексту на екран.

$ echo Hello there...

За замовчуванням echo виведе рядок і добавить нову лінію у кінці. Ви можете запобігти цьому якщо добавите -n прапорець до echo. Опція -e заставить echo брати до уваги любі екрановані знаки такі як \t (таб), \a (дзвоник), \e (знак екранації), тощо. Дуже радимо прочитати echo(1) і bash(1) сторінки посібника man для додаткової інформації.

Створення файлів і каталогів: touch, mkdir

Touch

touch(1) використовується для зміни часу доступу або часу модифікації файла. Це у випадку якщо файл вже існує, якщо вказаного файла немає, тоді touch команда створить його. Отже, щоб створити новий порожній файл, виконайте:

$ touch file1

Існує декілька опцій touch, включаючи опції щодо який саме час змінити, модифікації (-m) чи доступу (-a), який саме час вказати (-t 200509170923) (рік, місяць, дата, година), тощо. Ви знайдете деталі у touch(1) сторінці посібника.

Mkdir

mkdir(1) команда створить новий каталог. Ви просто повинні вказати ім'я каталогу або каталогів які ви хочете створити. Наприклад, щоб створити новий каталог або каталоги у поточній директорії, виконайте:

$ mkdir documents$ mkdir charts images

Ви також можете вказати шлях до каталогу який ви хочете створити, приміром

$ mkdir /tmp/temporary

mkdir команда не має багато опцій. Важливими є -m, опція що вказуватиме права доступу до каталогу, і -p опція що дозволяє створювати директорії рекурсивно (розміщені одна в одній):

$ mkdir -m 700 noshare$ mkdir -p www/images/banners

Перша команда створить каталог noshare із правами на читання, запис і виконання тільки користувачем, тоді як друга утворить одночасно декілька розміщених один в одному каталогів. Якщо не надати -p (parent) прапорець в останній команді, це призведе до помилки, якщо ні www ні images порередньо не існували.

Копіювання і зміна назви.

Cp

cp(1) команда копіює файли і каталоги якщо надано -r або (краще) -R (recursively) прапорець. Наприклад:

$ cp processes.txt /tmp$ cp -r charts /tmp

Багато користувачів віддають перевагу збереженню значення часу створення або модифікації а також прав виконання з допомогою -a (всерівно що -dpR) або -p опції:

$ cp -a file1 /tmp$ cp -pR noshare /tmp$ ls -ld /tmp/file1 /tmp/noshare

cp має ще декілька опцій. Радимо вам прочитати сторінку посібника для cp(1).

Mv

mv(1) команда переносить файл з одного місця у інше. mv також дуже часто використовується для зміни назви файла. Власне, це єдина команда яка дозволяє це здійснити у один крок.

$ mv file1 /tmp/fileX$ mv /tmp/fileX /tmp/fileY

Якщо ви заглянете у сторінку посібника для mv(1), ви знайдете декілька додаткових опцій цієї команди. На практиці, мало хто їх використовує.

Усунення: rm, rmdir

Rm

Команда rm(1) видаляє файли і директорії. До цієї команди портібно ставитись обережно, оскільки у Лінуксі не існує легкого засобу відтворення видаленого файлу, тобто те що видалено буде втрачено незворотньо. Звичайно, ви можете видалити лише ті файли на які ви маєте права запису.

Щоб видалити один або більше файлів, ви просто перечисляєте їхні назви за rm командою:

$ rm file2 /tmp/fileY

Якщо ви не маєте прав на запис, ви отримаєте "Permission denied" помилку. Це запобігає видаленню звичайними користувачами важливих системних файлів, наприклад. Серед різноманітних опцій rm команди, варто звернути увагу на -f (force) яка запобігає підтвердження наміру видалення і звісток про помилки у випадку невдачі, також -r або -R (recursively), що дозволяє рекурсивно видаляти ієрархії директорії:

$ rm -Rf /tmp/noshare

rm це доволі потужна команда, особливо якщо вона використовується root користувачем. Так, щоб видалити всю кореневу ієрархію, необхідно лише видати rm -Rf / (звичайно ми не радимо робити цього). Також будьте особливо уважними у вживанні rm із шаблонами. Якщо не впевнені, завжди краще вживати rm із -i (interactive) прапорцем, що вимагатиме підтвердження (y або n) вашого наміру видалити кожний файл.

Rmdir

rmdir(1) як ви можливо здогадуєтесь, видаляє каталоги з файлової системи. Каталог обов'язково повинен бути пустим перед тим як його можна буде видалити за допомогою rmdir(1). Синтаксис команди досить простий - сама команда, за якою слідує один або більше каталогів що належать усуненню:

$ rmdir /tmp/charts

Якщо charts не є порожнім, ви отримаєте помилку "rmdir: `charts': Directory not empty". В такому випадку варто або випорожнити charts каталог перед усуненням, або вжити -p прапорець (або скористатися з уже відомої нам rm -Rf):

$ rmdir -p /tmp/charts

Остання команда може бути вжита лише звичайним користувачем, оскільки вона по ідеї повинна видалити всі каталоги із /tmp включно, але оскільки звичайні користувачі не мають права видалити /tmp, цей каталог буде збережено. У випадку root користувача, /tmp теж буде усунено (що небажано).

Жорсткі і символічні посилання: ln

Посилання, це просто вказівники на інший файл. Вказівник і файл на який він вказує можуть знаходитись у різних каталогах файлової системи. Існує два типи посилань - жорсткі посилання і символічні посилання. Програма ln(1) бере на себе завдання по створенню посилань.

Жорсткі посилання, це просто інша назва для того самого файла (один файл може мати різні назви). Жорсткі посилання можуть знаходитись лише у межах однієї файлової системи і бути видаленими лише коли остання назва файла видалена з системи. Ось приклад створення жорсткого посилання, мається на увазі що file1 вже існує і fileH буде жорстким посиланням до першого. Ми використовуємо ln без жодних прапорців у цьому випадку:

$ ln file1 fileH

Жорсткі посилання бувають корисними у деяких випадках, але більшість користувачів, напевне, нададуть перевагу універсальнішим символічним посиланням.

Символічні посилання можуть вказувати на файл по-за файлвої системи, навіть на вже неіснуючий файл. Це власне, невеличкий файл що утримує необхідну інформацію. Ви можете додавати і усувати символічі посилання без впливу на справжній файл. Оскільки символічні посилання, це лише файл із власною інформацією, він може вказувати також на каталоги. Це, власне, дуже поширене, мати /var/tmp як символічне посилання на /tmp каталог.

Щоб сворити символічне посилання, додайте -s до ln команди:

$ ln -s file1 fileS$ ls -l fileSlrwxrwxrwx 1 nabis users 5 Sep 20 23:16 fileS -> file1


Як бачите, в обох випадках, жорсткого і символічного посилань, першим аргументом ln стоїть справжній файл (file1), а потім йде назва файла-посилання що буде створено (fileH та fileS).


Поделиться:

Дата добавления: 2015-09-13; просмотров: 60; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты