OpenMP ва openCV компилятори ёрдамида ишлаш унумдорлиги | Статья в журнале «Техника. Технологии. Инженерия»

Автор:

Рубрика: Спецвыпуск

Опубликовано в Техника. Технологии. Инженерия №2 (4) апрель 2017 г.

Дата публикации: 04.05.2017

Статья просмотрена: 9 раз

Библиографическое описание:

Уразматов Т. К. OpenMP ва openCV компилятори ёрдамида ишлаш унумдорлиги // Техника. Технологии. Инженерия. — 2017. — №2.1. — С. 30-32. — URL https://moluch.ru/th/8/archive/57/2326/ (дата обращения: 21.10.2018).



В данной статье описывается процесс OpenMР и OpenCV было предложено использование компиляторов, результаты работы в обоих компилятором. Производительность OpenMР и OpenCV компилятора ясно показано на примере диаграммы.

Ключевые слова: OpenMР, OpenCV, производительность

This article describes the process of OpenMР and OpenCV has been offered the use of compilers, the results of working in both the compiler. OpenMР and OpenCV compiler's performance is clearly shown in the chart view.

Keywords: OpenMР, OpenCV, productivity

Мультимедиа тизимларида тасвирларни қайта ишлаганда вейлет жараёнларини тадбиғ этиш яхши натижа беради. Айниқса параллелаштириш алгоритмларидан фойдаланиш унумдорлик даражасини оширишга ёрдам беради. Тасвирларни қайта ишлаганда биринчи усул ёрдамида амалга оширамиз. Бу усулнинг амалга ошиш алгоритми қуйидагича амалга ошади: дастурга юкланган тасвир 2^N қиймат билан амалга ошади. N нинг қиймати тасвир бўлинган матрицаси 16х16 ўлчамга эга бўлгунча амалга ошади. Бу ҳолатда мисол сифатида N = 1 га тенг бўлганда тасвир 4 та матрицага ажралада.

Танланган мавзунинг долзарблиги ҳисоблаш техникасидан фойдаланган ҳолда жараёнларни математик моделлаштиришда, шунингдек маълумотлар базаси кўринишида берилган турли табиатли маълумотларни таҳлил қилинишида қурилган илмий ишларнинг тез ривожланишининг натижаси ҳисобланади.

Бундан кўринади алгоритм OpenMP дан фойдаланганда 2 ядроли процессорда амалга оширилганда 2 та оқимга 2 марта бўлиб берилади ва цикл 2 марта айланишга тўғри келади. Кетма кет амалга оширганда эса бу амаллар бажарилганда цикл 4 маротаба айланишга тўғри келади. Бу ҳолатни назарий жихатдан тахлил қиладиган бўлсак, унумдорлик 2 маротаба ошади деган хулосага келишимиз мумкин. Аммо OpenMP ёрдамида оқимларга ажратганда хотира ва процессор билан оқимларни ташкиллаштирганда маълум вақт сарфланади. Чунки оқим яратилганда хотирага ҳосил бўлаётган оқим учун динамик хотира яратиш лозим ва оқим ўз жараёнини якунлаганда динамик хотирани ўчириш керак бўлади. Кейинги жараён бу оқимларни процессорда бажарилиш учун навбатга қўйиш. [1.-78с] Бу ҳолда ҳам маълум даражада вақт сарфланади. OpenMP пакетидан фойдаланган ҳолда тасвирни қайта ишлаганда 2 ядроли процессорда қайта ишлаганда қуйидаги 1 – жадвалда кўрсатилган натижаларга эришилди. Жадвалнинг биринчи устунида қайта ишланаётган тасвирнинг нечта матрицага бўлиниши ва бўлинган ҳар бир матрицанинг қандай ўлчамга эга эканлиги кўрсатилган.

1 – жадвал

2 ядроли процессорда тасвирларни қайта ишлаганда сарфланган вақт ва унумдорлик

N x N

Оддий алгоритмёрдамиа

OpenMP ёрдамида

OpenCV ёрдамида

Унумдорлик

4 ta 1024

5141,619

3862,97

3781,4

1,331

16 ta 512

5381,641

4230,043

4123,03

1,279

64 ta 256

5498,038

4550,084

