Методика расчета вычислительной мощности программно-аппаратного комплекса для проведения ЕГЭ в компьютерной форме

счет уменьшения минимально необходимого количества состояний. Предложена методика моделирования электронных курсов в среде Stateflow системы Matlab.

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

Литература

1. Васильев В.Н., Лисицына Л.С., Лямин А.В. Совершенствование СППК в области ИКТ на основе технологий сетевой ИС // Опыт использования сетевых информационных технологий и систем в образовательной и научно-методической деятельности. Сборник научно-методических статей. - СПб: СПбГУ ИТМО, 2007. - С.75-77.

2. Лямин А.В., Плешкова М.В. Разработка среды программирования структуры электронных курсов // Научно-технический вестник СПбГУ ИТМО. Выпуск 45. Информационные технологии. - СПб: СПбГУ ИТМО, 2007. - С.164-166.

3. Лямин А.В., Плешкова М.В. Программирование структуры электронного курса // Труды XIV Всероссийской научно-методической конференции «Телематика'2007». - Санкт-Петербург, 2007. - Т. 1. - С. 211-212.

Плешкова Мария Витальевна

Лямин Андрей Владимирович

Санкт-Петербургский государственный университет информационных технологий, механики и оптики, аспирант, maria@cde.ifmo.ru

Санкт-Петербургский государственный университет информационных технологий, механики и оптики, кандидат технических наук, доцент, lyamin@cde.ifmo.ru

УДК 004.942

МЕТОДИКА РАСЧЕТА ВЫЧИСЛИТЕЛЬНОЙ МОЩНОСТИ ПРОГРАММНО-АППАРАТНОГО КОМПЛЕКСА ДЛЯ ПРОВЕДЕНИЯ ЕГЭ В КОМПЬЮТЕРНОЙ ФОРМЕ

А.А. Скшидлевский, А.В. Лямин

Статья посвящена вопросам проектирования и развертывания больших программно-аппаратных комплексов, выбору оптимального варианта конфигурации аппаратной базы. Разработанная методика и алгоритмы позволяют определить ряд характеристик аппаратной части комплекса для проведения ЕГЭ в компьютерной форме, основываясь на заданном количестве пользователей в системе. Ключевые слова: имитационное моделирование, методика, алгоритмы, программно-аппаратные комплексы.

Введение

Выбор оборудования и аппаратных мощностей для развертывания больших распределенных программных комплексов, таких как система для проведения ЕГЭ в компьютерной форме, всегда очень сложен [1]. Сложность заключается в оценке нагрузки на оборудование при использовании системы большим количеством пользователей. Единственным способом выяснить, сколько пользователей выдержит та или иная конфигурация, являются испытания на реальном серверном оборудовании, а это уже предполагает наличие оборудования, т.е. его приобретение. Какое оборудование необходимо приобрести - в данном случае определя-

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

Для решения данной проблемы была разработана методика, позволяющая оценить необходимую вычислительную мощность программно-аппаратного комплекса для обеспечения работы заданного количества пользователей в системе, на примере системы для проведения ЕГЭ в компьютерной форме. Оценке подлежит количество вычислительных ядер на сервере, объем оперативной памяти и пропускная способность Интернет-канала. Данная методика дает математическое обоснование для выбора оборудования, основанное на результатах прогнозирования поведения конкретной системы, и необходима при проектировании и развертывании подобных систем. В основе методики лежит имитационное моделирование, которое включает в себя несколько этапов:

- построение структуры имитационной модели серверной части системы;

- апробация системы и сбор статистической информации;

- анализ статистических данных и определение необходимых для моделирования параметров;

- оценка адекватности имитационной модели;

- экспериментальные исследования модели серверной части системы;

- расчет зависимостей на основе данных моделирования.

Построение имитационной модели

Первым этапом в разработке методики является построение имитационной модели [2]. По определению, имитационная модель - это математическая модель изучаемой системы, предназначенная для использования в процессе машинной имитации [3]. От точности построения этой модели, а также от выбора входных и выходных параметров зависит адекватность всех результатов моделирования. Модель должна быть максимально приближена к реальной системе и учитывать все факторы, которые могут влиять на результат работы системы. Чем детальнее проработана модель, тем точнее будут полученные с помощью нее результаты. На рис. 1 приведена построенная имитационная модель системы для проведения ЕГЭ в компьютерной форме.

Рис. 1. Схема имитационной модели

Имитационная модель реализована в среде MATLAB [4]. Данная модель учитывает влияние отдельных компонентов на сервере с несколькими вычислительными ядрами. Входными параметрами имитационной модели являются:

- количество пользователей в системе g;

