Применение методов теории графов к организации вычислительного процесса


Размещение блоков программы в оперативной памяти компьютера: сведение к задаче коммивояжера. Пусть ‑ отдельные блоки программы, и пусть ‑ вероятность исполнения блока после . Если ‑ первый блок, а ‑ последний, то положим Если марковский процесс, описываемый матрицей переходов , является эргодическим, т. е. для него существует предельное распределение, которое не зависит от начального состояния процесса, то частоты исполнения отдельных блоков удовлетворяют матричному уравнению , нормализованному так, что сумма частот исполнения равна 1. Пусть величины найдены. Тогда, если ‑ время исполнения блока , то ожидаемое время исполнения всей программы равно . Если и известны, то можно рассмотреть задачу минимизации ожидаемого числа передач управления, производимых при выполнении программы. Если блок следует в памяти за блоком , то передача управления нужна всякий раз, когда после блока выполняется блок , отличный от . Ожидаемое число таких передач равно .

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

Пусть ‑ блок, состоящий из кодов начальных данных и кодов, которые не выполняются в виде команд. Тогда для всех имеем . Полагаем , если ‑ погледний блок в памяти, и , если — первый блок в памяти, в остальных случаях полагаем , Тогда рассматриваемая задача сводится к минимизации ожидаемого числа выполнения передач управления при условии, что есть матрица циклической перестановки, а это и есть задача коммивояжера (см. раздел 6.2.3).

Рассмотрим ситуацию, когда на входе компьютера ямеется некоторое множество задач, имеющих общие страницы в памяти. Требуется определить такую последовательность решения этих задач, чтобы минимизировать пересылки страниц памяти. Для решения построим граф, вершинам которого будут соответствовать задачи, а две вершины соединены ребром тогда и только тогда, когда они соответствуют задачам, имеющим общие страницы памяти. Каждому ребру сопоставляется вес, зависящий от числа общих страниц.

Тогда проблема активизации задач сводится к отысканию оптимального каркаса графа активизации. Особенность этой проблемы состоит в том, что чаще всего стоимость каркаса ‑ нелинейная функция от весов ребер.



Дата добавления: 2016-06-05; просмотров: 1614;


Поиск по сайту:

Воспользовавшись поиском можно найти нужную информацию на сайте.

Поделитесь с друзьями:

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.007 сек.