KiT#71(6) web qxd


Download 314.25 Kb.
Pdf ko'rish
bet5/6
Sana26.01.2023
Hajmi314.25 Kb.
#1123337
1   2   3   4   5   6
Bog'liq
osobennosti-arhitektury-i-programmirovaniya-dvuyadernyh-protsessorov-semeystva-blackfin-adsp-bf561

Рис. 3. Построение системы обработки видеоизображений с использованием гетерогенной модели программирования


ЦСП
19
КОМПОНЕНТЫ И ТЕХНОЛОГИИ • № 6 '2007
при этом разные данные. Например, в зада-
че многоканальной обработки звука при та-
ком подходе каждое из ядер может обрабаты-
вать половину от общего числа каналов,
а в задаче обработки видеоизображений на
одно ядро можно возложить задачу обработ-
ки четных, а на другое — нечетных кадров.
Такую модель целесообразно использовать
в задачах, где требуется большой объем вы-
числений. Как правило, при использовании
этой схемы оба ядра процессора после необ-
ходимой инициализации входят в бесконеч-
ный цикл, в котором производится вся обра-
ботка и выдача результатов.
В модели «ведущий — ведомый», как
и в гомогенной модели, нагрузка при выпол-
нении интенсивных вычислений поровну
распределяется между ядрами процессора,
однако на одно из них, которое является ве-
дущим, возлагаются также и задачи общего
управления. Второе ядро занимается исклю-
чительно типичными для цифровых сигналь-
ных процессоров вычислениями и является
в данной схеме ведомым. Синхронизация ра-
боты ядер может осуществляться через сема-
форы или прерывания. При использовании
семафоров ведущее ядро сигнализирует ве-
домому о необходимости начала обработки
нового блока данных записью заранее ого-
воренного значения в ячейку общей памяти.
Ведомое ядро после завершения обработки
текущего блока данных опрашивает в цикле
состояние этой ячейки. При использовании
прерываний ведомое ядро по завершении об-
работки блока данных входит в режим ожи-
дания, из которого ведущее ядро может вы-
вести его выдачей прерывания. Недостаток
этой модели заключается в том, что если од-
но ядро уже обработало свою порцию дан-
ных, а другое еще занимается обработкой,
то первое ядро не может перейти к следую-
щей задаче, а должно дождаться завершения
обработки во втором ядре. Это приводит
к снижению эффективности использования
ресурсов процессора.
И, наконец, еще одна модель программи-
рования, которая поддерживается симмет-
ричными процессорами, — это конвейер-
ная модель, в которой отдельные шаги ал-
горитма распределяются между ядрами,
причем выходные данные, получаемые по
завершении этапа в одном ядре процессо-
ра, являются входными данными для сле-
дующего этапа в другом ядре процессора.
Рассмотрим в качестве примера задачу ко-
дирования видеоизображений формата
MPEG2. При использовании конвейерной
схемы обработки одно ядро двухъядерного
процессора может выполнять преобразова-
ние цветового пространства и анализ дви-
жения. Результаты работы первого ядра
(вектора движения) записываются в область
общей памяти. Одновременно с этим второе
ядро извлекает из общей памяти векторы, рас-
считанные первым ядром на предыдущем
шаге, и осуществляет оставшуюся часть об-
работки. При условии оптимального распре-
деления задач между ядрами, то есть при при-
близительно равной вычислительной нагруз-
ке на ядра, конвейерная модель позволяет до-
стичь наибольшей производительности сре-
ди всех перечисленных моделей программи-
рования. Недостаток этой модели заключается
в том, что эффективность распределения за-
дач сильно зависит от архитектуры и систе-
мы памяти конкретного процессора, и поэто-
му перенос программ с одной платформы на
другую затруднителен. 

Download 314.25 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling