Дослідження ефективності паралельного сортування на багатоядерному комп'ютері

Розробка оптимізації алгоритму n-потокового злиття для використання в паралельному внутрішньому сортуванні на багатоядерній архітектурі на підставі його вивчення і аналізу стану. Інформаційне забезпечення проектованої системи; схеми інформаційних потоків.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык украинский
Дата добавления 12.09.2012
Размер файла 3,6 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

ЗМІСТ

  • Вступ
  • Розділ 1. Аналіз актуальності розв'язуваної задачі й огляд наявних результатів. Постановка задачі досліджень та проектування
  • Розділ 2. Проектні і технічні рішення та документація

Розділ 3. Опис роботи програми

Розділ 4. Охорона праці

  • Висновки

ВСТУП

Актуальність проблеми

Програмування стає все складніше, особливо якщо ви працюєте в області, де від вас потрібно налаштування програми на максимально можливу швидкодію. Один з визначальних чинників полягає в тому, що кілька років тому відбулися зміни в еволюційному розвитку ПК. Обчислювальна потужність ПК тепер підвищується не за рахунок постійного збільшення тактової частоти процесорів, а шляхом розподілу ресурсів між декількома ядрами. Це добре, тому що стало можливим порівняно недорого значно нарощувати приховані обчислювальні потужності, і часто при цьому досягається набагато менше енергоспоживання, а отже, і знижуються вимоги до охолодження.

Але в широкому поширенні багатоядерних систем є і зворотний бік. Щоб задіяти декілька процесорів, потрібно глибоко зануритися у світ паралельної обробки. Для використання цієї прихованої обчислювальної потужності потрібно докласти набагато більше зусиль (а іноді навіть перенавчити) програмістів. Можна, звичайно, включити у ваш проект кілька підказок компілятору, і він створить за вас певний багатопотоковий код. Однак, щоб в повній мірі використовувати потужність багатоядерних систем, вам доведеться змінити своїй стиль програмування.

Існує багато способів розподілити роботу між декількома ядрами. Один з найпростіших і найнадійніших називається програмуванням на основі задач (task-based programming). Задачі дозволяють розподіляти роботу вашої програми між деякими або всіма доступними ядрами процесора. Вміле програмування дає можливість звести до мінімуму або зовсім виключити будь-які обмеження, пов'язані із залежністю від даних або синхронізацією за часом.

Таким чином, нові багатопотокові технології програмування дуже актуальні в наш час і потребують більшої уваги для подальшої розробки та вдосконалення. Однією з найбільш важливих задач для багатопотокового програмування є задача сортування. Під сортуванням зазвичай розуміють перестановку елементів будь-якої послідовності в певному порядку. Ця задача є однією з найважливіших тому, що її метою є полегшення подальшої обробки даних і, в першу чергу, завдання пошуку.

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

Задача сортування в програмуванні не вирішена повністю. Адже, хоча й існує велика кількість алгоритмів сортування, все ж метою програмування є не тільки розробка алгоритмів сортування елементів, але й розробка саме ефективних алгоритмів сортування. Ми знаємо, що одну і ту ж задачу можна вирішити за допомогою різних алгоритмів, і кожен раз зміна алгоритму приводить до нових, більш або менш ефективних рішень задачі. Основними вимогами до ефективності алгоритмів сортування є, перш за все, ефективність за часом та економне використання пам'яті. Згідно з цими вимогами, прості алгоритми сортування (такі, як сортування вибором і сортування включенням) не є дуже ефективними.

Алгоритм сортування обмінами використовує лише цикли з параметром і в тілі циклів параметри примусово не змінюються) і не використовує допоміжної пам'яті, але займає багато часу. Навіть, якщо внутрішній цикл не містить жодної перестановки, то дії будуть повторюватися до тих пір, поки не завершиться зовнішній цикл.

Алгоритм сортування вибором більш ефективний за критерієм М(n), тобто за кількістю пересилань, але також є не дуже ефективним. З цих причин було розроблено деякі нові алгоритми сортування, що отримали назву швидких алгоритмів сортування. Це такі алгоритми, як сортування деревом, пірамідальне сортування, швидке сортування і метод n-потокового злиття.

РОЗДІЛ 1. АНАЛІЗ АКТУАЛЬНОСТІ РОЗВ'ЯЗУВАНОЇ ЗАДАЧІ Й ОГЛЯД НАЯВНИХ РЕЗУЛЬТАТІВ. ПОСТАНОВКА ЗАДАЧІ ДОСЛІДЖЕНЬ ТА ПРОЕКТУВАННЯ

Огляд і аналіз існуючих методів і засобів вирішення задач дипломного проекту

Обґрунтування мети рішення поставленої проблеми і критеріїв ефективності

Мета дослідження. Розробка оптимізації алгоритму n-потокового злиття для використання в паралельному внутрішньому сортуванні на багатоядерній архітектурі на підставі його вивчення та аналізу стану.

- C # створювався одночасно з каркасом Framework. Net і повною мірою враховує всі його можливості - як FCL(Framework Class Library), так і CLR (Common Language Runtime);

- C # є повністю об'єктно-орієнтованою мовою, де навіть типи, які вбудовані в мову, представлені класами;

