Каковы динамические характеристики программ? Чему необходимо уделять основное внимание при их распараллеливании? Для чего нужен сбор информации обо всех исполненных командах? На эти и многие другие вопросы ответил доктор физико-математических наук Руслан Смелянский в ходе лекции, прочитанной 26 ноября 2009 года и опубликованной на канале Sdatseminar.

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

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

Рекомендуем по этой теме:
8880
Интернет и Всемирная паутина
В 60-е годы Питер Деннинг уже отмечает в своих работах по изучению динамики программ, их поведения (особенно для построения выкладки алгоритмов работы с виртуальной памятью), что значительную часть времени выполнения программы определяет относительно небольшая доля команд этой программы. Соотношение было примерно 80/20. На самом деле в целом ряде публикаций отмечается: эта часто исполняемая часть программы относительно невелика.

В рубрике «Лекции» мы выбираем для вас самые интересные лекции авторов ПостНауки, прочитанные ими на различных площадках, и публикуем в привычном формате. Так мы со временем соберем лучшие выступления ученых в одном месте. Чтобы посоветовать нам лекции, пишите postnauka@postnauka.ru.