- количество ядер на сервере m;

- среднее время обслуживания запросов одним вычислительным ядром ;

- средний интервал времени между поступлением запросов к системе д$ .

Параметр д$ считается по формуле д $ = , где дН - интервал времени между

g

обращениями к системе одного пользователя.

Данная схема предполагает наличие двух генераторов псевдослучайных последовательностей для времени обслуживания запросов R и интервалов между поступлением запросов S . Время обслуживания каждого запроса является случайной величиной, не коррелированной с интервалами поступления запросов.

Изначально в системе задается множество пользователей g. Каждый пользователь через случайные интервалы времени H генерирует требование со случайным интервалом времени обслуживания R. Каждое требование обрабатывается в три этапа одним из вычислительных ядер m. Только что поступившее требование имеет состояние «A», так как первый этап - это обработка требования веб-сервером Apache. После завершения первого этапа состояние требования меняется на «Т», и оно поступает на обработку веб-сервером Tomcat. Завершающим этапом является обработка требования системой управления базой данных Oracle, перед этим состояние требования меняется на «O». Требования от пользователей поступают и обрабатываются на протяжении всего времени моделирования.

Если при поступлении требования все вычислительные ядра заняты, требование становится в очередь. Очередь организована по принципу «первый пришел - первый ушел». При переполнении очереди происходит отказ в обслуживании требования, и оно исключается из дальнейшей обработки.

Оценке подлежат следующие параметры:

- коэффициент использования системы р;

- средняя задержка в очереди d;

- среднее время ожидания w;

- среднее по времени число требований в очереди Q;

- среднее по времени число требований в системе L.

Сбор и анализ статистической информации

Для вычисления оценок параметров имитационной модели были проведены апробации системы и собраны соответствующие данные. Апробация системы проводилась в двух регионах Российской Федерации по схеме с использованием кластерных технологий для территориально распределенных узлов. Собранные данные относятся к работе системы на серверах с процессором UltraSPARC IV 1.35 ГГц под управлением операционной системы Solaris 10. В качестве веб-серверов использовались Apache 2 и Tomcat 6. Система управления базой данных - Oracle 10g. В расчет принималась следующая информация:

- количество пользователей в системе;

- время обработки запросов сервером;

- загрузка ядер процессора на сервере;

- использование памяти на сервере;

- пропускная способность Интернет-канала.

пользователей

Рис. 2. Зависимость времени ответа сервера от количества пользователей в системе

обращений / с

Рис. 3. Зависимость времени ответа сервера от количества обращений к системе за секунду

Исходя из собранных данных, среднее время обработки одного запроса одним вычислительным ядром на сервере с процессором UltraSPARC IV составляет 850 мс. Интервал между поступлениями запросов от одного пользователя в среднем составляет 38 с. На основе полученных данных была выведена зависимость времени ответа сервера от количества обращений к системе за секунду и от количества пользователей в системе. Данные зависимости отображены на рис. 2 и 3. При этом оптимальная нагрузка на один

сервер с четырьмя 2-ядерными процессорами UltraSPARC IV составляет 8 обращений к серверу за секунду, что примерно эквивалентно 300 пользователям в системе.

а

н т ю н о

<U

е р

12000

10000

8000

6000

4000

2000

