|
Результаты вычислительных эксперементов1. Анализ эффективности параллельных вычислений с использованием библиотекБиблиотеки программ являются важным средством для снижения затрат на разработку программного обеспечения. Поэтому качество используемых библиотек существенным образом влияет на эффективность организации параллельных вычислений. В данном разделе описываются результаты анализа эффективности одной из широко используемых библиотек параллельных вычислений PLAPACK. Библиотека PLAPACK (Parallel Linear Algebra Package) представляет собой набор параллельных процедур линейной алгебры, необходимых при выполнении большого класса научно-технических расчетов. PLAPACK реализован с использованием библиотеки передачи сообщений MPI для операционных систем семейства Windows и включает интерфейсы для языков Fortran и С. Для работы PLAPACK требует наличия библиотеки, реализующей функции набора BLAS (Basic Linear Algebra Subprograms). Более подробная информация о библиотеке PLAPACK приведена, например, в документе http://www.cs.utexas.edu/users/plapack. Другой широко известной библиотекой аналогичного назначения является ScaLAPACK (Scalable Linear Algebra Package - http://www.netlib.org/scalapack). Выбор библиотеки PLAPACK для проведения экспериментов обусловлен тем, что библиотека ScaLAPACK имеет реализацию только для операционных систем семейства UNIX, в то время как целью проекта являлось исследование проблем организации эффективных параллельных вычислений под управлением операционных систем семейства Windows. В экспериментах, проводимых в рамках настоящего проекта, в качестве реализации BLAS использовалась библиотека MKL (описание библиотеки приведено, например, в http://developer.intel.com/software/products/mkl/index.htm). В качестве реализации MPI использовались две разные реализации (см. раздел 4): - Argonne MPICH (http://www-unix.mcs.anl.gov/mpi/MPICH/); - MP-MPICH (http://www.lfbs.rwth-aachen.de/~joachim/MP-MPICH.html). С использованием библиотеки PLAPACK проведены две группы экспериментов: решение системы линейных уравнений (тест LINPACK) и матричное умножение. В описании результатов выполненных экспериментов использованы следующие обозначения: - q – количество используемых вычислительных узлов, - p – число процессоров вычислительного узла, - Т – тактовая частота процессора, - (pxT)xq - система из q вычислительных узлов, каждый из которых имеет p процессоров с тактовой частотой Т гигагерц, - N – порядок решаемой системы, - R - производительность (Gflops, т.е в миллиардах операций с плавающей запятой в секунду), - Nmax – порядок системы, при котором достигнута максимальная производительность, - Rmax – максимальная достигнутая производительность. 1.1. Решение системы линейных уравнений (тест LINPACK)Тест LINPACK представляет собой решение системы линейных уравнений методом LU-разложения. Тест LINPACK на сегодняшний день является признанным тестом производительности параллельных систем, по результатам этого теста составляется список Top500 (http://www.top500.org/ ) - список пятисот наиболее производительных систем в мире. 1. Оценка производительности. Для оценки производительности проведены эксперименты по решению систем линейных уравнений разного порядка, с использованием разного числа вычислительных узлов (компьютеров на базе процессоров Intel® Pentium® 4 с тактовой частотой 1.3 GHz) и для разных реализаций MPI. На рис. 1.1 представлены достигнутые максимальные показатели производительности для разного количества используемых вычислительных узлов в зависимости от реализации стандарта MPI. Рис 1.1. В табл. 1 приведены данные о сложности решаемых задач (порядках систем линейных уравнений - Nmax), при которых достигалась максимальная производительность параллельных вычислений. Таблица 1.1.
Как можно заметить по результатам приведенных экспериментов, преимущество реализации стандарта MPI в виде библиотеки MP-MPICH увеличивается с ростом числа используемых узлов. 2. Масштабируемость теста LINPACK для рабочих станций. В качестве цели этой серии экспериментов ставилась задача выяснения, как изменяется производительность при добавлении в систему новых вычислительных узлов типа (1х1.3) (компьютеров на базе процессоров Intel® Pentium® 4 с тактовой частотой 1.3 GHz). На рис. 1.2 и рис. 1.3 представлены результаты производительности вычислений для реализаций MP-MPICH и для MPICH соответственно. Рис. 1.2. Рис. 1.3. В результате анализа приведенных данных можно сделать вывод, что обнаруженная ранее тенденция (преимущество реализации MP-MPICH) подтверждается и в этой серии вычислительных экспериментов. 3. Масштабируемость теста LINPACK для двухпроцессорных серверов. Данная серия экспериментов проводилась с использованием серверов типа (2х1) (двухпроцессорных компьютеров на базе Intel® Pentium® Ш Xeon с тактовой частотой 1 GHz). Результаты этих экспериментов приведены на рис. 1.4. Рис. 1.4. Таким образом, можно прийти к выводу о том, что с использованием библиотеки PLAPACK может быть создана хорошо масштабируемая параллельная реализация операции решения системы линейных уравнений, обеспечивающая высокую производительность применяемой вычислительной системы. Рис. 1.5. 1.2. Матричное умножениеВторая группа экспериментов проводилась с целью получения результатов о производительности библиотеки PLAPACK при выполнении операции перемножения матриц. Эти данные использовались в дальнейшем для сравнения различных параллельных алгоритмов матричного умножения (см. раздел 2). Результаты выполненных расчетов приведены на рис. 1.5. По результатам экспериментов можно отметить хорошую масштабируемость реализации операции матричного умножения в библиотеке PLAPACK.
|
Новости22.10.2012
04.09.2012
05.04.2012
06.03.2012
02.03.2012
|