4435,01

1,208

256 ta 128

5657,647

5166,368

4987,1

1,109

1024 ta 64

5954,337

5862,022

5621,02

1,016

4096 ta 32

7029,633

7888,272

7678,2

0,891

16384 ta 16

9878,041

13121,636

12234,5

0,753

Натижалардан шуни кўришимиз мумкин, бир оқимли кетма кет қайта ишлаш амалга оширганда OpenMP ва OPENCV ёрдамида амалга оширганга нисбатан кўпроқ вақт талаб қилиши мумкин.[2.-36с]

OpenMP ёрдамида 2 ядроли процессорда эришилган унумдорликни график кўриниши

OpenMP ёрдамида тасвирни қайта ишлаганда #pragma omp parallel дириктиваси процессорни максимал ҳолда оқимларга ажратишга ҳаракат қилади. Яъни 2 ядроли процессорда максимал ҳолда 2 та оқимни яратиб бериши мумкин. Аммо оқимларни максимал ҳолда белгилаб бериш билан унумдорликка эришиб бўлмайди. Чунки оқимларни ташкиллаштиришга ҳам боғлиқ ҳисобланади. Бу вазифини OpenMP компилятори ташкиллаштириб беради.[3.-56с]

Айнан шу ҳолатни 4 ядроли процессорда амалга оширганимизда 2 – жадвалдаги натижаларни кўришимиз мумкин:

Ядролар сонининг ошиши оқимлар сонини ошишига имкон беради. 4 ядроли процессорда максимал ҳолда 4 та оқим ташкиллаштиришимиз мумкин.

2 – жадвал.

4 ядроли процессорда тасвирларни қайта ишлаганда сарфланган вақт ва унумдорлик

N x N

Одатда

OpenMP

OpenCV

Унумдорлик

4 ta 1024

1873,058

679,337

658,211

2,757

16 ta 512

1693,052

701,696

689,234

2,413

64 ta 256

1581,531

977,97

954,42

1,617

256 ta 128

2017,086

1676,533

1579,241

1,203

1024 ta 64

1446,008

1776,122

1721,201

0,814

4096 ta 32

1630,208

2636,226

2564,125

0,618

16384 ta 16

2143,645

7029,12

6875,01

0,305

OpenMP ёрдамида 4 ядроли процессорда эришилган унумдорликни график кўриниши

Юқоридаги натижалардан шуни кўришимиз мумкинки, унумдорлик натижаси n ядроли процессорларда n дан ошмаслигини кўришимиз мумкин. 2 ва 4 ядроли процессорларни унумдорлигини солиштирганимизда қуйидаги фарқни кўришимиз мумкин.[4.-34с]

Хулоса қилиб айтганда маълумотларни қайта ишлашда кўп ядроли процессорларга мўлжалланган параллелаштириш алгоритмларини қўллаш яхши самара берди. С++дастурлаш тилидан фойдаланилди ва параллел алгоритмни таъминлаб OpenMP ва OpenCV компиляторлари директиваларидан фойдаланилди ва улар ёрдамида процессор унумдорлик даражаси ошди.

Иш давомида тасвирларни қайта ишлашда тасвир қийматларини байтли массивга ўзлаштириш, вейвлет-жараёнларни амалга оширганда оқимларга ажратиш усуллари ва хотирани параллел ҳолда динамик жой ажратиш каби жараёнлар бажарилди ва яхши самарадорлик кўрсатди.

Адабиётлар:

  1. Шпаковский Г.И. Реализация параллельных вычислений: MPI, OpenMP, класте­ры, грид, многоядерные процессоры, графические процессоры, квантовые компьютеры. – Минск: Белорусский Государственный Университет, 2010. – 155с.
  2. Ярославский Л.П. «Введение в цифровую обработку изображений», Москва сов.радио, 2012й.
  3. Грузман И.С. «Цифровая обработка изображений в информационных системах», Новосибирск 2012г.
  4. Антонов А.С. Параллельное программирование с использованием технологии OpenMP. – М: издательство Московского Университета, 2011 г. – 77с.
Основные термины (генерируются автоматически): MPI, OPENCV.

Ключевые слова

производительность, OpenCV, OpenMР