- C # є потужною об'єктною мовою з можливостями наслідування і універсалізації;

- C # є спадкоємцем мов C / C + +, зберігаючи кращі риси цих популярних мов програмування. Спільний з цими мовами синтаксис, знайомі оператори мови полегшують перехід від С + + до C #;

- зберігши основні риси свого попередника, мова стала простіше і надійніше. Простота і надійність, головним чином, пов'язані з тим, що на C # хоча і допускаються, але не заохочуються такі небезпечні властивості С + + як покажчики, адресація, адресна арифметика та інші;

- завдяки каркасу Framework. Net, програмісти C # отримують ті ж переваги роботи з віртуальною машиною, що і програмісти Java. Ефективність коду навіть підвищується, оскільки виконавча середа CLR являє собою компілятор проміжної мови, в той час як віртуальна Java-машина є інтерпретатором байт-коду;

- C # інтенсивно використовує бібліотеку класів .NET Framework. З її допомогою можна вирішувати завдання доступу до системи і управління рядками, створювати елементи управління інтерфейсу користувача Windows Forms і ASP.NET;

- Для роботи з багатопоточністью - середовище. NET надає нам цілий простір імен System.Threading. Саме це і є головною причиною вибору мови C# для реалізації завдань дипломної роботи.

Постановка задачі. Технічне завдання на розробку

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

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

Для виконання завдань дипломної роботи використовувались наступні методи дослідження:

Натурні випробування - програмна реалізація алгоритму і вимірювання часових характеристик.

Імітація - програмна реалізація окремих компонентів зовнішнього сортування, включаючи імітацію використання спеціальних технічних засобів. Наприклад, попереднє розбиття файлу на частини і розподіл частин по процесорам. Таким чином, можна промоделювати одночасний доступ до одних і тих самих даних.

Моделювання - побудова обчислювальних моделей на основі аналітичних оцінок і статистичної обробки результатів вимірювання часових характеристик окремих компонентів зовнішнього сортування.

Основні поняття

Алгоритм сортування - це алгоритм, що розв'язує задачу сортування, тобто здійснює впорядкування лінійного списку (масиву) елементів. У випадку, коли елемент списку має кілька полів, поле, що служить критерієм порядку, називається ключем сортування. На практиці, в якості ключа часто виступає число, а в інших полях зберігаються будь-які дані, що ніяк не впливають на роботу алгоритму.

Оцінка алгоритму сортування - Алгоритми сортування оцінюються по швидкості (часу) виконання та ефективності використання пам'яті.

Пам'ять - фізичний пристрій або середовище для зберігання даних протягом певного часу. Ряд алгоритмів вимагає виділення додаткової пам'яті під тимчасове зберігання даних.

Час - основний параметр, що характеризує швидкодію алгоритму.

Називається також обчислювальною складністю. Для впорядкування важлива найгірша, середня і краща поведінка алгоритму в межах списку (n).

Для типового алгоритму:

- хороша поведінка - O(n log(n))

- погана поведінка -- O(n2).

- ідеальна поведінка -- O(n).

Алгоритми сортування, що використовують тільки абстрактну операцію порівняння ключів потребують щонайменше в O(n log(n)) порівнянь в середньому.

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

Зовнішнє сортування - оперує з запам'ятовуючими пристроями великого об'єму, але з доступом не довільним, а послідовним (упорядкування файлів), тобто в даний момент ми "бачимо" тільки один елемент, а витрати на перемотування в порівнянні з пам'яттю невиправдано великі.

РОЗДІЛ 2. ПРОЕКТНІ І ТЕХНІЧНІ РІШЕННЯ ТА ДОКУМЕНТАЦІЯ

Інформаційне забезпечення проектованої системи

Виходячи з поставленого завдання та проаналізувавши можливі варіанти програмної реалізвції алгоритму паралельного сортування, мною було використане наступне інформаційне та програмне забезпечення:

C# -- об'єктно-орієнтована мова програмування. Розроблена в 1998-2001 роках Андерсом Гейлсбергом, Скотом Вілтамутом та Пітером Гольде компанією Microsoft для платформи .NET Framework і згодом була стандартизована як ECMA-334 і ISO / IEC 23270.

C# є дуже близьким родичем мови програмування Java. Вона успадкувала від Java концепції віртуальної машини (середовище .NET), байт-коду (MSIL) і більшої безпеки вихідного коду програм, плюс врахувала досвід використання програм на Java.

Нововведенням C# стала можливість легшої взаємодії, порівняно з мовами-попередниками, з кодом програм, написаних на інших мовах, що є важливим при створенні великих проектів. Якщо програми на різних мовах виконуються на платформі .NET, платформа бере на себе клопіт щодо сумісності програм (тобто типів даних, за кінцевим рахунком).

Станом на сьогодні C# визначено флагманською мовою корпорації Microsoft, оскільки вона найповніше використовує нові можливості .NET. Решта мов програмування, хоч і підтримуються, але визнані такими, що мають спадкові прогалини щодо використання .NET.

Visual Studio 2008 - програмний продукт компанії Майкрософт, що включає інтегроване середовище розробки програмного забезпечення та ряд інших інструментальних засобів, таких як редактор вихідного коду з підтримкою технології IntelliSense і можливістю найпростішого рефакторинга коду. Вбудований відладчик може працювати як на рівні машинного коду, так і на машинному рівні. Решта вбудовуваних інструментів включають в себе редактор форм для спрощення створення графічного інтерфейсу програми, веб-редактор, дизайнер класів і дизайнер схеми бази даних.

