Задания на многопроцессорные вычисления
В файле содержится информация о совокупности вычислительных процессов, которые могут выполняться параллельно или последовательно. Приостановка выполнения процесса не допускается. Будем говорить, что процесс зависит от процесса , если для выполнения процесса необходимы результаты выполнения процесса . В этом случае процессы и могут выполняться только последовательно.
Информация о процессах представлена в файле в виде таблицы. В первом столбце таблицы указан идентификатор процесса (ID), во втором столбце таблицы – время его выполнения в миллисекундах, в третьем столбце перечислены с разделителем «;» ID процессов, от которых зависит данный процесс. Если процесс независимый, то в таблице указано значение 0.
Определите максимальное количество процессов, которые параллельно выполняются на 15-й мс. Считать, что каждый процесс начинается в самое раннее допустимое время. Нумерация миллисекунд начинается с 1.
Типовой пример организации данных в файле
ID процесса В | Время выполнения процесса В (мс) | ID процесса(-ов) А |
|---|---|---|
1 | 3 | 0 |
2 | 4 | 1 |
3 | 2 | 2; 4 |
4 | 5 | 0 |
5 | 8 | 1; 4 |
6 | 3 | 1 |
Для приведённой таблицы процесс 3 начинается на 8-й мс, заканчивается на 9-й мс.
Типовой пример имеет иллюстративный характер. Для выполнения задания используйте данные из прилагаемого файла.
Файл к заданию: https://storage.yandexcloud.net/100points-bank/informatics-ege/files/hAiB-ameWv.xlsx