Похожие статьи

Применение библиотеки AForge.NET и ее расширения Accord.NET...

Существует много различных библиотек для программной реализации системы распознавания лиц, например, такие как OpenCV, Emgu CV, Accord.NET Framework, Matrox Imaging Library...

Методы определения объектов на изображении | Статья в журнале...

Использование матричных детекторов границ в OpenCV 3.x на примере матрицы Собеля.

В библиотеке OpenCV он реализуется функцией (cvHaarDetectObjects()) [6].

Алгоритмы распознавания объектов | Статья в сборнике...

В дополненном методе Виолы — Джонса, который используется в библиотеках OpenCV, применяются признаки, дополненные следующими примитивами [5]

Вычисление расстояния до наблюдаемого объекта по...

Калибровка камер стереопары осуществляется при помощи библиотечной функции OpenCV calibrate Camera().

Multiple View Geometry in Computer Vision, 2nd Edition.

Real-time stereo vision system for distance measurement

Bradski, G. and Adrian, K. Learning OpenCV: Computer Vision with the OpenCv Library — 2008 — O`Reilly Media, Inc. California — ISBN 13: 9780596516130.

Распознавание объектов на основе видеосигнала, полученного...

Программа, реализующая алгоритм, написана на языках C# и С++ с использованием библиотеки OpenCv. Распознавание образов окружающих объектов внешней среды.

Поиск объектов на изображении с использованием алгоритма...

На практике будет использована реализация данного алгоритма из библиотеки OpenCV. В библиотеке имеются модули для работы с каскадным классификатором...

Сравнительный анализ методов поиска особых точек...

Для проведения исследований была написана программа на языке JAVA в среде разработке AndroidStudio, с использованием свободно распространяемой библиотекой OpenCV 3.1.0 [5].

Статьи по ключевому слову "OpenCV" — Молодой учёный

"OpenCV": Молодой учёный №12 (116) июнь-2 2016 г. — Коробов Д. В., Патин М. В.

OpenMP ва openCV компилятори ёрдамида ишлаш унумдорлиги.

Обсуждение

Социальные комментарии Cackle

Похожие статьи

Применение библиотеки AForge.NET и ее расширения Accord.NET...

Существует много различных библиотек для программной реализации системы распознавания лиц, например, такие как OpenCV, Emgu CV, Accord.NET Framework, Matrox Imaging Library...

Методы определения объектов на изображении | Статья в журнале...

Использование матричных детекторов границ в OpenCV 3.x на примере матрицы Собеля.

В библиотеке OpenCV он реализуется функцией (cvHaarDetectObjects()) [6].

Алгоритмы распознавания объектов | Статья в сборнике...

В дополненном методе Виолы — Джонса, который используется в библиотеках OpenCV, применяются признаки, дополненные следующими примитивами [5]

Вычисление расстояния до наблюдаемого объекта по...

Калибровка камер стереопары осуществляется при помощи библиотечной функции OpenCV calibrate Camera().

Multiple View Geometry in Computer Vision, 2nd Edition.

Real-time stereo vision system for distance measurement

Bradski, G. and Adrian, K. Learning OpenCV: Computer Vision with the OpenCv Library — 2008 — O`Reilly Media, Inc. California — ISBN 13: 9780596516130.

Распознавание объектов на основе видеосигнала, полученного...

Программа, реализующая алгоритм, написана на языках C# и С++ с использованием библиотеки OpenCv. Распознавание образов окружающих объектов внешней среды.

Поиск объектов на изображении с использованием алгоритма...

На практике будет использована реализация данного алгоритма из библиотеки OpenCV. В библиотеке имеются модули для работы с каскадным классификатором...

Сравнительный анализ методов поиска особых точек...

Для проведения исследований была написана программа на языке JAVA в среде разработке AndroidStudio, с использованием свободно распространяемой библиотекой OpenCV 3.1.0 [5].

Статьи по ключевому слову "OpenCV" — Молодой учёный

"OpenCV": Молодой учёный №12 (116) июнь-2 2016 г. — Коробов Д. В., Патин М. В.

OpenMP ва openCV компилятори ёрдамида ишлаш унумдорлиги.

Посетите сайты наших проектов

Задать вопрос