BPWin - програмний продукт в області реалізації засобів CASE-технологій. Дозволяє проводити опис, аналіз та моделювання моделі даних - будувати мета-моделі даних. Займає одне з провідних місць в своєму сегменті ринку. В даний час випускається компанією Computer Associates. Включає три стандартні методології: IDEF0 (функціональне моделювання), DFD (моделювання потоків даних) і IDEF3 (моделювання потоків робіт). Ці методології по-своєму унікальні. Кожна з них може бути виконана окремо за допомогою BPwin, але їх сукупність укладена в модель дає аналітику повну картину предметної області клієнта.

Microsoft Office Excel -- стандартна програма для роботи з елеронними таблицями з пакету MS Office. В ході роботи використовувалась для побудови обчислювальної моделі, розрахунку формул оцінки витрат часу для виконання операції сортування, перевірки правильності виконання сортування.

Для зображення діаграм прецедентів, послідовності та діаграми класів було використано мову графічного опису для об'єктного моделювання в сфері розробки програмного забезпечення - UML.

UML - моделювання - досить важливий етап в проектуванні програми, що зображає сучасні тенденції в тій предметній галузі, яка досліджується в даному дипломному проекті, а саме в сфері IT- технологій, що з ним пов'язаний.

Діаграма в UML - це графічне представлення набору елементів, що замальовується найчастіше у вигляді зв'язаного графа з вершинами і ребрами. Діаграми малюють для візуалізації. Основна мета діаграм - візуалізація системи, що розробляється, з різних точок зору. Діаграма - в найзагальнішому сенсі деякий зріз системи. Зазвичай, за винятком найпростіших моделей, діаграми дають згорнуте представлення елементів, з яких складається система, що розробляється.

Використання UML не обмежується моделюванням програмного забезпечення. Його також використовують для моделювання бізнес-процесів, системного проектування і відображення організаційних структур.

