Автор: Уразматов Тохир Куранбаевич

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

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

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

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

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

Уразматов Т. К. OpenMP ва openCV компилятори ёрдамида ишлаш унумдорлиги // Техника. Технологии. Инженерия. — 2017. — №2.1. — С. 30-32. — URL https://moluch.ru/th/8/archive/57/2326/ (дата обращения: 20.02.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с.
Основные термины (генерируются автоматически): қайта ишлаганда, openmР and opencv, Бу усулнинг амалга, and opencv compiler, айланишга тўғри келади, берилади ва цикл, Бу ҳолда ҳам, and opencv has, хотира ва процессор, матрицага бўлиниши ва, Бу ҳолатда мисол, қайта ишлаганда биринчи, яратиш лозим ва, Бу ҳолатни назарий, ядроли процессорда амалга, усул ёрдамида амалга, қайта ишлаганда вейлет, процессорда қайта ишлаганда, OpenMP пакетидан фойдаланган, фойдаланган ҳолда.

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

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

Обсуждение

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

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

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