Проблема планирования параллельных задач - Parallel task scheduling problem
В теоретической информатике проблема планирования параллельных задач является NP-жесткий проблема оптимизации. Данный набор параллельные задачи, также называемые заданиями, должны быть запланированы на идентичные машины, иногда называемые процессорами, что сводит к минимуму время последнего завершения. В Veltman et al.[1] и Дроздовский[2], эта проблема обозначается в трехпольная запись введено Graham et al. [3]. Истоки этой постановки проблемы восходят к 1960 г.[4]. Для этой задачи не существует алгоритма полиномиальной аппроксимации времени с отношением меньше, чем пока не .
Определение
В этой задаче нам дан набор из рабочие места, а также одинаковые машины. есть время обработки и требует одновременного использования машины во время его выполнения. Расписание назначает каждое задание ко времени начала и набор из Это возможно, если каждый процессор выполняет не более одного задания в любой момент времени. Цель проблемы, обозначенная найти расписание с минимальной длиной , также называемый периодом изготовления расписания. Достаточным условием выполнимости расписания является следующее
.
Если это свойство выполняется для всех моментов времени запуска, можно сгенерировать возможное расписание, назначив заданиям свободные машины в каждый момент времени, начиная с момента времени. .[5][6]. Кроме того, количество машинных интервалов, используемых заданиями, и интервалов простоя на каждом временном шаге может быть ограничено [5]. Здесь машинный интервал - это набор следующих друг за другом машин максимальной мощности, так что все машины в этом наборе обрабатывают одно и то же задание. Машинный интервал полностью определяется индексом его первой и последней машины. Следовательно, можно получить компактный способ кодирования вывода с полиномиальным размером.
Твердость
Эта проблема NP-трудна даже для постоянного количества машин из-за того, что соответствует проблема раздела. Кроме того, Ду и Люн[7] показал, что эта проблема сильно NP-жесткий когда количество машин не менее , и что существует псевдополиномиальное время алгоритм, который решает проблему именно в том случае, если количество машин не превышает . Позже Хеннинг и др.[8] показал, что проблема также является NP-трудной, когда количество машин . Если количество машин не ограничено константой, не может быть алгоритма аппроксимации с коэффициентом аппроксимации меньше, чем пока не потому что эта проблема содержит проблема с упаковкой бункера как подслучай, т.е. когда все задания имеют время обработки .
Варианты
Изучено несколько вариантов этой проблемы.[2]. Следующие варианты также рассматривались в сочетании друг с другом.
Смежные вакансии: В этом варианте машины имеют фиксированный заказ. . Вместо того, чтобы назначать задания какому-либо подмножеству , задания должны быть назначены интервалу машин. Эта задача соответствует постановке задачи проблема упаковки полосы.
Формовочные работы: В этом варианте каждая работа имеет набор возможных машинных номеров и для каждого из этих чисел у него есть время обработки . Чтобы запланировать работу , алгоритм должен выбрать номер машины и назначьте время начала и чтобы машины за временной интервал Обычное допущение для такого рода проблем состоит в том, что работа, которая определяется как не увеличивается для увеличивающегося числа машин.
Несколько платформ: В этом варианте набор машин разбит на независимые платформы. Запланированное задание может использовать машины только одной платформы и не может охватывать несколько платформ при обработке.
Алгоритмы
Алгоритм составления списков Гэри и Грэхема[9] имеет абсолютное соотношение , как указывает Турек и др.[10] и Людвиг и Тивари[11]. Фельдманн, Сгалл и Тенг[12] заметил, что длина невытесняющего расписания, созданного алгоритмом планирования списка, на самом деле не превышает раз оптимальное время вытеснения. Схема полиномиальной аппроксимации (PTAS) для случая, когда число процессоров постоянна, обозначается , был представлен Amoura et al.[13] и Jansen et al.[14]Позже Янсен и Теле [6] нашел PTAS для случая, когда количество процессоров полиномиально ограничено по количеству рабочих мест. В этом алгоритме количество машин полиномиально зависит от временной сложности алгоритма. Поскольку, как правило, количество машин появляется только в логарифмическом масштабе в размере экземпляра, этот алгоритм также является схемой псевдополиномиального приближения по времени. А - приближение дано Янсеном[15], что закрывает пробел до нижней границы за исключением сколь угодно малого .
Различия между смежными и несмежными заданиями
Для случая задачи планирования параллельных задач оптимальная продолжительность выполнения может различаться в зависимости от ограничения на смежность машин. Если задания могут быть запланированы на несмежных машинах, оптимальная продолжительность выполнения может быть меньше, чем в случае, когда они должны быть запланированы на смежных. Разница между непрерывным и несмежным расписанием была впервые продемонстрирована в 1992 году.[16] в случае с задачи, процессоры, , и .Błdek et al. [17] изучили эти так называемые c / nc-разности и доказали следующие моменты:
- Для возникновения c / nc-разницы должно быть как минимум три задачи с
- Для возникновения c / nc-разницы должно быть как минимум три задачи с
- Чтобы возникла c / nc-разница, по крайней мере, требуются процессоры (и существует экземпляр с разницей c / nc с ).
- Для возникновения разницы c / nc длина несмежного расписания должна быть не менее
- Максимальная разница c / nc по крайней мере и самое большее
- Решить, есть ли разница c / nc в данном экземпляре, является NP-полным.
Кроме того, они предложили следующие две гипотезы, которые остались недоказанными:
- Чтобы возникла разница c / nc, по крайней мере, задачи обязательны.
Смотрите также
Рекомендации
- ^ Вельтман, Б; Lageweg, B.J; Ленстра, Дж. К. (1990-12-01). «Многопроцессорное планирование с задержками связи». Параллельные вычисления. 16 (2): 173–182. Дои:10.1016 / 0167-8191 (90) 90056-Ф. ISSN 0167-8191.
- ^ а б Дроздовский, Мацей (2009). «Планирование параллельной обработки». Компьютерные коммуникации и сети. Дои:10.1007/978-1-84882-310-5. ISBN 978-1-84882-309-9. ISSN 1617-7975.
- ^ Graham, R.L .; Lawler, E. L .; Lenstra, J.K .; Риннуй Кан, A.H.G. (1979). «Оптимизация и приближение в детерминированной последовательности и расписании: обзор» (PDF). Труды Института перспективных исследований по дискретной оптимизации и системным приложениям Группы системных наук НАТО и симпозиума по дискретной оптимизации. Эльзевир. С. (5) 287–326.
- ^ Ф, Кодде (1 июня 1960 г.). «Многопрограммное планирование». Коммуникации ACM. 3 (6): 347–350. Дои:10.1145/367297.367317. S2CID 14701351.
- ^ а б Йоханнес, Берит (01.10.2006). «Планирование параллельных работ для минимизации времени изготовления». Журнал планирования. 9 (5): 433–452. Дои:10.1007 / s10951-006-8497-6. HDL:20.500.11850/36804. ISSN 1099-1425. S2CID 18819458.
- ^ а б Янсен, Клаус .; Тёле, Ральф. (01.01.2010). «Аппроксимационные алгоритмы для планирования параллельных работ». SIAM Журнал по вычислениям. 39 (8): 3571–3615. Дои:10.1137/080736491. ISSN 0097-5397.
- ^ Ду, Цзяньчжун .; Люнг, Джозеф Ю.-Т. (1 ноября 1989 г.). «Сложность планирования параллельных систем задач». Журнал SIAM по дискретной математике. 2 (4): 473–487. Дои:10.1137/0402042. ISSN 0895-4801.
- ^ Хеннинг, Сорен; Янсен, Клаус; Рау, Малин; Шмарье, Ларс (1 января 2020 г.). "Сложность и несовместимость результатов для параллельного планирования задач и упаковки полос". Теория вычислительных систем. 64 (1): 120–140. arXiv:1705.04587. Дои:10.1007 / s00224-019-09910-6. ISSN 1433-0490. S2CID 67168004.
- ^ Garey, M. R .; Грэм, Р. Л. (1 июня 1975 г.). «Границы для многопроцессорного планирования с ограничениями ресурсов». SIAM Журнал по вычислениям. 4 (2): 187–200. Дои:10.1137/0204015. ISSN 0097-5397.
- ^ Турек, Джон; Wolf, Joel L .; Ю., Филип С. "Приближенные алгоритмы планирования распараллеливаемых задач | Труды четвертого ежегодного симпозиума ACM по параллельным алгоритмам и архитектурам". dl.acm.org. Дои:10.1145/140901.141909. S2CID 15607549.
- ^ Людвиг, Вальтер; Тивари, Прасун (1994). «Планирование гибких и неизменяемых параллельных задач | Труды пятого ежегодного симпозиума ACM-SIAM по дискретным алгоритмам». Пятый ежегодный симпозиум {ACM-SIAM} по дискретным алгоритмам (SODA): 167–176.
- ^ Фельдманн, Аня; Сгалл, Иржи; Тэн, Шан-Хуа (1 августа 1994 г.). «Динамическое планирование на параллельных машинах». Теоретическая информатика. 130 (1): 49–72. Дои:10.1016 / 0304-3975 (94) 90152-Х. ISSN 0304-3975.
- ^ Амура, Абдель Крим; Бампис, Еврипидис; Кеньон, Клэр; Манусакис, Яннис (1 февраля 2002 г.). «Планирование независимых многопроцессорных задач». Алгоритмика. 32 (2): 247–261. Дои:10.1007 / s00453-001-0076-9. ISSN 1432-0541. S2CID 17256951.
- ^ Янсен, Клаус; Порколаб, Лорант (1 марта 2002 г.). "Схемы линейного приближения для планирования гибких параллельных задач". Алгоритмика. 32 (3): 507–520. Дои:10.1007 / s00453-001-0085-8. HDL:11858 / 00-001M-0000-0014-7B6C-D. ISSN 1432-0541. S2CID 2019475.
- ^ Янсен, Клаус (2012). «Алгоритм приближения (3/2 + ε) для планирования формируемых и неизменяемых параллельных задач | Труды двадцать четвертого ежегодного симпозиума ACM по параллелизму в алгоритмах и архитектурах». 24-й симпозиум {ACM} по параллелизму в алгоритмах и архитектурах, {SPAA}. Дои:10.1145/2312005.2312048. S2CID 6586439.
- ^ «Приближенные алгоритмы планирования распараллеливаемых задач | Труды четвертого ежегодного симпозиума ACM по параллельным алгоритмам и архитектурам». Дои:10.1145/140901.141909. S2CID 15607549. Цитировать журнал требует
| журнал =
(помощь) - ^ Блёндек, Иво; Дроздовский, Мацей; Гинан, Фредерик; Шеплер, Ксавье (1 октября 2015 г.). «При планировании непрерывных и несмежных параллельных задач». Журнал планирования. 18 (5): 487–495. Дои:10.1007 / s10951-015-0427-z. ISSN 1099-1425.