UML дозволяє також розробникам програмного забезпечення досягти угоди в графічних позначення для представлення загальних понять (таких як клас, компонент, узагальнення (generalization), об'єднання (aggregation) і поведінка) і більше сконцентруватися на проектуванні та архітектурі.

Схеми інформаційних потоків

Діаграма прецедентів (англ. use case diagram, діаграма варіантів використання) - діаграма, на якій відображені відносини, що існують між акторами і прецедентами.

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

При роботі з варіантами використання важливо пам'ятати декілька простих правил:

· кожен прецедент відноситься як мінімум до одного з діючих осіб;

· кожен прецедент має ініціатора;

· кожен прецедент призводить до відповідного результату.

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

Опис алгоритму

Нехай необхідно впорядкувати файл з n елементів. Доступно p процесорів.

1. Кожен i процесор читає 1 / р файлу і сортує свій фрагмент ("швидке сортування")

2. Для впорядкованого фрагмента будується індексна таблиця вибираються n / (p * p) елементи (рис. 1)

Рис. 1 Формування індексної таблиці

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

4. Індексна таблиця записується в зовнішню пам'ять.

5. Всі процесори читають «чужі» індексні таблиці об'єднують (злиття) їх, включаючи службову інформацію (№ фрагмента і № елементу).

6. Процесори обчислюють «границю» злиття, тобто визначають максимально допустимі рядки для кожного паралельного потоку злиття.

7. Процесори здійснюють вивід фрагментів, у зовнішню пам'ять розбиваючи їх на частини відповідно до отриманих «границь» злиття (рис. 2)

Рис. 2 Розбиття та злиття

8. Виконується n - потокове паралельне злиття отриманих частин фрагментів таблиці (Рис. 3)

Рис. 3 Обидва етапи разом

Размещено на http://www.allbest.ru/

Рис. 4. Приклад роботи алгоритму на масиві 3 7 8 2 4 6 1 5...

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

Основна проблема з перетворенням програми в масштабовану під кількість доступних ядер процесора полягає в тому, що ви не можете просто запустити якісь завдання у потоки на виконання. По суті, саме це і роблять багато програмістів, але такі програмні додатки нормально масштабуються тільки під ту кількість ядер, під яку вони були спроектовані.

Більш ефективний спосіб гарантувати хороше масштабування програми під варійовану кількість ядер - розбивати великі завдання на менші, більш «дружні до потоків», які називають задачами. Найважча частина полягає в перетворенні монолітної однопотокової програми або програми, у якій є декілька виділених потоків, до системи виконання роботи на основі завдань полягає в тому, щоб на розбити свої завдання на задачі.

Перетворюючи велике однопоточне завдання в багатопотокові задачі, необхідно врахувати:

- велику задачу можна довільно розбити на одну або n задач;

- задачі повинні допускати виконання в будь-якому порядку;

- задачі повинні бути незалежні одна від одної;

- задачі повинні бути співставлені з даними контексту.

Більшість реальних програм проходить через різні стадії обробки, причому початок кожної наступної стадії вимагатє завершення попередньої. Тому такі точки синхронізації часто неминучі, але при розробці системи на основі задач головна мета - гарантоване використання будь-якої кількості доступних на даний момент ядер. При правильному розбитті великих завдань на дрібні задачі зазвичай цілком можливо починати використовувати результи деяких завершених задач попередньої стадії на наступній, поки інші задачі ще виконуються.

Результати тестування програми

Аналіз продуктивності будь-якої системи є досить складний процес і обходиться недешево. Зазвичай детальний аналіз поглинає до 10% коштів, що витрачаються на всю розробку. Проведення аналізу продуктивності системи переслідує зазвичай одну з наступних цілей:

- Захисну для доказу того, що створена система дійсно працює з необхідною продуктивністю;

- Дослідницьку з метою визначення меж продуктивності працюючої системи;

- Перевірочну для впливу безпосередньо на сам процес проектування.

В останньому випадку мета аналізу полягає в прийнятті ефективних апаратних і програмних рішень при розробці проекту.

При цьому для оцінки продуктивності алгоритмічних та апаратних рішень будь-якої системи можна використовувати наступні методи: аналітичні, імітаційні та вимірювальні.

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

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

Вимірювання часу виконання мікрооперацій полягало у встановленні аналітичних залежностей часу від характеристик операндів (кількість рядків у таблиці, число атрибутів в рядку, розміру оперативної пам'яті, поточності злиття та ін.) Результати вимірювань отримані при реалізації операцій на ЕОМ Pentium Dual-Core CPU E6500 2,9 GHz 3,2 гб ОЗП ОС Windows 7 x32

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

Внутрішнє сортування

При реалізації внутрішнього сортування використовується алгоритм швидкого сортування, що не вимагає додаткової пам'яті і є одним з найбільш ефективних алгоритмів. Нехай N - число кортежів у відношенні, яке треба відсортувати. Тоді очікуване число порівнянь при реалізації даного алгоритму: N log N.

Кількість перестановок (обмінів) при алгоритмі швидкого сортування не може бути більше, ніж порівнянь. Розумне уявлення дає наближений підрахунок половини числа порівнянь.

Оскільки при сортуванні відношень ми оперуємо з рядками різної довжини (параметр KIND - довжина рядка), то при дослідженні продуктивності алгоритму коефіцієнтом в оціночній формулі слід вважати лінійну функцію від довжини рядка. Тоді аналітична формула оцінки часу виконання внутрішнього сортування:

Т = (С12*KIND)*KSTR*log (KSTR)+(С34*KIND)*KSTR,

де KSTR - число рядків в сортованому відношенні.

алгоритм злиття паралельний багатоядерний

Розділ 3. Опис роботи програми

Загальна інформація

Програма призначена для тестувння швидкості сортування, як на одноядерних так і на багатоядерних процесорах. Програма може бути використана для вирішення наступних задач:

- генерація послідовностей псевдовипадкових чисел з довільними параметрами та можливістю запису їх у файл;

- паралельне сортування згенерованих послідовностей із записом відсортованих масивів у файл;

- послідовне сортування згенерованих послідовностей із записом відсортованих масивів у файл;;

- визначення часу виконання сортування;

- читання файлів згенерованих та відсортованих масивів;

Вимоги до рівня підготовки користувача:

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

Вимоги до апаратного та програмного забезпечення:

Память

15 092 K

Windows XP/Vista/7

Файл подкачки

13 728 K

Монитор 640x480

Виртуальная память

152 284 K

Принципи роботи з програмою:

1. Запустити WindTheads.exe

2. Ввести в відповідні поля числові значення кількості потоків (kThreads), рядків (kStr), колонок (kId), розбиттів (kPartition)

3. Ввести ім'я файлу в поле File (по замовчуванню File)

4. Ввести шлях до папки temp для створення файлу в поле Path.

5. Натиснути кнопку Create для створення нового файлу з невідсоротваними елементами. Якщо операція пройде успішно пргорама створить файл (один або декілька, залежно від кількості потоків) без розширення у папці temp та виведе вихідну інформацію в текстове поле праворуч.

6. Натиснути кнопку Work для виконання паралельного швидкого сортування створеної таблиці. Програма виведе вікно- повідомлення з інформацією про файл, після натиснення “OK” виведе вікно з інформацією про час виконання операції сортування в мілесекундах. В папці temp автоматично будуть створені файли з розширенням .tmp, cat, all, out.

7. Натиснути кнопку UniSort для виконання послідовного сортування.

Програма виведе вікно-повідомлення з інформацією про файл, пілсля натиснення “ОК” ввиведе вікно з інформацією про час виконання операції сортування в мілесекундах. Таблиці відсортовані з допомогою послідовного сортування не зберігаються.

8. З допомогою кнопки «Read» існує можливість прочитати попередньо створений файл з папки temp.

9. Для завершення роботи з програмою натиснути кнопку «Выход».

У програмі використовуються такі вхідні параметри:

kThread - кількість потоків. Бажано вказувати таку кількість потоків, скільки процесорів(ядер) є доступними.

kStr - кількість строк.

kId - кількість колонок.

kPartition -- кількість частин для розбиття масиву.

Вихідні параметри:

файли без розширення -

*.tmp -

*.cat -

*.all -

*.out -

Рис. 4 Інтерфейс програми

Після заповнення всіх необхідних полів та виконання “Create” програма виведе вихідну інформацю в текстове поле справа:

OutPut:

Button Create

kId=2

kStr=25

kTheads=2

Create File=d:/temp/File01_100000I2x2P10000_25I2x2P3_1

Create File=d:/temp/File01_100000I2x2P10000_25I2x2P3_2

Close()

Вихідна інформація містить данні про кількість колонок, строк, потоків, а данні про створені файли. До назви файлів програма автоматично додає префікс, який читається наступним чином:

File01_ 100000 I 2x2 P10000_ 25I2x2P3_1

Розділ 4. Охорона праці

Вступна частина

Державна політика в галузі охорони праці визначається відповідно до Конституції України Верховною Радою України і спрямована на створення належних, безпечних і здорових умов праці, запобігання нещасним випадкам та професійним захворюванням.

Державна політика в галузі охорони праці базується на принципах:

пріоритету життя і здоров'я працівників, повної відповідальності роботодавця за створення належних, безпечних і здорових умов праці;

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

комплексного розв'язання завдань охорони праці на основі загальнодержавної, галузевих, регіональних програм з цього питання та з урахуванням інших напрямів економічної і соціальної політики, досягнень в галузі науки і техніки та охорони довкілля;

соціального захисту працівників, повного відшкодування шкоди особам, які потерпіли від нещасних випадків на виробництві та професійних захворювань;

встановлення єдиних вимог з охорони праці для всіх підприємств та суб'єктів підприємницької діяльності незалежно від форм власності та видів діяльності;

адаптації трудових процесів до можливостей працівника з урахуванням його здоров'я та психологічного стану;

використання економічних методів управління охороною праці, участі держави у фінансуванні заходів щодо охорони праці, залучення добровільних внесків та інших надходжень на ці цілі, отримання яких не суперечить законодавству;

інформування населення, проведення навчання, професійної підготовки і підвищення кваліфікації працівників з питань охорони праці;

забезпечення координації діяльності органів державної влади, установ, організацій, об'єднань громадян, що розв'язують проблеми охорони здоров'я, гігієни та безпеки праці, а також співробітництва і проведення консультацій між роботодавцями та працівниками (їх представниками), між усіма соціальними групами під час прийняття рішень з охорони праці на місцевому та державному рівнях;

використання світового досвіду організації роботи щодо поліпшення умов і підвищення безпеки праці на основі міжнародного співробітництва.

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

знаходження оптимальних співвідношень між різними факторами виробничого середовища;

впровадження норм гранично допустимих рівнів виробничих факторів, визначення ступеня шкідливості і небезпеки праці;

розробка та планування заходів щодо поліпшення умов праці;

забезпечення безпеки виконання робіт працівниками;

впровадження технічних засобів і заходів щодо боротьби з травматизмом і профзахворюваннями;

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

Охорона праці відіграє важливу роль, як суспільний чинник, оскільки, якими б вагомими не були трудові здобутки, вони не можуть компенсувати людині втраченого здоров'я, а тим більше життя -- те і інше дається лише один раз. Необхідно пам'ятати, що через нещасні випадки та аварії гинуть на виробництві не просто робітники та службовці, на підготовку яких держава витратила значні кошти, а перш за все люди -- годувальники сімей, батьки та матері дітей.

Окрім соціального, охорона праці має, безперечно, важливе економічне значення -- це і висока продуктивність праці, зниження витрат на оплату лікарняних, компенсацій за важкі та шкідливі умови праці тощо. За розрахунками Німецької ради підприємців наслідки нещасних випадків коштують у 10 разів дорожче, ніж вартість заходів щодо к попередження. В Україні, враховуючи мізерні витрати на заходи з охорони праці, ця різниця ще більша. Фахівці Міжнародної організації праці (МОП) підрахували, що економічні витрати, пов'язані з нещасними випадками, складають 1% світового валового національного продукту. На ці кошти, орієнтовно, можна забезпечити харчування протягом року близько 75 млн. людей.

Аналіз особливостей охорони праці на робочому місці програміста (системного адміністратора, аналітика комп'ютерних систем тощо)

Вибір робочого місця та трудового процесу

Приміщення знаходиться в панельному будинку. Вібрації і шкідливі речовини відсутні. Підлога у приміщенні - паркет, стіни та стеля - звичайна штукатурка.

Геометричні розміри приміщення:

довжина а = 11 м;

ширина b = 6 м;

висота h = 3,5 м;

Кількість осіб, що працюють у приміщенні, - 8 чоловік.

Визначимо значення площі і обсягу приміщення:

S1 = a Ч b = 11 Ч 6 = 66 м2 - площа приміщення;

Система опалення - двотрубна закрита система циркуляції з помпою, встановленою на подаючому трубопроводі.

Система вентиляції - місцева.

В якості джерел штучного освітлення широко використовуються лампи розжарювання та газорозрядні лампи.

Обладнання, що використовується:

комп'ютер

принтер

сканер

LCD монітор

Аналіз шкідливих та небезпечних виробничих факторів та їх впливу на функціональний стан працівника

Таблиця 4.1

Фактори, що впливають на функціональний стан працівника

nn

Фактор

Умови утворення

Вплив на здоров'я працівника

Фізичні

11

Підвищений рівень шуму

Вентилятори комп'ютерів

Підвищена роздратованість, зниження концентрації

22

Пряма та відбита від екранів блискість

Розміщення робочих місць

Підвищене стомлення очей

Психофізіологічні

11

Перенапруження зорового аналізатора

Тривале сидіння за монітором

Підвищене стомлення очей

22

Розумове перенапруження

Інтелектуальна основа професії

Стомленість

Визначення категорії важкості праці

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

Параметри мікроклімату в теплий період року:

Температура, оС = 22

Швидкість повітря, м/с = 0,7

Вологість повітря, % = 55

Загальне освітлення, лк = 100

Тривалість зосередженого спостереження, % = 50

Рівень шуму, дБ А = 48

Категорія (точність) зорових робіт, Зор. = Б

Кількість важливих об'єктів спостереження,Об, од. = 2

Бальна оцінка елементів умов праці:

Температура, оС = 2 бали

Швидкість руху повітря, м/с = 3 бали

Відносна вологість повітря, % = 2 бали

Шум, дБ А = 2 бали

Освітленість, лк = 4 бали

Тривалість зосередженого спостереження, % = 2 бали

Число важливих об'єктів спостереження = 1 бал

Точність зорових робіт = 2 бали

Тривалість повторюваних операцій, с = 3 бали

Визначення категорії важкості праці:

Інтегральну бальну оцінку важкості праці Iп на конкретному робочому місці можна визначити за такою формулою:

де Хоп - елемент умов праці, який одержав найбільшу оцінку;

Хоп = 4

- середній бал усіх елементів умов праці крім визначаючого Хоп, що дорівнює:

- сума всіх елементів крім визначаючого Хоп;

n - кількість врахованих елементів умов праці = 21 / 8 = 2,625

Отже, інтегральна бальна оцінка важкості праці Iп дорівнює:

Iп = 10 · (4 + 2,625 · (6 - 4) / 6) = 48,75

Категорія важкості праці - IV рівня.

Оцінка ступені стомлення та працездатності робітників

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

:

де 15,6 и 0,64 - коефіцієнти регресії.

Y = (48,75 - 15,6) / 0,64 = 51,8

Працездатність людини визначається як величина, протилежна стомленню (в умовних одиницях):

R = 100 - Y

R = 100 - 51,8 = 48,2

Розробка рекомендацій щодо покращення умов праці та розрахунок їх ефективності

Розрахунок вентиляції виробничого приміщення

Розрахунок здійснюється залежно від кількості працюючих.

Необхідна кількість повітря (м3/год.), яка забезпечує відповідність параметрів повітря робочої зони нормованим значенням, визначається за формулою:

Де - нормативна кількість повітря на одного працюючого, яка залежить від питомого об'єму приміщення, м3/(год.·люд.).

N - кількість працюючих.

Питомий об'єм приміщення , (м3/люд.), визначається за формулою:

де V - об'єм приміщення, м3.

Величина V? - нормативна кількість повітря.

Отже, визначаємо вільний об'єм приміщення (обладнання займає 25% об'єму):

V = A·B·H·0,75 = 9·3·5,5·0,75 = 111,375 м3.

Питомий вільний об'єм складає:

V? = V / N = 111,375 / 5 = 22,275 м3 /люд. > 20 м3/люд.

Нормована кількість повітря на одну людину при V? > 20 м3/люд. становить 20 м3/(год·люд))

Найменша необхідна кількість повітря для вентиляції:

L = L?· N = 20·5 = 100 м3/год.

Розрахунок акустичної обробки виробничого приміщення

Для зниження рівнів шуму на робочих місцях використовують наступні методи:

раціональне розміщення робочого місця у приміщенні, а також обладнання на кожному місці;

акустична обробка приміщення.

Раціональне розміщення робочих місць залежить від наявності достатньої площі приміщення. Акустична обробка приміщення захищає працюючих від внутрішніх та зовнішніх (вулиця, суміжні приміщення) шумів. Зниження рівня шуму за рахунок акустичної обробки приміщення ДL визначається за формулою:

де А1, А2 - звукопоглинання приміщення до та після акустичної обробки, одиниць поглинання.

Звукопоглинання приміщення визначається за формулою

:

де S - площа поверхні, м2;

б - коефіцієнт поглинання матеріалу поверхні, одиниці поглинання.

Визначаємо звукопоглинання приміщення до проведення обробки:

Коефіцієнти поглинання матеріалів стін = 0,03; стелі = 0,03; підлоги = 0,06.

А1 = 2 · 9 · 5,5 · 0,03 + 2 · 3 · 5,5 · 0,03 + 9 · 3 · 0,03 + 9 · 3 · 0,06 = 6,39 одиниць поглинання.

Визначаємо звукопоглинання приміщення після акустичної обробки:

Коефіцієнти поглинання матеріалів стін = 0,11; стелі = 0,5; підлоги = 0,06.

А2 = 2 · 9 · 5,5 · 0,11 + 2 · 3 · 5,5 · 0,11 + 9 · 3 · 0,5 + 9 · 3 · 0,06 = 29,64 одиниць поглинання.

Зниження рівня шуму складає 10 lg · (29,64 / 6,39) = 6,7 дБ.

Рівень шуму після обробки приміщення (48 - 6,7 = 41,3 дБ А) відповідає нормативним вимогам до приміщення з ПЕОМ.

Розрахунок освітлення приміщення

Штучне освітлення приміщення з робочими місцями, обладнаними ПЕОМ, здійсняється системою загального рівномірного освітлення з використанням люмінесцентних ламп.

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

Для розрахунку системи освітлення застосовують метод коефіцієнта використання світлового потоку за умови, що витримані рекомендовані співвідношення відстані між світильниками до висоти їх підвісу, відхилення не повинно бути більше 20%. При цьому відношення довжини світильника до найкоротшої відстані від нього до розрахункової точки не повинно перевищувати 0,2. Якщо ці умови не виконуються використовують точковий метод розрахунку.

Заходи, які забезпечують електробезпеку та пожежну безпеку

Вимоги щодо пожежної безпеки будівель та приміщень, де розміщені робочі місця, обладнані ЕОМ з ВДТ і ПП, повинні відповідати вимогам, встановленим:

а) Державними будівельними нормами "Пожежна безпека об'єктів будівництва", затвердженими наказом Держбуду України від 03.12.2002 N 88 (далі - ДБН В.1.1.7-2002);