""1......................................... 1 1 /

] 1 [! /

1 / 1 1 1 1 /

1 / 1 1 1 1 1 / / * *

/ / 1 1 1 / г t

/ / у/ ш м  / *

1 1 .........................................1..........................................1.........................................

100

200

300

400

500

600

700

800

пользователей

сервер

модель

Рис. 4. Сравнение данных по производительности системы для имитационной модели и реального сервера

Оценка адекватности имитационной модели

Далее была проведена оценка адекватности имитационной модели. На рис. 4 показаны графики зависимости времени ответа сервера от количества пользователей в системе для реального сервера и имитационной модели с разными входными данными. Характер реакций реального сервера и имитационной модели совпадает, что говорит об адекватности имитационной модели.

Моделирование серверной части системы и расчет зависимостей

После того, как построена имитационная модель, собраны все необходимые данные, проведена оценка адекватности модели, идет следующий этап - моделирование системы и расчет зависимостей по результатам моделирования [2, 5].

Определение необходимого числа экспериментов

Эксперимент представляет собой прогон созданной компьютерной имитационной модели. Количество необходимых прогонов п определяется по формуле

=2

n =

¡(9; 0,5125)<

где ¿(9. 05125) = 2.262 - квантиль распределения Стьюдента с девятью степенями сво-

2

боды порядка 0,975, < - оценка дисперсии наблюдений, в - точность оценивания, равная 1% от среднего значения параметра. В табл. 1 приведены результаты предвари-

0

0

2

s

тельных прогонов. Таким образом, необходимое количество прогонов для каждой точки факторного плана будет составлять 18.

^0 ^0 Р й w е Ь

1 1622718208 637808128 0,7046 0,0568 0,9427 0,0389 5,6760

2 1885565696 1954793472 0,7021 0,0565 0,9324 0,0374 5,6546

3 42013824 1636720640 0,7036 0,0565 0,9362 0,0373 5,6665

4 93708672 184094208 0,7052 0,0565 0,9395 0,0372 5,6791

5 1347465280 1700077696 0,7047 0,0565 0,9398 0,0372 5,6748

6 1082365216 221137792 0,7068 0,0580 0,9414 0,0375 5,6916

7 1903783040 19048960 0,7056 0,0574 0,9431 0,0377 5,6821

8 1286922736 1380240160 0,7049 0,0574 0,9416 0,0377 5,6769

9 216738304 347292928 0,7045 0,0557 0,9399 0,0383 5,6745

10 189554432 1182352640 0,7030 0,0548 0,9375 0,0361 5,6603

Оценки

€ 0,7045 0,0566 0,9394 0,0375 5,6736

«2 1,78-10-6 8,1878-10-7 1,0743-10-5 5,4011-10-7 1,1486-10-4

Количество экспериментов

8 0,007 0,0006 0,0094 0,0004 0,0567

п 1 12 1 18 1

Таблица 1. Результаты предварительных прогонов

Планирование экспериментов с помощью полного факторного плана

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

При моделировании перед выполнением прогонов модели планирование экспериментов позволяет решить, какие именно конфигурации следует создавать, чтобы получить необходимую информацию при наименьшем объеме моделирования.

Стратегией, с помощью которой можно измерять взаимодействие, является факторный план типа , называемый еще полным факторным планом. Выбираются два

уровня каждого фактора, а затем проводятся имитационные прогоны для каждой из 21 возможных комбинаций уровней факторов, называемых точками плана. Обычно знак «-» связывается с одним уровнем фактора, а «+» - с другим. В целом уровни должны быть противоположны друг другу, но в реальных пределах. Уровни нельзя указывать так, чтобы они были на большом расстоянии друг от друга, иначе могут скрыться важные аспекты отклика.

Для составления плана эксперимента выделим следующие факторы: количество ядер т, среднее время поступления , среднее время обработки д^ . Выбранные значения уровней определяются следующими условиями:

- максимизация установившегося значения коэффициента использования системы,

- сохранение ограниченности средней задержки в очереди, среднего числа требований в очереди и системе для каждого набора значений уровней.

В табл. 2 представлена схема кодирования выбранных уровней факторов.

Фактор - +

т 7 8

Да 0,125 0,152

Д я 0,8 0,85

Таблица 2. Схема кодирования для факторов т , да и дя

Точка плана т Да Д я € € т€ ё €

1 - - - 0,9052 0,1794 0,9708 0,9021 7,2386

2 + - - 0,7924 0,0843 0,8769 0,1828 6,5223

3 - + - 0,7551 0,0680 0,8689 0,0961 5,3816

4 + + - 0,6645 0,0423 0,8649 0,0136 5,3298

5 - - + 0,964 0,3538 1,2215 2,3304 9,0783

6 + - + 0,8506 0,1197 0,9717 0,4014 7,2063

7 - + + 0,802 0,1002 0,9747 0,2093 5,8233

8 + + + 0,7049 0,0575 0,9391 0,0395 5,6784

3

Таблица 3. Матрица и результаты моделирования для факторного плана типа 2

Результаты эксперимента представлены в табл. 3. Запись такого массива, называемого матрицей плана, обеспечивает вычисление эффектов факторов и взаимодействий между ними. Всего выполнялось п = 18 независимых повторных прогонов имитационной модели на каждую точку плана. Для каждого прогона использовались разные последовательности случайных чисел, статистические счетчики переводились в исходное состояние в конце каждого прогона, и при каждом прогоне использовались одни и те же исходные условия.

Каждый отклик представляет собой среднее значение 18 независимых прогонов с постоянными для каждой точки плана параметрами т, да и Дя .

Построение уравнения регрессии

Имитационную модель можно рассматривать как механизм преобразования входных параметров в выходные показатели работы. В этом смысле моделирование является всего лишь функцией с неизвестной явной формой.

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

нашли модели в виде алгебраических полиномов. Для факторного плана 2 полиномиальная регрессионная модель будет иметь вид

у = Яд + а^ + 02 х°2 + аз Х3 + а.у2Х1Х2 + Оз Х1Х3 + 023 Х2 Х3 + а^з Х1Х2Х3 ,

где у - отклик, Х1, Х2, Х3 - факторы, ад, ау, а2, 03, а^, 013, 023, 0123 - неизвестные коэффициенты. В табл. 4 приведены оценки коэффициентов выбранной регрессионной

модели, найденной по методу наименьших квадратов, которые позволяют спрогнозировать реакцию откликов р, ё, , Q и Ь на изменение факторов т, и д^ .

Коэффициент P d w Q L

a0 0,7924 -16,3677 -18,1130 -143,4729 -142,4250

ai -0,2073 1,8235 2,0000 15,8329 14,8358

a2 -0,8208 -9,1661 -13,8138 -71,4728 -33,5881

a3 2,8987 24,9710 28,9047 217,2222 231,0124

a12 0,8304 2,4442 3,1991 22,4286 23,5160

a13 -0,0106 -2,7998 -3,1372 -24,3753 -23,2856

a23 -13,1383 -16,1852 -16,5599 -154,3389 -259,3334

a123 -0,0077 0,1571 0,1601 1,4455 1,3685

Табл. 4. Коэффициенты модели регрессионных уравнений

В частности, подставляя полученные коэффициенты в формулу (1), получим уравнение зависимости коэффициента использования системы с фиксированным средним временем обработки требований 0,85 с от количества вычислительных ядер на сервере и среднего интервала времени поступления требований в систему, который обратно пропорционален количеству пользователей в системе:

р = 3,3-0,2 •m-nS-

В качестве характеристики вычислительной мощности взят коэффициент использования системы, рекомендуемое значение которого составляет 0,7. Таким образом, используя формулу (2), по количеству пользователей в системе можно определить необходимое число вычислительных ядер на сервере.

Расчет необходимого объема оперативной памяти и пропускной способности Интернет-канала

Для расчета необходимого минимального объема оперативной памяти на сервере V Мбайт и пропускной способности Интернет-канала C кбит/c выведены формулы, полученные на основе апробаций системы при проведении ЕГЭ в компьютерной форме: V = V0 + 2-g +18-N , C = 16-N,

где V) - минимальное количество памяти, выделяемое под операционную систему

