ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 06.04.2021
Просмотров: 2207
Скачиваний: 4
140
Измерения проводятся в условиях реальной работы операционной системы с учетом
непредсказуемых задержек, связанных с работой планировщика процессов. Данное
требование приводит к тому, что достоверно и точно нельзя измерить значение
времени работы исследуемой функции. Всегда будет некоторый разброс времени.
Учитывая это требование, в алгоритм вводится блок статистического анализа ре-
зультатов измерений, позволяющий оценить их достоверность. Используется три
критерия оценки достоверности:
1. Критерий Пирсона (Хи-квадрат).
2. Разброс результатов измерений не превышает двух процентов значения изме-
ряемой величины. Если разброс времени был больше, то пытаемся применить
третий критерий.
3. Третий критерий — это на гистограмме частот можно выделить интервал
шириной более 80 %, который удовлетворяет критерию Пирсона.
Таким образом, общий алгоритм измерения времени организован следующим обра-
зом. Задается некоторое начальное число итераций выполнения измеряемой функ-
ции и объявляется первый раунд измерений. Выполняется раунд измерений, кото-
рый состоит из цикла запусков измеряемой функции. По окончанию раунда произво-
дится статистический анализ результатов измерений в соответствии с описанными
выше критериями. Если по какому-то из трех критериев будет признано, что резуль-
таты измерений положительными, то процедура прекращается и среднее значение
за все итерации текущего раунда объявляется результатом измерений. В противном
случае запускается следующий раунд, который состоит в увеличении числа итера-
ций в два раза. Алгоритмически задано, что может происходить не больше шести
раундов измерений. Если за все шесть раундов не удается добиться выхода на ка-
кой-либо критерий, результаты следует повторить измерения сначала.
2.
Результаты измерений
Описанный алгоритм реализован в виде программного средства на языке C++.
В работе на данный момент подготовлено три группы тестов:
1. однопоточная запись в общий массив памяти (порядка 80% общего размера
доступной памяти) блоками по
k
мегабайт;
2. многопоточная запись в общий массив память блоками по 500МБ
N
количе-
ством потоков при: а) отключенной привязке к ядру; б) включенной привязке
потока к процессору; в) включенной привязке потока к ядру;
3. копирование данных из памяти одного NUMA-узла в другой блоками разме-
ром по 500МБ.
Описанные тесты запускались на узлах вычислительного кластера центра коллек-
тивного пользования “Дальневосточный Вычислительный Ресурс” ДВО РАН. Ис-
пользовалось два типа узла:
Сборник материалов XXXVII Дальневосточной Математической Школы-Семинара
имени академика Е.В. Золотова, Владивосток, 8 – 14 сентября 2013 г.
141
1. Стандартный расчетный узел (AMD). Имеет четыре 12-ядерных процессора
AMD Opteron 6164HE с частотой 1.7 ГГц (кэш L1 = 12 x 128 КБ (64+64), L2
= 12 x 512 КБ, L3 = 2 x 6 МБ).
2. Гибридный расчетный узел (Intel). Имеет два 4-ядерных процессора Intel Xeon
L5609 с частотой 1.87 ГГц (кэш L1 = 4 x 64 КБ (32+32), L2 = 4 x 256 КБ, L3
= 12 МБ).
Были получены следующие основные результаты
2.1.
Первая группа тестов
Первая группа тестов предназначена для оценки производительности работы
памяти при последовательной записи одним потоком. Результаты измерений пока-
заны на рисунке 1 (шкала по оси OY является логарифмической; диапазон значе-
ний от 10 мкс до 1 с реального времени). Видно, что гибридный вычислительный
узел в среднем на 25 % быстрее стандартного вычислительного узла. Более того на
объемах блоков не превышающих размер кэш-памяти L3 (0.5, 1, 3 МБ) процессор
Intel показал двукратное ускорение по сравнение с процессором AMD. Получен-
ные результаты сравнивались с широко известной утилитой тестирования памяти
memtest86+ [3], которая также показала, что подсистема памяти на узлах с процессо-
ром Intel работает в два раза быстрее, чем на узлах с процессором AMD. Учитывая,
что конфигурация памяти на обоих узлах является практически одинаковой (у Intel
модули памяти работают даже на меньшей частоте DDR3-1066 против DDR1333 у
AMD), то можно сделать вывод, что контроллер памяти у процессора Intel более
производительный.
0.000010
0.000100
0.001000
0.010000
0.100000
1.000000
0.5
1
3
6
10
20
50
100
200
500
время, с
k, МБ
AMD
Intel
Рис. 1.
Производительность блочной записи в память
2.2.
Вторая группа тестов
Второй группой тестов измерялась производительность при выполнении различ-
ным количеством параллельных потоков последовательной записи произвольных
данных в память. Результаты измерений показаны на рисунке 2. Левый график
отображает производительность память на узле с процессорами AMD, правый на
узле с процессорами Intel. Тестирование проводилось для трех режимов диспетче-
ризации потоков. Тонкой пунктирной линией отображается режим, когда привязка
Сборник материалов XXXVII Дальневосточной Математической Школы-Семинара
имени академика Е.В. Золотова, Владивосток, 8 – 14 сентября 2013 г.
142
потока осуществляется по ядрам, то есть сначала выделялись ядра одного процес-
сора, потом второго и т.д. Видно, что насыщение в этом режиме наступает тогда,
когда полностью задействован один процессор (12 ядер). Дальнейшее увеличение
числа потоков не оказывает влияния на скорость записи данных, так как каждый
процессор обладает собственными каналами доступа к памяти. Толстым пунктиром
показан режим, когда привязка поток осуществляется по процессорам, то сначала
выделяет первое ядро первого процессора, потом первое ядро второго процессора
и т.д. по кругу. Видно, что насыщение в этом режиме идет плавно, ступеньками
по четыре потока. То есть каждые следующие четыре потока (на каком-либо про-
цессоре) добавляют нагрузки на работу подсистемы памяти. И сплошной линией
показан режим, когда привязка вообще не осуществлялась. Операционная система
сама выбирала оптимальное распределение потоков по ядрам в соответствии с их
нагрузкой. Видно, что этот график не имеет какой-либо периодичности за исклю-
чением постепенного нарастания времени с увеличением числа потоков. Интересно
отметить, что при отсутствии привязки производительность работы памяти возрос-
ла (за меньшее время потоки записывают такой же объем данных). Практически
аналогичная картина наблюдается для процессора Intel. За исключением того, что
режим без привязки ядра не превысил по производительности другие режимы.
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
время, с
количество потоков
без привязки к ядру
с привязкой к ядру (по процессорам)
с привязкой к ядру (по ядрам)
0.05
0.1
0.15
0.2
0.25
0.3
0.35
1
2
3
4
5
6
7
8
время, с
количество потоков
Рис. 2.
Производительность параллельной записи (AMD и Intel)
2.3.
Третья группа тестов
Третьей группой тестов измерялась производительность передачи данных меж-
ду памятью различных NUMA-узлов. Граф связности NUMA-узлов показан на ри-
сунке 3. Слева вычислительный узел с процессорами AMD, справа с Intel. Круж-
ком показан один NUMA-узел (включая собственную память узла). Числом внутри
NUMA-узла показано количество ядер данного узла. Пунктирной линией сгруппиро-
ваны NUMA-узлы, которые образуют один физический процессор. В данной группе
тестировались все возможные варианты передачи данных. С помощью библиотеки
libnuma осуществлялась привязка кода к заданному NUMA-узлу
i
и выделялся блок
памяти размер 500 МБ на узле
j
. После чего выполнялся алгоритм измерений, ко-
торый состоял в копировании из памяти узла
i
в память узла
j
блока указанного
размера. Тесты были проведены для всех возможных пар вершин графа (включая
петли). Основные результаты сведены в таблицу 1.
Сборник материалов XXXVII Дальневосточной Математической Школы-Семинара
имени академика Е.В. Золотова, Владивосток, 8 – 14 сентября 2013 г.
143
Рис. 3.
Производительность параллельной записи (AMD и Intel)
Таблица 1.
Пример расположения таблицы
Узел на базе процессора
min t, с
max t, с
AMD
0
.
119
0
,
262
Intel
0
.
129
0
.
180
Заключение
С помощью разработанных алгоритмов выполнено тестирование работы некото-
рых частных характеристик оперативной памяти узлов вычислительного кластера
ЦКП “ДВВР” ДВО РАН. Обнаружено, что доступ к памяти в узлах с процессора-
ми Intel работает быстрее, хотя по своим внутренним характеристикам эта память
медленней. Минимальное время у AMD получилось меньше примерно на 10 %, но
по средним результатам он проигрывает почти на 25 %. Данный результат следует
связывать с существенно большим количеством ядер и связей в архитектуре NUMA.
Также было установлено, что накладные расходы на взаимодействие процессоров
между собой составляет у AMD более 200 %, у Intel — всего 71 %.
Список литературы
1.
Воеводин В.В., Воеводин Вл.В. Параллельные вычисления. — СПб.: БХВ-Петербург,
2002. — 608 с.: ил.
2.
Urlich Drepper. What Every Programmer Should Know About Memory [Электронный
ресурс] // Linux Weekly News [Офиц. сайт]. URL: http://lwn.net/Articles/259710/ (да-
та обращения: 25.05.2013).
3.
Memtest86
—
And
Advanced
Memory
Diagnostic
Tool
[Офиц.
сайт].
URL:
http://www.memtest.org/ (дата обращения: 15.05.2013).
Сборник материалов XXXVII Дальневосточной Математической Школы-Семинара
имени академика Е.В. Золотова, Владивосток, 8 – 14 сентября 2013 г.
УДК 519.23
ОЦЕНИВАНИЕ ПАРАМЕТРОВ
ПОЛОЖЕНИЯ И МАСШТАБА НА ОСНОВЕ
ЭМПИРИЧЕСКОЙ ФУНКЦИИ
РАСПРЕДЕЛЕНИЯ
В.Н. Лиховидов
Школа естественных наук ДВФУ
Россия, 690695, Владивосток, Октябрьская 27
E-mail:
V.Likhovidov@forexschool.ru
А.А. Бурдинский
Школа естественных наук ДВФУ
Россия, 690695, Владивосток, Октябрьская 27
E-mail:
aleks-burdinsk@yandex.ru
Ключевые слова:
оценки параметров положения и масштаба, эмпириче-
ская функция распределения, состоятельность и асимтотическая нормаль-
ность оценок, асимптотическая дисперсия
Введение
Предложен метод построения оценок параметров сдвига и масштаба для веро-
ятностных распределений, в котором непосредственно используется эмпирическая
функция распределения (ЭФР). Доказана состоятельность и асимптотическая нор-
мальность полученных таким образом оценок, выведены выражения для их асимп-
тотической дисперсии, исследованы свойства оценок для выборок конечной длины.
1.
Оценки параметров масштаба и положения
на основе ЭФР
Рассмотрим семейство вероятностных распределений вида:
F
(
x
) =
F
0
x
−
a
b
.
(1)
F
0
(
x
)
- некоторая полностью известная функция распределения. Параметры
a
и
b
(
a
- параметр положения (
−∞
< a <
∞
),
b
- параметр масштаба (
b >
0
)) предпо-
лагаются неизвестными и их оценки должны быть построены на основе повторной
выборки - последовательности независимых одинаково распределенных случайных
Сборник материалов XXXVII Дальневосточной Математической Школы-Семинара
имени академика Е.В. Золотова, Владивосток, 8 – 14 сентября 2013 г.