б) ГОСТ 12.1.004-91 "ССБТ. Пожарная безопасность. Общие требования безопасности";

в) Правилами пожежної безпеки України, затвердженими наказом Міністерства України з питань надзвичайних ситуацій від 19.10.2004 N 126, зареєстрованими в Міністерстві юстиції України 04.11.2004 за N 1410/10009 (далі - НАПБ А.01.001-2004).

1.14. Приміщення, де розміщені робочі місця операторів, крім приміщень, у яких розміщені робочі місця операторів великих ЕОМ загального призначення (сервер), мають бути оснащені системою автоматичної пожежної сигналізації відповідно до вимог:

а) Переліку однотипних за призначенням об'єктів, які підлягають обладнанню автоматичними установками пожежогасіння та пожежної сигналізації, затвердженого наказом Міністерства України з питань надзвичайних ситуацій та у справах захисту населення від наслідків Чорнобильської катастрофи від 22.08.2005 N 161, зареєстрованого в Міністерстві юстиції України 05.09.2005 за N 990/11270 (далі - НАПБ Б.06.004-2005);

б) Державних будівельних норм "Інженерне обладнання будинків і споруд. Пожежна автоматика будинків і споруд", затверджених наказом Держбуду України від 28.10.98 N 247 (далі - ДБН В.2.5-13-98), з димовими пожежними сповіщувачами та переносними вуглекислотними вогнегасниками.