Solaris, систему управления базой данных Oracle, веб-серверы Apache и Tomcat; g

N =--количество обращений к серверу за секунду.

^ H

Заключение

Представленная в работе имитационная модель и методика позволяет определить ряд характеристик аппаратной чести комплекса для проведения ЕГЭ в компьютерной форме, основываясь на заданном количестве пользователей в системе. Адаптация имитационной модели к конкретной схеме организации системы позволяет применять эту методику и для других возможных конфигураций комплекса.

Полученные в работе результаты являются основой для построения регрессионных моделей программно-аппаратных платформ, отличающихся от рассмотренной в данной статье.

Литература

1. Таненбаум Э., ван Стен М. Распределенные системы. Принципы и парадигмы. -СПб: Питер, 2003. - 877 с.

2. Кельтон В., Лоу А. Имитационное моделирование. - 3-е изд. - СПб: Питер; Киев: Издательская группа БИУ, 2004. - 847 с.

3. Трусова П.В. Введение в математическое моделирование: Учеб. пособие. - М.: Логос, 2005. - 440 с.

4. Иглин С.П. Математические расчеты на базе МаЙаЬ. - СПб: Издательство «БНУ-Санкт-Петербург», 2005. - 640 с.

5. Максимова Ю.Д. Вероятностные разделы математики. - СПб: «Иван Федоров», 2001. - 592 с.

Скшидлевский Антон Алексеевич

Лямин Андрей Владимирович

- Санкт-Петербургский государственный университет информационных технологий, механики и оптики, аспирант, anton@cde.ifmo.ru

- Санкт-Петербургский государственный университет информационных технологий, механики и оптики, кандидат технических наук, доцент, lyamin@cde.ifmo.ru

УДК 004.02; 004.58

КООРДИНАЦИЯ УПРАВЛЯЮЩИХ ВОЗДЕЙСТВИЙ ПРИ ФОРМИРОВАНИИ ПРОФЕССИОНАЛЬНОЙ КОМПЕТЕНТНОСТИ В ПРОГРАММИРОВАНИИ Н.Ф. Гусарова, Г.О. Котелкова, В.А. Синицын, Ф.А. Смирнов

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

Введение

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

Актуальность и комплексный характер проблемы инспирируют множество подходов к ее решению. Так, исследования, проводимые в течение нескольких лет в СПбГУ ИТМО [1, 2], позволили раскрыть социально-психологические (в том числе де-