Производительность, один из главных показателей эффективности вычислительной системы (ВС), определяет ее вычислительную мощность через количество той или иной вычислительной “работы”, выполняемой системой в единицу времени, или в течение некоторого временного интервала. В зависимости от целей применения ВС, под вычислительной работой могут понимать различные действия, например, выполнение машинной команды, обработка пикселей или полигонов пикселей в графических системах, запросы к базам данных, время выполнения прикладной программы. К настоящему времени были сформулированы десятки различных определений производительности ВС, различающиеся в зависимости от взглядов авторов на вычислительный процесс [1,2,3,23]. Так, в [4], в зависимости от уровня описания системы рассматривают “техническую, комплексную и системную” производительности. Что касается мер производительности, то в настоящее время в литературе рассматриваются и исследуются десятки различных характеристик производительности выполнения прикладных программ [1,2,4,11,23], например, средние значения времен выполнения отдельных операций, или времени отклика на те или иные внешние запросы, характеристики работы кэш-памяти (hit/miss), и т.д. Существенно, что термины, в которых выражаются оценки производительности (Performance Evaluation), зависят от модели ВС на соответствующем уровне описания системы. Одной из наиболее сложных и далеких от исчерпывающего решения проблем, возникающих при оценке производительности ВС, является задача прогнозирования времени выполнения программы в некоторой программно-аппаратной среде [2,6,7,8,17,62,64]. Это время может рассматриваться либо как некоторая длительность между двумя событиями, связанными с выполнением программы, либо как некоторая относительная величина, характеризующая изменение (замедление или ускорение) времени выполнения программы относительно некоторого эталона. Время достижения системой некоторого результата (обработки запроса, завершения программы) можно рассматривать как функцию тех или иных характеристик производительности. С этой точки зрения, указанные выше характеристики (часто называемые 2 индексами производительности” [1,2]) представляют собой неявные меры производительности, поскольку, хотя и известно, что время выполнения некоторой задачи в проектируемой системе связано с этими величинами некоторой монотонной зависимостью, определить точный вид этой зависимости, как правило, не представляется возможным. Для прикладных ВС, в которых ресурсы расходуются, в основном, на вычисления, время выполнения программы рассматривается как статическая оценка, тогда как для управляющих ВС интерес представляет предсказание времен выполнения случайно поступающих запросов (“задач”) от управляемых объектов, и их использование как динамических характеристик для организации оперативного управления. Однако на определенных этапах разработки ВС, ввиду зависимости поведения программ от большого числа неконтролируемых факторов, время выполнения программ разумно рассматривать как случайные величины. В последовательных системах эта случайность может быть обусловлена зависимостью от входных данных (“data dependency”) при использовании конвейера [3], кэш-промахами (cache miss ratio), зависимостью ветвлений от исходных данных. В системах с одновременным выполнением нескольких процессов и совместным использованием тех или иных ресурсов (параллельные системы, распределенные системы), конфликты взаимодействующих процессов при запросах ресурсов также могут служить дополнительными источниками случайности времени выполнения задач. Поэтому, для предсказания производительности ВС на различных стадиях проектирования, требуются вероятностные модели, связывающие интересующие разработчика меры производительности с измеряемыми характеристиками структуры и функционирования проектируемой системы. Помимо потребности в прогнозировании производительности при проектировании новых ВС (например, специализированных систем обработки сигналов (DSP)), необходимость решения задачи предсказания производительности возникает, например, при изменении (“масштабировании”) параметров основных компонентов системы (объема и времени доступа к памяти, быстродействия процессоров)[28], или переносе программного обеспечения на машины с другой архитектурой [81]. Важно отметить, что существующие системы имитационного моделирования ВС зачастую дают результаты, которые бывает 3 трудно использовать для анализа тех или иных “узких мест” производительности вычислительных систем. Для больших параллельных и распределенных систем со значительным числом возможных путей выполнения программ, это связано с трудностью проведения и интерпретации результатов многофакторных эксперементов [2, 9]. Поэтому желательно иметь в качестве одного из инструментов проектирования вероятностные аналитические модели производительности, которые бы позволяли разработчику исследовать влияние тех или иных факторов на производительность, без привлечения значительных технических ресурсов. Как показывает анализ литературы, разработка и исследование аналитических вероятностных моделей производительности представляет собой самостоятельное научное направление современной теории вычислительных систем. Если программы работают чисто последовательно, то проблемы оценки производительности имеют, в основном, вычислительный аспект, а именно, насколько точно аппарат современной теории вероятностей и математической статистики позволяет предсказывать времена выполнения конкретных программ по результатам тех или иных измерений на их трассах [10]. Для оценки производительности программ с параллельными и/или распределенными вычислениями может потребоваться также семантический анализ описания проектируемой системы [8,10,12]. Это связано как с недетерминизмом поведения параллельных/распределенных ВС [7,11], так и с широким использованием в автоматизированном проектировании ВС формальных спецификаций их временного поведения, привязанных к той или иной семантической модели ВС [12,14, 15, 116]. Необходимо быть уверенными, что модель, используемая для вычисления времени выполнения, отвечает условиям временной корректности, например, условиям вида “действие Y следует завершить до начала выполнения действия Z“, или условиям для различных “скрытых” действий [14,15,157], явно не представленных в исходных спецификациях. Это означает, что при моделировании производительности ВС необходим учет способов описания требований к временной корректности работы проектируемой системы ((например, обеспечения требуемой упорядоченности выполнения всех действий)), свойств используемого языка спецификации (например, стохастические сети Петри SPN, стохастическая алгебра процессов (Stochastic 4 Process Algebra-SPA)) [13, 14,15]. Для снижения затрат проектирования желательно, чтобы модели предсказания производительности были совместимы с моделями, используемыми в современных системах автоматизированного проектирования, в частности, позволяли использовать в качестве исходной информации ту же спецификацию проектируемой ВС, что и при функциональной и временной верификации и моделировании на данном этапе проектирования. Заметим, что рассматриваемый в книге круг задач отличается от традиционных задач оценки производительности систем массового обслуживания (включая компьютерные и коммуникационные сети, моделируемые как системы массового обслуживания (СМО)), поскольку нас интересуют не характеристики производительности в терминах теории очередей (распределения длин очередей, задержки пакетов [88]), a время выполнения приложений в конкретных вычислительных средах, хотя при этом могут использоваться те или иные модели СМО (глава 4). Методы оценки производительности можно условно разделить на измерительные, основанные преимущественно на непосредственных результатах измерения поведения ВС, и аналитические, вычисляющие характеристики производительности в рамках тех или иных математических моделей поведения ВС, и использующих непосредственные измерения как параметры. Измерительные модели могут базироваться либо на детерминированном представлении поведения ВС, либо на стохастическом. В первом случае они представляют время выполнения программ в терминах некоторых измеренных индексов производительности (числа циклов, затрачиваемых на выполнение операции [2,3], значений времени выполнения тех или иных “базовых операций” (включая конструкций языков высокого уровня [16])). Статистические вычислительные модели используют либо регрессию времени выполнения конкретной программы на времена выполнения некоторых эталонных задач [17], либо статистическую идентификацию параметров некоторых простых линейных математических моделей [18]. Одним из существенных аспектов использования измерительных моделей является обоснованный выбор множества эталонных задач, который, однако, в данной книге подробно не рассматривается. Некоторые вопросы выбора эталонов рассмотрены в [19, 20]. 5 Аналитические методы базируются на математических моделях, описывающих теоретически-обоснованные отношения между требуемыми показателями производительности, выраженных в терминах соответствующей концептуальной модели производительности (например, интенсивностей переходов в различных Марковских моделях, или распределения времен выполнения отдельных подзадач/операций, или характеристик взаимодействий выделенных компонентов системы в графовых моделях). В настоящее время оба подхода (измерительные и аналитические) модели сосуществуют друг с другом, имея свои области применимости. При этом оба класса моделей применяются для моделирования производительности как детерминированного, так и случайного поведения систем. 6 1.Основные классы моделей производительности Прежде чем приступить к описанию конкретных вероятностных моделей производительности, определим основные классы объектов моделирования. При этом будем учитывать следующую иерархию моделей (в основном уже определенную во Введении), которую так или иначе, используют разработчики при анализе производительности в процессе проектирования ВС. Концептуальная Модель – это набор представлений (“точек зрения”) об элементах, объектах (как реальных, так и модельных), и целей проектируемой системы, а также отношений между ними, выраженных в терминах той или иной теории. Иными словами, это то, что разработчик понимает под ВС на данном этапе проектирования. Например, мы можем рассматривать процессор однопроцессорной ВС как сервер, обрабатывающий запросы, и представлять ее поведение в терминах некоторой СМО, а можем рассматривать как некоторую “машину состояний”, и рассматривать переход от задачи к задаче как переход от состояния к состоянию. Очевидно, что концептуальная модель тесно связана с уровнем описания ВС. Заметим, что в рамках современных методологий разработки программного обеспечения (Software Engineering) под концептуальной моделью понимают формализованное описание требований к проекту на том или ином языке моделирования данных (например, UML) [125], и соответствующий язык позволяет определенную типизацию и структуризацию указанных понятий. Формальная модель – описание (спецификация) желаемого поведения проектируемой системы на том или ином формальном языке спецификаций (например, Алгебра Процессов или сети Петри) [14,15]. Математическая модель - количественное описание поведения ВС, представленной в терминах принятой концептуальной модели, при выполнении прикладной программы (например, Марковские модели). Вычислительная модель - используемые алгоритмы решения уравнений математической модели, например, вычисление сверток, 7 итеративные методы решения марковских систем, вычисление собственных значений, кронекеровская декомпозиция. Использование формальной спецификации исходного описания концептуальной модели желательно в том случае, когда между ее элементами существуют информационно-логические отношения, не учет которых может приводить к конфликтам при функционировании системы. Примером могут служить указанные выше требования соблюдения временного порядка наступления определенных событий. Говоря о концептуальной модели ВС, следует отличать ее от исходного описания (“неформальной спецификации”) ВС. Например, в [21] многомашинная вычислительная система (МВС) описывается орграфом, в котором вершины соответствуют программам (“работам”), а дуги - связям между программами по данным и управлениям. Однако поведение системы рассматривается как сеть обслуживания заявок, поступающих и обрабатываемых в каждой из этих вершин, и поэтому концептуальной моделью, лежащей в основе построения ее математической модели, является соответствующая сетевая СМО. В этом состоит ее отличие от рассматриваемых ниже моделей “графа задач” (параграф 1.3 главы 1, глава 2), в которой поведение ВС (с точки зрения проблемы оценки ее производительности) рассматривается как прохождение путей в некотором графе с программными модулями в его вершинах. 1.1 Основные концептуальные модели ВС связанные с ними меры производительности и Итак, выбор тех или иных математических моделей производительности зависит от того, что разработчик понимает под “вычислительной системой” на данном этапе проектирования прикладной ВС, что определяют содержательные термины, в которых он описывает проект (в том числе, требования к производительности проектируемой системы), и как это отражается в “концептуальной модели” объекта проектирования. Поэтому предварительно опишем основные способы представления ВС и соответствующие им концептуальные модели производительности. 8 1.1.1 Предварительные замечания по моделированию ВС Будем понимать под вычислительной системой совокупность аппаратных средств, программной среды (включающей программное обеспечение, обеспечивающее выполнение заданий пользователей, run-time system, файловой системы и других средств), и рабочей нагрузки (заданий пользователей, с учетом порядка их поступления в систему) [6]). Часто говорят о выполнении прикладных программ на некоторой платформе. Под платформой понимают некоторое семейство системных программных и аппаратных средств, удовлетворяющих определенным ограничениям. Все основные уровни представления вычислительных систем (уровень команд, уровень программных тредов (threads) и процессов, уровень прикладных программам, уровень “комплексов работ” (“задач”) [21]) так или иначе рассматриваются в вероятностном моделировании. В современной практике, на ранних этапах проектирования используют более абстрактные модели описания, базирующиеся на понятиях состояний и процессов, для чего используются формализмы сетей Петри и алгебры процессов, что будет подробнее рассмотрено в главе 3. На достаточно продвинутых этапах проектирования, когда определена архитектура программной части разрабатываемой ВС и структура программных компонентов и их взаимосвязи, говорят о программном архитектурном уровне описания (software architecture (SA)) [22]. При построении математических моделей ВС архитектурного уровня, иногда рассматривают поведение ВС в терминах потоков инструкций (instruction stream) и потоков данных (data stream) [27,39]. Начиная с 60-х годов, в таких терминах рассматривают 4 категории архитектур: SISD (single instruction stream, single data stream), SIMD ((single instruction stream, multiple data stream)), MIMD(multiple instruction stream, multiple data stream), MISD (multiple instruction stream, single data stream). Среди этих четырех моделей, в качестве модели универсальных машин наиболее широко используется MIMD. Каждый выделяемый “уровень” описания ВС соответствует определенному этапу проектирования: чем на более ранней стадии применяется модель, тем абстрактнее (“отдаленнее” от деталей реализации) её уровень. С этой точки зрения, “высокоуровневость” 9 моделей, основанных на понятиях “состояний” и “процессов”, используемых, например, при моделировании ВС различными Алгебрами Процессов (Process Algebra - PA) [14,15] по сравнению, скажем, с моделями, представленными в терминах перечисленных выше компонентов описания функционирования (от “команд” до “работ”) заключается в том, что во втором случае разработчик имеет дело с явным описанием системы (в частности, программы) в терминах ее технической реализации (и спецификации заказчика), тогда как результаты в терминах “состояний и процессов” нуждаются в дальнейшей интерпретации. Как отмечалось, мы в основном рассматриваем программы типа “преобразователи информации”. В этом случае, программа - это функция, отображающая начальное состояние на некоторое конечное состояние (результат). Это, как правило, программы чисто вычислительных задач, с явным завершением (termination) работы в данной операционной среде. Для таких программ адекватное абстрактное описание (спецификация) обеспечивается денотационной семантикой, базирующейся на хорошо известном понятии “функция состояния” и Hoare logic [11,15]. Специфика работы программ, в которых явно предусмотрена обработка запросов "внешней среды" ( отмеченные во Введении “реактивные” системы), с точки зрения описания их временного поведения состоит в том, что для них отсутствует явный момент окончания, и, следовательно, для этого класса ВС такой очевидный показатель производительности как время выполнения программы требует специального уточнения. С задачами оценки производительности тесно связаны задачи “характеризации рабочей нагрузки” (РН), Под рабочей нагрузкой (workload) понимают множество внешних запросов (например, со стороны пользователей), обрабатываемых ВС в пределах определенного временного интервала, либо те или иные модели потребления прикладной программой ресурсов системы [2,6,16,29,30]. В зависимости от целей анализа, под “запросами” можно понимать программы, команды, данные, с которыми работает “пользователь”. Например, в [25] РН моделируется “графом поведения пользователя” (user behavior graph (UBG)). Каждый узел UBG соответствует той или иной пользовательской “команде”, дуги между узлами i и j представляют вероятность использования команды j после i. UBG может моделироваться дискретной цепью Маркова. 10 1.2 Меры производительности В литературе в настоящее время рассматриваются и исследуются десятки различных мер (и определений) производительности выполнения прикладных программ [1,2,3,4,8]. Для нас, однако, важно то, что все существующие толкования понятия производительности, так или иначе связаны с временными характеристиками системы, т.е. с числом определенных вычислительных действий в единицу времени (или за определенный временной интервал), которые может обеспечить рассматриваемая система. При этом время достижения системой некоторого результата (обработки запроса, завершения программы) оказывается функцией соответствующих характеристик производительности. Поэтому в качестве одного из классификационных признаков мер производительности можно использовать способ задания этой функции - явный или неявный. В качестве явной меры производительности можно, очевидно, рассматривать время выполнения некоторой задачи, или величину, связанную с временем выполнения некоторой известной функциональной зависимостью. Неявные мерыэто так называемые “индексы производительности” [1,2], например, средние значения времен выполнения отдельных операций, или времени отклика на те или иные внешние запросы (если их не рассматривать как самостоятельные задачи), характеристики работы кэш-памяти (hit/miss), и так далее. Обычно эти величины объединяют в таблицу или вектор, представляющие перечень операций и их длительности, причем известно, что время выполнения некоторой задачи в проектируемой системе связаны с этими факторами монотонной зависимостью, но саму эту зависимость точно идентифицировать не удается. Другим признаком классификации оценок производительности может являться статус точности оценки оценивает ли она поведение системы в некотором “наихудшем” случае, или же представляет собой то или иное приближение к значению производительности, обеспечиваемой системой в данных конкретных условиях (“истинная” производительность). Как отмечалось во Введении, на достаточно продвинутых этапах проектирования прикладных систем (например, графических систем, различных микропроцессорных встроенных систем), одним из обязательных этапов является задача прогнозирования времени (абсолютного или относительного) выполнения программ в 11 разрабатываемой вычислительной среде (под “относительным” понимается степень изменения времени выполнения задачи при изменении тех или иных условий выполнения). В частности, могут рассматриваться задачи оценки времени выполнения он-лайн запросов [47]. Также часто интерес представляет не только время завершения всей задачи, но и отдельных ее компонентов, что важно, например, для оптимизации планировщиков (scheduler) заданий. Заметим, что как явный временной показатель можно также рассматривать “пропускную способность системы” (throughput), равную числу некоторых операций в единицу времени, которую, например, используют для характеризации программ, обслуживающих запросы к базам данным, Webсерверам [128]. Термины, в которых выражаются оценки производительности, обычно зависят от модели ВС на соответствующем уровне описания системы (например, в числе переходов в единицу времени для сети Петри, моделирующей данную ВС [84]). Напомним, что для многих приложений важны не абсолютные значения времен выполнения, а требования, чтобы время выполнения не выходило за некоторые границы, или, чтобы некоторые действия (задачи) завершались либо до некоторого момента t, либо до (после) некоторого действия “a”. 1.3 Детерминистские и вероятностные производительности. Граф задач модели В литературе по оценке производительности используются различные классификации моделей производительности ВС. По большей части в их основе лежит “семантическая” специфика используемых в проектировании концептуальных моделей ВС, в зависимости от которой модели могут рассматриваться, например, как “структурные”, ”архитектурные”, “функциональные”, или “поведенческие“ [6,7]. Однако подобная классификация не совсем практична, поскольку не учитывает различие вероятностных и детерминистских подходов, и связанную с этим различием вычислительную специфику используемого математического аппарата. 12 Детерминистские аналитические модели производительности в основном базируются на представлении ВС как ”графа задач”. Согласно одному из широко используемых определений [27,30], Граф задач (ГЗ) - это ациклический направленный граф <N,A,S ,T>, в котором: N-множество вершин, представляющих собой множество отдельных задач, соответствующих, например, функциям или операторам в некотором языке, в зависимости от уровня представления “задачи”, A NN – множество дуг, описывающих связи задач по данным и/или управлению, S - множество вершин-источников, не имеющих предшественников, Т - терминальные вершины. Времена выполнения отдельных компонентов, как правило, приписывают вершинам [(27], а дугам приписываются условия очередности выполнения компонентов (“условия предшествования” - precedence constraints [27]), задаваемые “графом предшествований” (рис.1). A 1.1.1.1.1.1.1.2 A B 1.1.1.1.1.1.1.1 Рис. 1 Граф предшествований AB означает ”B выполняется 1.1.1.1.1.1.1.3 A строго после A” Эти условия означают, что для ребра (А, B) задача “A”должна быть завершена до начала выполнения задачи “B“.В некоторых случаях, времена выполнения приписывают дугам (так называемая ”Activity-on-Node” модель [33]). При вычислении оценки времени выполнения в наихудшем случае WCET (worse case execution time) [26,114,115] “задачам” соответствуют конструкции используемого языка высокого уровня, которые группируются в ветвления, циклы, и “базовые блоки”. Для каждой из таких конструкций определяется собственное WCET, в общем случае с учетом влияния конвейеризации и кэш-памяти. Основная трудность состоит в вычислении WCET всей программы по WCET отдельных конструктов, рассматривая программу как граф, заданный на соответствующем множестве вершин и дуг, образованных указанными компонентами и их связями, или как 13 некоторую систему переходов, состояниям которой они соответствуют. В описание элементов модели могут быть включены так называемые WCTA (Worst Case Timing Abstraction) [26], которые содержат информацию о времени выполнения тех или иных (или всех) путей в графе, а также информацию о факторах, влияющих на это время. Они также включают информацию, позволяющую обновлять значения времени выполнения каждого из программных конструктов в зависимости от изменения условий работы кэш-памяти и конвейера, что указывает на динамический характер данного подхода (в отличие от чисто “статического” анализа первоначально предложенных WCETалгоритмов), и может существенно снизить вычислительную сложность. В аналитических моделях “истинного” времени выполнения под задачей понимают любыe неделимые (на данном уровне описания проекта) действия, ассоциируемые с определенными ресурсами системы, например, это могут быть “функции”, или некоторые элементы программы (цикл, базовый (линейный) блок). В детерминированной модели ГЗ время выполнения программы оценивается как сумма времен выполнения задач вдоль некоторого пути в графе задач. Поскольку вычислительная сложность анализа путей определяется структурой графа, существенным направлением исследований является изучение структурных свойств ГЗ. Наибольшее число результатов получено для программ и программно- аппаратных систем, представляемых тaк называемым Fork-join Task Graph, и последовательно-параллельных графов (series-parallel task graphs (SPTG)) [27, 33, 120]. Fork-Join граф описывает программы, соответствующие параллельному выполнению нескольких задач, с передачей результатов и управления одной и той же задаче (процессу), с учетом условий синхронизации. Примеры таких графов приведены на рисунках 2 и 3. Например, граф (с) может представлять распределенное Web- приложение, в котором за 14 инициализацией S0 следует параллельные вызовы 3-х Web – Рис. 2. Графы задач с расходящимися и сходящимися путями сервисов. В последовательно-параллельном графе (рисунок 3) каждая вершина может быть представлена как последовательная или параллельная композиция древовидных подграфов. Рис.3 Последовательно-параллельный граф задач Вероятностные модели быстродействия ВС - это модели, в которых время выполнения программ рассматривается как случайная величина. Наиболее приемлемый для вероятностного моделирования тип вычислительных систем – это системы, требования ко времени выполнения задач в которых являются сравнительно “мягкими” (“soft ” real-time constraints), в том смысле, что нет специальных требований обязательного корректного завершения работы в заданном временном интервале (как, например, это требуется в специальных системах управления полетом, или движением по железным дорогам – в так называемых safety critical systems [35]). Именно для таких систем с “мягкими”требованиями к 15 производительности допустимо рассматривать ”поведение в среднем” тех или иных характеристик (чем, в конечном итоге и занимаются при вероятностном моделировании систем), в отличие от получения 100% гарантий того, что поведение “в наихудшем случае“ будет в заданных границах, что необходимо для жизненноважных safety critical систем. 1. 2. 3. 4. 5. 6. 7. 8. 9. J. Hennessy, D. Patterson. Computer Architecture: A Quantitative Approach, Second Edition, Morgan Kaufmann Publishers, Inc 1996. Ferrari D. et al. Measurement and Tuning of Computer Systems, Prentice-Hall, 1983. В.А.Сигнаевский. Я.А.Коган, Методы оценки быстродействия вычислительных систем, Moсква: “Наука”, 1990. Ларионов А.М. П., Костенко В.А. Смелянский, Р.Л. Ющенко Н.В. Методика оценки времени выполнения оптимизированных программ // Программирование, 1999, №5, с. 52-61. Игнатущенко В.В. Организация структур управляющих многопроцессорных вычислительных систем .Москва:Энергоатомиздат, 1984. Смелянский Р.Л. Модель функционирования распределенных вычислительных систем // Вестник Моск. Ун-та, сер. 15, Выч. Математика и Кибернетика, 1990, №3, с.3-21. Смелянский Р.Л. Об инварианте поведения программ // Вестник МГУ, сер.15, Вычисл. матем. и киберн., 1990, №4, с.54-60. Д.В.Калиниченко, А.П.Капитонова, Н.В.Ющенко. Методы и средства прогнозирования времени выполнения последовательных программ. // Методы математического моделирования МГУ, 1997. R. Humayu, Kh. David J. Morse. System Performance Analysis: Tools, Techniques, and Methodology // Dell magazin’s, 2001, Issue 3. 16 10. S. L. Frenkel. Random Summation and its Application to the Performance Modelling Computer Systems // Proceedings of 17th European simulation multiconference ESM2003, June, 2003, England, p. 278-283. 11. Hoare C.A.R. Communicating Sequential Processes, Prentice-Hall, 1985. 12. С.Л.Френкель. Функционально-временная верификация сложных цифровых систем // Открытые Системы, 2002, № 6, стр. 10-17. 13. N. GЁotz, U. Herzog and M. Rettebach. Multiprocessor and distributed system design: The integration of functional specification Donatielo and R. Nelson, eds, //Perfomance Evaluation of Computer and Communication systems, LNCS 729, Springer-Verlag, 1993, p. 121–146. 14. Brinksma E., Hermanns H., and J.-P. Katoen (Eds) // Lectures on Formal Methods and Performance Analysis, LNCS 2090, Springer-Verlag, 2001. 15. В.Е.Котов. Л.А.Черкасова, Исчисления Процессов // Системная информатика, 1993, вып.2, ВО Наука, с.638. 16. J. Saavedra-Barrera et al. Machine characterization based on an abstract high-level language machine // IEEE Trans. on Comp.,1989, vol.38, №.12, p. 1659-1679. 17. M.A.Iverson et al. Statistical prediction of task execution times through analytic benchmarking for scheduling in a heterogeneous environment // IEEE Trans. on Comp., 1999, Vol.48, № 12, p. 1374-1379. 18. Максимей Н.В., Функционирование вычислительных систем (Измерение и анализ). М.: “Сов. Радио”, 1979. 19. Elizabeth D. Dolan ·Jorge J. Moré. Benchmarking optimization software with performance profiles.// Math. Program., Ser. A 91, 2002, p.201–213. 20. . S. L..Frenkel. About probabilistic models of performance evaluation. // Вестник Томского Гос. Университета, Приложение 1, Сентябрь, 2002, стр. 345-352. 21. Н.Н.Иванов, А.Ю.Игнатущенко, А.Ю. Михайлов, Статистическое Прогнозирование Времени 17 Выполнения Комплексов Взаимосвязанных Работ в Микропроцессорных Вычислительных Системах // Автоматика и и Телемеханика, 2005, № 6. с. 89—103. 22. Aquilani, F., P. Balsamo, Performance analysis at the software architectural design level // Perform. Eval,2001, vol. 45, p.147–178. 23. T. Mitra Tzi-cker Chiueh, Dynamic 3D Graphics Workload Characterization and the Architectural Implications, // Proceedings 32-й Int. Symposium “MICRO32”, November 14- 18, 1999, Haifa, Israel. 24. Amy N. Langville and William J. Stewart The Kronecker product and stochastic automata networks // Journal of Computational and Applied Mathematics,2003, http://www.csc.ncsu.edu/faculty/stewart/. 25. M. Calzarossa, R. Marie, and K. Trivedi. System performance with user behavior graphs // Performance Evaluation, 1990, vol. 11, p. 155-164. 26. Sung-Soo Lim, et al, An Accurate Worst Case Timing Analysis for RISC processors // IEEE Transactions on Software Engineering, vol. 21, №7, July 1995, p.593-604. 27. Vikram S. Adve , Mary K. Vernon, Parallel program performance prediction using deterministic task graph analysis // ACM Transactions on Computer Systems, February 2004, vol. 22, № 1 , p. 94–136. 28. V. S. Adve, R. Bagrodia, J. C. Browne, Deelman, E., A. Dube, E. Houstis, J. Rice, R. Sakellariou, D. SundaramStukel, P. J. Teller, and M. K. Vernon. POEMS: End-toend performance design of large parallel adaptive computational systems // IEEE Transactions on Software Engineering, 2000, vol. 26, №. 11, p. 1027-1048. 29. M. Calzarossa and G. Serazzi. Workload characterization: a survey // Proc. of the IEEE, 81(8), 1993, 1136-1150. 30. M. Calzarossa, G, et al, A Hierarchical approach to workload characterization for parallel systems // High Performance Computing and Networking, LNCS 919, 1995, Springer-Verlag, pp. 102-109. 18 31. G. Bernat, A. Colin, S.Petters. pWCET: a Tool for probabilistic Worst-Case Execution Time analysis of realtime systems // Proceedings of 3rd International Workshop on Worst-Case Execution time Analysis. Satellite event to the Euromicro Conference on Real-Time Systems. Porto, Portugal, June 2003. Полный текст на http://wwwusers.cs.york.ac.uk/~petters/Stefan.M.Petters.publications. html. 32. Gelenbe, E. `Multiprocessor performance. John Wiley and Sons, Ltd., New York and Chichester, 1989. 33. Baccelli, A.Jean-Marie, Z.Liu, A Survey on solution methods for task graph models // Second QMIPS Workshop, Arbeitsberichte der IMMD , March 26-14, 1993, Erlangen. 34. Linear approximation of execution time //Software Verification Research Centre the University of Queesland, Queensland 4072 Australia, Technical Report №. 02-31, October 2002, http://svrc.it.uq.edu.au. 35. N. Storey, Safety-Critical Computer Systems, AddisonWesley, 1996. 36. С. Писсанецкий, Технология разреженных матриц, М.:”Мир”, 1988. 37. Смелянский Р.Л., Бахмуров А.Г.,Гурьев Д. Об одной вероятностной модели программ // Программирование, №6, 1986. 38. Arjan J. C. van Gemund: Symbolic Performance Modeling of Parallel Systems // IEEE Trans. Parallel Distrib. Syst. 2003, vol.14, № 2, p.154-165. 39. Yan Alexander Li, et al. Determining the execution time distribution for a data parallel program in a heterogeneous computing environment // IEEE J. of Par. and Distr. Comp. 1997. vol.44, p.35–52. 40. Keqin Li, , and Yi Pan. Probabilistic analysis of scheduling precedence constrained parallel tasks on multicomputers with contiguous processor allocation // IEEE Trans. on Comp., 2000, vol. 49, № 10, p.1021-1030. 41. E. Gelenbe, R. Nelson, T. Philips, and A. Tantawi. Asymptotic processing time of a model of parallel 19 42. 43. 44. 45. 46. 47. 48. computation // Proееdings National Computer Conference, Las Vegas, Nov. 1986. E. Gelenbe. A QMIPS: Significant example: Multiprocessor performance with task-graph models // Centre de Recherche de l'EHEI, UFR de Math_ematiques et d'Informatique, Universit_e deParis V, 1995, http://www- sop.inria.fr/mistral/infos/QMIPS/Deliverables. P. Malcolm, J. Roseboom, C. Clark, and W. Fazar. Application of a technique for research and development // Ops. Res., 1997, № 7, p.646-669. V. Kulkarni and V. Adlakha. Markov and markovregenerative PERT networks. //Operations Research, Sept.1986, 34(5):p. 769-781. M. Neuts. Matrix geometric solution of stochastic models, John Hopins University Press, Baltimore, 1981. Ю.И. Рыжиков, Теория очередей и управление запасами, учебник для вузов, Москва, 2001. Daniel A. Menascé, Response-time analysis of composite web services // IEEE Internet Computing, Jan. – Febr. 2004 . Yazia-Pekergin, J.-M. Vincent Stochastic Bounds on Execution Times of Parallel Programs // IEEE Trans. Softw. Eng. 1991, № 10, p. 1005-1012. 49. S. Elmaghraby. Activity networks: Project planning and control by network models, Wiley, NewYork,1997. 50. Keqin Li, Stochastic bounds for parallel program execution times with processors constraints // IEEE Trans. on comp. 1997, vol. 46, № 5, p.630-636. 51. Г.Дейвид, Порядковые статистики, М.: “Наука”, 1979 г. 52. A. J.C. van Gemund, V. Cardeñoso Performance trade-offs in series-parallel programming models // Proceedings Eighth International Workshop on Compilers for Parallel Computers (CPC'00), Aussois, Jan. 2000, pp. 183-189. (http://citeseer.ist.psu.edu/302274.html). 53. K.Li, Y.Pan, On scheduling precedence constrained parallel tasks on multiprocessors // Proc. Int’l Conf. Modeling and Simulation, April, 1996., pp.63-75. 20 54. G. Bernat, A. Colin, S. M. Petters, WCET Analysis of probabilistic hard real-time systems // Proceedings of the 23rd Real-Time Systems Symposium RTSS 2002, December 3-5 , Austin, Texas, USA. 55. M. Colajanni, Lo Presiti, S.Tucci, A hierarchical approach for bounding the completion time distribution of stochastic task graph // Performance Evaluation, 2000, p.1-22. 56. T.Robinson, Some analysis techniques for asynchronous multiprocessor algorithms, IEEE Trans., Software Eng., 1979, vol. 5, №1. 57. H. J. Siegel, et al, Heterogeneous computing. Handbook of Parallel and Distributed Computing, A. Y. Zomaya, ed., 1996, McGraw-Hill, New York, NY, pp. 725-761. 58. M. J. Flynn. Very high-speed computing systems.// Proc. IEEE,1996, 54, №12, p.1901– 1909. 59. Abdul-Rahman M. Abouammoh and Isa S. Qamber new better than renewal-used classes of life distributions] , IEEE Trans. on Relaib., 2003, vol. 52, № 2, pp 150-153. 60. Gonzalez Escribano, A.J.C. van Gemund, V. Cardenoso Payo, Predicting the impact of implementation level aspects on parallel application performance // Proceedings Ninth International Workshop on Compilers for Parallel Computers (CPC'01), Edinburgh, June, 2001. 61. A.Kalavade, P. Moghе. A tool for performance estimation of networked embedded end-systems, // DAC98, 1998, San Francisco, CA USA, p .257-262. 62. A. J.C. van Gemund. Compile-time performance prediction of parallel systems Computer Performance Evaluation // Modelling Techniques and Tools (H. Beilner and F. Bause, eds.), LNCS 977, Springer-Verlag, Sept. 1995, p. 299-313 (также http://citeseer.ist.psu.edu/vangemund94accuracy.html]. 63. Arjan J. C. van Gemund. Symbolic performance modeling of parallel systems // IEEE Trans. Parallel Distrib. Syst., 2003, vol. 14, № 2, 154-165. 64. H. Gautama, A Probabilistic approach to the analysis of program execution time // Tech. Rep. 1-68340-44, 1998, Delft University of Technology, Delft, The Netherlands, 21 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 1998,.http://citeseer.nj.nec.com/gautama98probabilistic.ht m H. Gautama and A. J.C. van Gemund. Static performance prediction of data-dependent programs // Proceedings of International Workshop on Software and Performance, September 2000, Ottawa, Canada, p. 216-226. Hasyim Gautama, A. J.C. van Gemund. Symbolic performance prediction of data-dependent parallel programs // LNCS 2324, Springer-Verlag, 2002. Field, P.G. Harrison, J. Bradley, U. Harder (Eds.) Computer Performance evaluation: modelling, techniques and tools // 12th International Conference, TOOLS, April 14-17 2002, London, UK. Ramberg, J.S. et al. A probability distribution and its uses in fitting data // Technomerics, 1979, vol. 21, №. 2, p. 201– 214. Jean-Louis Camus and Thierry Le Sergent. Combining SDL with synchronous data flow modelling for distributed control systems // R. Reed and J. Reed (Eds.): SDL2001, LNCS 2078, Springer-Verlag, 2001, pp. 1–18. E. H. Jonkers, A. J. C. van Gemund, G. L. Reijns: A probabilistic approach to parallel system performance modelling //HICSS, 1995, vol.2, p. 412-421. A.J.C. van Gemund, On the accuracy of compiletime performance prediction // Tech. Rep. 1-6834044, Sept. 1994, Delft University of Technology, Delft, The Netherlands, http://citeseer.ist.psu.edu/vangemund94accuracy.html. A.J. C. van Gemund. Compile-time performance prediction of parallel systems // Proceedings of 8th International Conference on Modelling Techniques and Tools for Computer Performance Evaluation, Performance Tools '95,. LNCS 977, 1997, Springer-Verlag, p. 299-313. Котов В.Е. Сети Петри. М.:Наука,1984. Питерсон Дж. Теория сетей Петри и моделирование систем. М.:Мир,1986. 75.Hillston, J A Compositional approach to performance modelling, 1996, Cambridge University Press. 22 76. Ramesh, S. and H. Perros. A Multilayer client-server queueing network model with synchronous and asynchronous messages // IEEE Trans. on Soft. Eng., 2000, vol.26, № 11, p. 1086-1100. 77. L. Hu and I.Gorton. Performance evaluation for parallel systems // Australia, UNSW-CSE-TR-9707, October 1997 - http://citeseer.ist.psu.edu/363904.html. 78. P H. Hermanns and J.-P. Katoen. Performance evaluation := (Process Algebra +Model Checking) ×Markov Chains // CONCUR2001, LNCS 2154, Springer-Verlag, pp.59. 79. Aquilani, F., P. Balsamo. Performance analysis at the software architectural design level //. Performance Evaluation, 2001, vol. 45, p.147–178. 80. J. Hillston, L. Recalde, M. Silva, and M.Ribaudo. A comparison of the expressiveness of SPA and bounded SPN models // Proc. of the 9th International Workshop on Petri Nets and Performance Models, September 2001, Aachen (Germany). 81. R L. Sites, Anton Chernoff, Matthew B. Kirk, Maurice P. Marks, and Scott G. Robinson. Binary Translation // Digital Technical Journal, 1992, vol. 4, №. 4. 82. A. Marsan, G. Balbo, and G. Conte. A class of generalized stochastic Petri nets for the performance analysis of multiprocessor systems // ACM Transactions on Computer Systems, May 1984, vol.2, № 1. 83. Y. Choi and S. A. Reveliotis. A Generalized stochastic Petri net model for performance analysis and control of capacitated re-entrant lines // IEEE Trans. on Robotics & Automation, 2003,, vol. 19, № 3, p. 474-480. 84. Z. Liu. Performance Analysis of stochastic timed Petri nets using linear programming approach // INRIA, № 2642, 1995, http://www.inria.fr/RRRT/RR-2642.html. 85. G. Chiola, M. Ajmone Marsan, G. Balbo, and G. Conte. Generalized stochastic Petri nets: A Definition at the net level and its implications // IEEE Transactions on Software Engineering, 1993, vol.19, № 2, p.89–107. 86. F. Baccelli. Ergodic theory of stochastic Petri nets // The Annals of Probability, 1992, vol. 20, p. 375-396. 23 87. Baccelli and Miguel Canales. Parallel simulation of stochastic Petri Nets using recurrence equations // Rapports de Recherche No 1520INRIA-Sophia 06565 Valbonne (France) December 16, 1992. 88. Д. Бертсекас, Р.Галлагер. Сети Передачи Данных. М.: «Мир», 1989. 89. G. Chiola, et al, Operational analysis of timed Petri nets and applications to the computation of performance bounds // Proc. 5th Intern. Workshop on Petri Nets and Performance Models, Toulouse, France, October 1993, p.128–137. 90. G. Balbo, G. Chiola, G. Franceschinis, and G. Molinar Roet. On the efficient construction of the tangible reachability graph of generalized stochastic Petri nets // Proc. Int. Workshop on Petri Nets and Performance Models, August 1987, Madison, WI, USA. IEEE-CS Press. 91. GreatSPN User’s Manual, version 2.02, 2001, http://www.di.unito.it/~greatspn/index.html. 92. M. A. Marsan, G. Balbo, G. Conte, S. Donatelli, and G. Franceschinis. Modelling with Generalized Stochastic Petri Nets. 1995, John Wiley. 93. S. C. Allmaier, M. Kowarschik, and G. Horton. State space construction and steady-state solution of GSPNs on a shared-memory multiprocessor // Proc. 7th Int. Workshop on Petri Nets and Performance Models (PNPM'97), June 1997, St. Malo, France, p. 112-121. 94. P. Buchholz and P. Kemper. Numerical analysis of stochastic marked graphs // Proc. 6th Int. Workshop on Petri Nets and Performance Models (PNPM'95), Oct. 1995, Durham, NC, p. 32-41. 95. M. A. Marsan et al. The Effect of execution policies on the semantics and analysis of stochastic Petri nets // E Transactions on Software Engineering, 1989, vol.15, № 7, p.832-845. 96. Б. Вирбицкайте, Е.А. Покозий. Метод Параметрической верификация временных сетей Петри // Программирование, 1999, № 4. 24 97. J. Bechta Dugan, K. Trivedi, R. Geist, and V.F. Nicola. Extended stochastic Petri nets: applications and analysis // Proceedings PERFORMANCE '84, 1984 Paris. 98. J.Saavedra-Barrera, R.H.. CPU Performance evaluation and execution time prediction using narrow spectrum benchmarking // Ph.D. Thesis, U.C. Berkeley, Technical Report No. UCB/CSD 92/684, February 1992. 99. R. Saavedra-Barrera and A.Smith. Analysis of benchmark characterisric and bencmark prediction // ACM Trans.on CS, 1996, Vol.14. 100. W.J. Stewart. An introduction to the numerical solution of Markov chains, 1994, Princeton University Press, New Jersey. 101. A.Bobbio and A. Horva'th and M. Telek. PhFit: A general phase type fitting tool // Proceedings International Conference on Dependable Systems and Networks DSN2002, 2002, p 543. 102. A.Bobbio, A. Horváth, and M. Telek, The scale factor: A new degree of freedom in PHase type approximation '// Performance Evaluation, vol. 56:1-4, pp. 121-144, 2004. 103. C. Lindemannand stochastic Petri nets //Performance Evaluation, 1995, p. 22:3-21. 104. G. Ciardo, R. German, and C. Lindemann. A characterization of the stochastic process underlying a stochastic Petri net // IEEE Transactions on Software Engineering, 1994, vol. 20, № 7, p.507-515. 105. H. Choi, V.G. Kulkarni, and K. Trivedi. Markov regenerative stochastic Petri nets //Performance Evaluation, 1994, vol.20, p.337-357. 106. Aad P. A. van Moorsel, K. Wolter. Numerical solution of non-homogeneous Markov processes through uniformization // Proceedings ESM1998, 1998. 107. A.Bobbio, A. Puliafito, and M. Telek. A modeling framework to implement preemption policies in nonMarkovian SPNs // IEEE Transactions on Software Engineering, 2000, vol. 26, №. 1, p. 36—54. 25 108. R. German, Transient Analysis of deterministic and stochastic Petri nets by the method of supplementary variables // MASCOT'95, 1995. 109. Hoom Choi et al. Transient analysis of deterministic and stochastic Petri nets, in Application and Theory of Petri nets // LNCS 691, Springer-Verlag, 1993, p.166-185. 110. R. German, Performance analysis of communication systems: Modeling with non-Markovian stochastic Petri nets, John Wiley and Sons, Chichester, 2000,. 111. A. Horvath, M. Telek. Time domain analysis of NMSPN with PRI transitions // IEEE Tr. on Software Engineering, 2002, vol.28, № 10, p.933-943. 112. Zhen Liu. Performance analysis of stochastic timed Petri nets using linear programming approach // IEEE Trans. on Software Engineering, 1998, Vol. 24, № 11, p. 1014-1030. 113. S.Janson, Poisson approximation for large deviations // Random Struct Alg., 1990, vol. 1, p. 221–230. 114. Y. A. Liu and G. Gomez. Automatic accurate time–bound analysis for high–level languages // Proceedings of the ACM SIGPLAN Workshop on Languages, Compilers and Tools for Embedded Systems, LNCS, June 19–20 1998, p. 31–40. 115. P. Puschner and A. Burns. A Review of worst-case execution-time analysis // Real-Time Systems, May 2000, vol.18, № 2-3. 116. S. Balsamo, et al, Model-based performance prediction in software development: A Surve // IEEE Trans. on Software Engineering, May 2004, Vol. 30, № 5, p. 295-310. 117. X. Castillo and D.P. Siewiorek, A performance reliability model for computing systems // Proceedings 10 th International Symposium on Fault-Tolerant Computing, 1980, p. 187-192. 118. Фаулер М., Скотт К. UML в кратком изложении. Применение стандартного языка объектного моделирования. М.: Мир, 1999. 119. H. Gautama, A.J.C. van Gemund. On the use of Kolmogorov-Smirnov test in performance prediction of 26 fork-join parallel programs // Proceedings ISSM'02, Oct 2002, p. 477-480. 120. D. Towsley, et al. Analysis of fork-join program response times on multiprocessors // IEEE Trans. on Parallel and Distributed Systems, 1990 vol.1, № 3, p.286-303. 121. M.Siegle. Advances in models represenatiion // Process Algebra and Probabilistic Methods, Joint Int. Workshop LNCS 2162, 2001, Springer-Verlag, pp. 1-22. 122. H.Nabil, B.Sericoda. Performability Analysis: a New Algorithm // IEEE Trans. Comput., 1996, Vol.45, № 4, pp.491-494. 123. Abate, J., Choudhury, G. L. and Whitt, W. , On the Laguerre method for numerically inverting Laplace transforms // INFORMS J.Computing, 1996, № 8, p.413427. 124. Petri nets tools database, http://www.daimi.au.dk/PetriNets 125. López-Grao, J.P., Merseguer. J. and Campos, J. Performance engineering based on UML and SPN´s: A Software Performance Tool // Proceedings of the Seventeenth International Symposium on Computer and Information Sciences, Oct. 2002, CRC Press, Orlando, Florida, USA, p. 405-409. 126. S. Donatelli and G. Franceschinis. PSR Methodology: integrating hardware and software models // LNCS 1091, June 1996, p. 133–152. 127. M.Medina, J. M. Drake. MAST-UML: Visual modeling and analysis suite for real-time applications with UML // http://mast.unican.es/umlmast/ 128. Merseguer, J. and Campos, J. and Mena, Е., Performance analysis of Internet based software retrieval systems using Petri nets // Proceedings of the 4th ACM International Workshop on Modeling, Analysis and Simulation of Wireless and Mobile Systems, Rome, Italy, July 2001, p. 47-56. 129. G. Chiola, C. Dutheillet, G. Franceschinis, and S. Haddad. Stochastic well-formed coloured nets for symmetric modelling applications //IEEE Transactions on Computers, vol. 42, № 1 11, November 1993, p.1343–1360. 27 130. Campos, J. and Silva, M. Stochastic Petri Net Models // LNCS 609, Springer-Verlag, 1992. p. 352-391. 131. Merseguer, J. and Campos, J., Software Performance Modelling Using UML and Petri nets // LNCS 2965, 2004, p. 265-289. 132. K.Jensen. Coloured Petri Nets, 1991, Springer-Verlag. 133. Bobbio, A. Pulia, and M. Telek. A modeling framework to implement combined preemption policies in MRSPNs //IEEE Trans. on Software Engineering, 2000, vol. 26, №1, p. 36-54. 134. LopezBenitez, N. JaYoung Hyon, Simulation of task graph systems based on stochastic Petri nets // IEEE Heterogeneous Computing Workshop, April 1999, San Juan Puerto Rico. 135. C. Priami. Language-based performance prediction for distributed and mobile systems // INFCTRL: Information and Computation (formerly Information and Control),2002, 175(2), p.119-145. 136. S. Gilmore and J. Hillston. The PEPA Workbench: A Tool to support a process algebra-based approach to performance modelling // Proceedings of the Seventh International Conference on Modelling Techniques and Tools for Computer Performance Evaluation, LNCS 794 , Springer-Verlag, Vienna, May 1994, pp. 353–368. 137. J. Robinson. Some analysis techniques for asynchronous multiprocessor algorithms // IEEE Transactions on Software Engineering, 1979, vol. 5, № 1, p.24-31. 138. S. Balsamo, V.N. Persone , P.Inverardi. A review on queueing network models with finite capacity queues for software architectures performance prediction // Performance Evaluation, 2002, p.1–20. 139. C.U. Smith, L.G. Williams. Performance engineering evaluation of object-oriented systems with SPE • ED TM // LNCS 1245, 1997, p. 135–153. 140. M. Shaw and D. Garlan. Software Architecture: perspectives on an emerging discipline, 1996 .Prentice Hall. 28 141. D. E. Perry e A. L. Wolf. Foundations for the study of Software Architecture // ACM SigSoft Software Engineering Notes, 1992, vol. 17, №. 4, p.40-52. 142. D. C. Petriu, X. Wang "From UML Description of highlevel software architecture to LQN Performance Models // AGTIVE'99, LNCS 1779, Springer-Verlag, 2000. 143. Balsamo, S. and V. De Nitto Persone. A Survey of productform queueing networks with blocking and their equivalences // Annals of Operations Research, 1994, vol.48, p.31-61. 144. S. Balsamo, M. Bernardo, M. Simeoni. Perfomance evaluation at a Software Architecture level // Formal Methods for Software Architectures', LNCS2804, Springerverlag, September 2003, p. 209-260. 145. F. Andolfi, F. Aquilani, S. Balsamo. P. Inverardi. "Deriving performance models of Software Architectures from Message Sequence Charts // Proc. ACM Second Int. Workshop on Software and Performance (WOSP 2000), 2000, Ottawa, Canada, p. 17-20. 146. F. Aquilani, S. Balsamo, Inverardi P. Performance analysis at the Software Architectural design level // Performance Evaluation, 2001, 45, Issue 2-3, p. 147-178. 147. S. Balsamo, M. Simeoni.On Transforming UML models into performance models // WTUML: Workshop on Transformations in UML, ETAPS 2001 Satellite Event, Genova, Italy, Saturday April 7th, 2001. 148. W. J. Stewart. Stochastic automata networks // W. K. Grassmann, ed., Computational Probability, Kluwer Academic Press, Boston, 2000, pp. 113-152. 149. S. Ramani, K. S. Trivedi, B. Dasarathy. Performance analysis of the Corba Event Service using stochastic reward nets // Proceedings of the 19th IEEE Symposium on Reliable Distributed Systems, 2000, p. 209-260. 150. Plateau and K. Atif. Stochastic automata network for modelling parallel systems // IEEE Transactions on Software Engineering, 1991, vol.17, №10, p.1093-1108. 151. Mittelmann, H. Benchmarks for optimization software, http://plato.la.asu.edu/bench.html. 29 152. И.М.Гельфанд. Лекции по линейной алгебре, 5-е издание, 2000, РОО "Мир “Науки и Культуры", http://www.nature.ru/db. 153. P. Buchholz et al. Model-checking large structured Markov chains // Journal of Logic and Algebraic Programming, 2003, vol. 56, p. 69-97. 154. B. Plateau. On the stochastic structure of parallelism and synchronization models for distributed algorithms // Proc. ACM Sigmetrics, Aug. 1985. 155. Plateau and J. M. Fourneau. A methodology for solving Markov models of parallel systems // Journal of Parallel and Distributed Computing, 1991, vol. 12, p. 370-387. 156. G. Ciardo, A. S. Miner. A data, structure for the efficient Kronecker solution of GSPNs // Proceedings 8th Int. Workshop Petri Nets and Performance Models, 1998, p. 22-31. 157. Hubert Garavel 1 and Holger Hermanns. On Combining functional verification and performance evaluation Using CADP.-H.Eriksson and P.Lindsay (Eds.) // FME 2002, LNCS 2391, Springer-Verlag, 2002, p.410 –429. 158. Radu Marculescu, Amit Nandi. Probabilistic Application Modeling for System-Level Performance Analysis // Proceedings of Design, Automation, and Test in Europe (DATE '01) March 13 - 16, 2001, p. 572577. 159. R. E. Matick. Comparison of analytic closed mean-value analysis versus open-queuing theory for estimating cycles per instruction of memory hierarchies // IBM J. RES. & DEV., 2003, vol. 47, № 4. 160. M. Kant. Introduction to the computer systems performance evaluation, 1992, McGraw Hill Computer Science Serias, McGraw Inc., NY. 161. Дрейпер Н., Смит Г. Прикладной регрессионный анализ М., Статистика, 1973. 162. W.K. Newey: Semiparametric Efficiency Bounds // J. of Applied Econometrics, 1990, 5, p. 99-155. 163. Bourgeois, F. Spies, M.J. Zemerly and T. Delaitre. Chronos: A Performance characterisation tool inside the 30 EDPEPPS toolset // Journal of Supercomputing, 2000, vol. 15, № 2, p.123-140. 164. Иванников В.П. и др. О минимальном времени реализации распределенных конкурирующих процессов в синхронных режимах // Программирование, 2000, № 5, с.44-52. 165. Ортега Дж.., Введение в параллельные и векторные методы решения линейных систем, Москва, “Мир”, 1991. 166. Axelrod T., Effects of Synchronization Barriers on Multiprocessor Performance // Parallel Computing, 1986, №3, p. 129- 140. 167. Д. Кокс, В.Смит. Теория восстановления, М: “Советское Радио”, 1967. 168. Корнеев В.В. Параллельные вычислительные системы, Москва, “Нолидж”, 1999. 169. G.Andrews, Schnider F. Concepts and Notatins for Concurrent Programming // Comput. Surveys, 1983.p. 343. 170. Rahimov I.,Random Sums and Branching Stochastic Processes, Lecture Notes in Statistics, Springer Verlag, 1995. 171. Айвазян и др., Прикладная статистика, М.- Финансы и Статистика, 1983. 172. Ю.С. Хохлов. Псевдоустойчивые распределения и их области притяжения // Фундаментальная и Прикладная Математика 2(1996), 2, №, с.1143 1154. 173. Benning V.E., Korolev V.Yu. 2002, “Generalized Poisson Models”, VSP, Utrecht, 2002. 174. D.Bhandarkar and J.Ding. Performance Characterization of the Pentium Pro Processor // Proceedings of the Third international Symposium in High Performance Computer Architecture, Feb 1-5,1997, San Antonio, Texas, USA. 175. Гнеденко Б.В..Курс теории вероятностей, М.: “Наука”, 1970. 176. Поллард Дж., Справочник по вычислительным методам статистики, М.: “Финансы и Статистика”, 1982. 31 177. A. Pnueli. Specification and development of reactive systems // Information Processing, 1986, v.86, p.845-858. 178. J. F. Meyer. On evaluating performability of degradable computing systems. // IEEE Trans. on Computers, 1980, vol.29: №7, p. 20-31. 179. J.F. Meyer. Performability: a retrospective and some pointers to the future.// Performance Evaluation, 1992, vol.14 p.139 -156. 180. M.D.Beaudry. Performance-related reliability measures for computing systems // IEEE Transactions on Computers, 1978, № 6 p. 540-547. 181. E. J. Weyuker and A. Avritzer. Metric for predicting the performance of an application under a growing workload // IBM Systems Journal, 2002, vol. 41, № 1. 182. X. Castillo and D.P. Siewiorek. A performance reliability model for computing systems // Proceedings 10th International Symposium on Fault-Tolerant Computing, 1980, pp. 187-192. 183. A. Bobbio, M. Telek. The Task completion time in degradable systems // Proceedings 2nd International Workshop on Performability Modelling of Computer and Communication Systems (PMCCS2), 1993. 184. Reibman, R. Smith, and K.S. Trivedi. Markov and Markov reward model transient analysis: an overview of numerical approaches // European Journal of Operational Research, 1989, vol. 40, p.257-267. 185. A.Bobbio and L. Roberti. Distribution of the minimal completion time of parallel tasks in multi-reward semiMarkov models. Performance Evaluation, 1992, 14, p. 239256. 186. R. M. Smith, K. S. Trivedi, and A. V. Ramesh. Performability analysis: measures, an algorithm, and a case study // IEEE Transactions on Computers, 1988, № 4. 187. V. G. Kulkarni, V. F. Nicola, and K. S. Trivedi. The completion time of a job on multi-mode systems // Advances in Applied Probability, 1987, vol. 19, №12, p. 932-954. 32 188. L.Donatiello, V. Grassi, On Evaluating the cumulative performance distribution of fault-Tolerant Computer Systems. // IEEE Trans. Comput., 1991, vol. 40, № 11, p.1302-1307. 189. S.M.R Islam. Performability Analysis of Distributed RealTime Systems // IEEE Trans. Comput.,1991. vol.40, № 11, p.1239- 1251. 190. H.Nabil, B.Sericoda. Performability analysis: a new algorithm, //IEEE Trans.Comput., 1996, Vol.45, № 4, p.491-494. 191. Abate, J. and Whitt, W. Numerical inversion of Laplace transforms of probability distributions // Computing, 1995, № 7, p. 36-43. 192. Abate, J. and Whitt, W. An operational calculus for probability distributions via Laplace transforms. // Adv. Appl. Prob., 1996, vol. 28, p. 75-113. 193. Abate, J. and Whitt, W. The Fourier-series method for inverting transforms of probability distributions // Queueing Systems, 1992, 10, p. 5-88. 194. Abate, J., Choudhury, G. L. and Whitt, W. On the Laguerre method for numerically inverting Laplace transforms // INFORMS J.Computing, 1996, 8, p. 413-427. 195. Abate, J., Choudhury, G. L. and Whitt, W. Waiting-time tail probabilities in queues with long-tail service-time distributions // Queueing Systems, 1994, 16, p. l311-338. 196. Abate, J., Choudhury, G. L. and Whitt, W. Numerical inversion of multidimensional Laplace transforms by the Laguerre method // Performance Evaluation, 1998, 31, 229-243. 197. D.L. Jagerman. An inversion technique for the Laplace transform // Bell System Technical Journal, 1982, vol.61, p. 1995-2002. 198. V.G. Kulkarni, V.F. Nicola, and K. Trivedi. The completion time of a job on a multi-mode system // Advances in Applied Probability, 1987, vol. 19, p. 932954. 199. Grassi, L. Donatiello, S. Tucci. On the Optimal checkpointing of critical tasks and transaction-oriented 33 systems // IEEE trans. soft Eng 1992, vol. 18, №. 1, p. 7277. 200. S.M.R Islam, Performability Analysis of Distributed RealTime Systems // IEEE Trans. Comput,1991, vol. 40, № 11, p.1239- 1251. 201. R. German, C. Linderman, Analysis of stochastic Petri nets by the method of supplementary variables // Performance Evaluation, May 1994, vol. 20, № 1-3, p. 317-335. 202. Karin Hogstedt, Larry Carter, and Jeanne Ferrante. The parallel execution time of tiled loops // IEEE Trans. on Paral. and Distrib Syst, 2003, vol. 14, № 3, p.307-321. 203. Sorin Manolache, Petru Eles, Zebo Peng. Schedulability analysis of multiprocessor real-time applications with stochastic task execution times // ICCAD 2002, p. 699706. 204. Osogami and M. Harchol-Balter, "Necessary and Sufficient Conditions for Representing General Distributions by Coxians // The 12th International Conference on Modelling Tools and Techniques for Computer and Communication System Performance Evaluation (TOOLS2003), 2003, p.182-199, http://www.cs.cmu.edu/~osogami/publication.html. 205. C-Z. XU, L-Y. WANG AND N-T. FONG. Stochastic prediction of execution time for dynamic bulk synchronous computations // The Journal of Supercomputing, 2002, vol.21, №1, p.91 –103. 206. В.Ю. Королев, Смешенные гауссовские вероятностные модели реальных процессов. M.: МАКС Пресс, 2004. 207. Frederick Abou Jawad & Eric Johnsen, http://www.doc.ic.ac.uk/~nd/surprise_95/journal/vol4/eaj2/ report.html, 1995. 208. Балк В.М. Основы сетей Петри, 1998 г, http://www.smolensk.ru/user/sgma/MMORPH/. 209. W. S. Cleveland and S. J. Devlin. Locally-weighted regression: an approach to regression analysis by local 34 fitting // Journal of the American Statistical Association, 1988, 83, pp. 596-610. 35 36