1.16. Приміщення, в яких розміщуються робочі місця операторів сервера загального призначення, обладнуються системою автоматичної пожежної сигналізації та засобами пожежогасіння відповідно до вимог НАПБ Б.06.004-2005, ДБН В.2.5-13-98, НАПБ А.01.001-2004 і вимог нормативно-технічної та експлуатаційної документації виробника.

1.17. Проходи до засобів пожежогасіння мають бути вільними.

Заходи щодо забезпечення режиму праці та відпочинку

Охорона праці відіграє важливу роль як суспільний чинник, оскільки якими б вагомими не були трудові здобутки, вони не можуть компенсувати людині втраченого здоров'я, а тим більше життя. Слід пам'ятати, що стан охорони праці є показником соціального й науково-технічного розвитку держави. Умови праці, що відповідають нормативним вимогам, дозволяють якщо не уникнути, то хоча б скоротити захворюваність, пов'язану з виробництвом. Турбота про здоров'я людини - найголовніше завдання держави. Адже саме за сприятливих умов праці людина здатна працювати високопродуктивно, створювати необхідний матеріальний потенціал суспільства, добробут усіх громадян.

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

Таблиця 4.2

Час регламентованих перерв у залежності від тривалості робочої зміни, виду і категорії трудової діяльності з ПЕОМ

Категорія Роботи з ПЕОМ

Загальний час регламентованих перерв

При 8-годинній зміні

При 12-годинній зміні

Розробка програм із застосуванням ЕОМ

15 хвилин через кожну годину

У перші 8 годин роботи аналогічно перервам при 8-годинній роботі, а протягом останніх 4-х годин - 15 хвилин через кожну годину

Оператори із застосуванням ЕОМ

15 хвилин через кожні 2 години

Оператори комп'ютерного набору

10 хвилин після кожної год.

Оцінка ефективності модернізації та заходів щодо охорони праці

Здійснення заходів щодо охорони праці дозволило зменшити інтегральну оцінку важкості праці (Іп) з 48,75 до 37,83. Визначити ефективність заходів щодо охорони праці.

Визначаємо ступінь стомлення в умовних одиницях до і після впровадження заходів щодо охорони праці:

Y1 = (48.75 - 15.6) / 0,64 = 24,375

Y2 = (37,83 - 15,6) / 0,64 = 13,455

Визначаємо працездатність персоналу в умовних одиницях до і після впровадження заходів щодо охорони праці:

R1=100 - 24,375= 75,625

R2= 100 - 13,455 = 86,545

Визначаємо зростання продуктивності праці:

?W = (86,545 / 75,625 - 1) · 100 · 0,2 = 2,9 %

Для оцінки ефективності заходів щодо охорони праці визначаємо також зменшення важкості праці та ступеня стомлення:

?Y = (24,375 - 13,455) / 24,375 · 100 = 44,8 %

?I = (48,75 - 37,83) / 48,75 · 100 = 22,4 %

Висновки до розділу

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

Важливість створення системи управління охороною праці встановлюється міжнародними актами і договорами. Конвенція № 155 МОП про безпеку та гігієну праці та виробниче середовище, яка набула чинності 11 серпня 1983 року визначила систему організації охорони праці на національному та виробничому рівні на роботодавців покладається обов'язок надавати робоче місце, механізми обладнання та організовувати виробничі процеси, які відповідають встановленим нормативам і не загрожують здоров'ю працюючи. Важливим напрямком у сфері охорони праці є створення відповідних служб, на які покладають комплексні функції управління охороною праці, співпрацювати з представниками працівників, шляхом надання необхідної інформації, проведення консультацій, попереджувати виникнення виробничого травматизму та проводити розслідування й облік нещасних випадків і професійних захворювань; проводити навчання працівників з питань охорони праці та ін.

ВИСНОВКИ

1) Зібрана бібліотека електронних матеріалів з публікаціями пов'язаними з паралельними алгоритмами сортування даних. Основна увага приділена методам розпаралелювання фази злиття.

2) Виконана розробка програмної реалізації зовнішнього сортування даних на основі удосконалення оригінального паралельного алгоритму n-потокового злиття в середовищі Visual Studio.NET мовою Visual C #. Макет послідовно виконує базові операції для кожного процесора. При цьому заміряються часові характеристики зазначених операцій, і будується обчислювальна модель оцінки продуктивності алгоритму сортування.

3) Досліджено продуктивність роботи алгоритмів сортування. Під час дослідження використовувались вихідні таблиці числового типу. Використовується послідовний доступ до файлу даних.

4) Спроектовані BP-win діаграми для демонстрації принципів роботи алгоритму.

Размещено на Allbest.ru


Подобные документы

  • Вирішення задач сортування в програмуванні та розробка ефективних алгоритмів сортування. Знайомство з теоретичним положенням, що стосуються методів сортування файлів, реалізації їх на мові програмування Turbo Pascal. Методи злиття впорядкованих серій.

    курсовая работа [46,9 K], добавлен 16.09.2010

  • Розробка, налагоджування, тестування і документування програми на мові високого рівня С++ при рішенні на комп'ютері прикладної інженерної задачі. Використання принципів модульного і структурного програмування, зображення алгоритму у вигляді блок-схеми.

    курсовая работа [1,1 M], добавлен 07.08.2013

  • Класифікація та статистичний аналіз наслідків надзвичайних ситуацій. Розробка архітектури, інформаційного забезпечення, програмних засобів комп'ютерної автоматизованої системи аналізу наслідків природного і техногенного впливу на будинки та споруди.

    дипломная работа [2,5 M], добавлен 02.10.2013

  • Створення програми для роботи з веб-камерою з автоматичним визначенням встановленої камери на комп'ютері. Характеристика апаратної конфігурації програми. Опис мови і середовища програмування. Розробка алгоритму, інструкції для програміста та користувача.

    курсовая работа [1,2 M], добавлен 26.07.2013

  • Аналіз етапів шифрування тексту. Програмно-апаратна характеристика комп’ютера. Створення кнопкової форми в Delphi. Розробка і опис алгоритму. Діаграма прецедентів проектованої системи. Інструкція роботи користувача з системою. Керівництво програміста.

    курсовая работа [999,1 K], добавлен 03.12.2014

  • Прості алгоритми сортування та їх програмування. Сортування вставками - алгоритм сортування на основі порівнянь. Злиття двох упорядкованих послідовностей (сортування злиттям). Ідея алгоритму швидкого сортування. Алгоритм сортування на основі порівнянь.

    лабораторная работа [631,3 K], добавлен 19.08.2010

  • Класифікація об'єктно-орієнтованих мов програмування. Розробка алгоритмічного та програмного забезпечення комп'ютерної системи управління процесом випалювання будівельних матеріалів. Тестування програмного забезпечення, оцінка його ефективності.

    курсовая работа [1,6 M], добавлен 25.04.2015

  • Загальні поняття інформаційного забезпечення інформаційних систем. Структура засобів інформаційного забезпечення автоматизованої інформаційно-довідкової системи. Оперативний персонал, метрологічне забезпечення. Алгоритмізація виробничого процесу (АВП).

    контрольная работа [31,4 K], добавлен 01.02.2010

  • Алгоритм покриття за методом "мінімальній стовпець - максимальний рядок". Підпрограми основного алгоритму. Розробка програми сортування методом простих включень (бульбашковим методом). Словесний опис алгоритму, його контрольний приклад та ефективність.

    курсовая работа [36,4 K], добавлен 06.03.2013

  • Використання Інтернет-ресурсів та форми роботи з комп’ютерними навчальними програмами. Підвищення мотивації вивчення англійської мови шляхом використання нових інформаційних технологій у школі. Сучасні підходи до використання інформаційних технологій.

    реферат [29,0 K], добавлен 09.12.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.