BC/NW 2011; №1 (18):2.1
ЭФФЕКТИВНОСТЬ
ОРГАНИЗАЦИИ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ НА ПЕРСОНАЛЬНОМ КОМПЬЮТЕРЕ
К.В. Журавлев, А.С.
Федулов.
(СФМЭИ Смоленск)
В настоящее время наблюдаются серьезные
перемены, происходящие в создании современных компьютерных платформ: ведущие
производители представили микропроцессоры, имеющие несколько исполнительных
ядер на одном кристалле. Тот факт, что промышленность движется в направлении
увеличения числа исполнительных ядер на кристалле, предоставляет разработчикам
программного обеспечения новые возможности и переводит персональный компьютер в
класс высокопроизводительных систем [1]. При этом проблема организации
эффективных вычислений в персональном компьютере с многоядерной архитектурой в
настоящее время полностью не решена. Целью данной работы является экспериментальное
исследование вопросов организации параллельных вычислений на многоядерном
персональном компьютере.
Для оценки эффективности
использования многоядерной архитектуры в персональном компьютере был выбран
алгоритм сложения матриц. Платформа проведения исследования: шестиядерный процессор AMD Thenom(tm) II X6 1055T 2.80GHz, память DDR III 4.00 GB, операционная система Linux Mandriva 2010, в которой время выполнения алгоритма распределения
потоков на логические процессоры не зависит от числа потоков[2]. Алгоритм
сложения двух квадратных матриц , содержащих числа в
формате с плавающей точкой, был реализован на языке C++, компилятор gcc. Программа выполнялась в однопоточном и многопоточном
варианте. Изменяемые параметры: размерность матриц и число потоков. При каждом
запуске вычислялся коэффициент ускорения вычислений многопоточного выполнения
относительно однопоточного. Зависимость этого коэффициента от числа потоков и
размерности матриц представлена в таблице 1. Результаты, полученные в ходе экспериментального
исследования, сопоставлялись с теоретическими данными, полученными по законам
Амдала и Густавсона [1].
В результате проведенных исследований
можно сделать следующие выводы:
- закон Амдала отражает использование многопоточных
приложений на многоядерной архитектуре персональных компьютеров в более
реальной форме, нежели закон Густавсона;
- полученное среднее отклонение экспериментальных данных
от закона Амдала можно объяснить наличием накладных расходов (издержек) на
Таблица 1. – Результаты проведенного исследования
создание
новых потоков, на обслуживание системных процессов и возникновением
кэш-промахов, которые носят случайный характер.
Литература
1. Эхтер Ш., Робертс Дж. Многоядерное
программирование. СПб.: Питер, 2010.
2. Джонс М. Планировщик задач Linux // http://www.ibm.developerworks/ru/library/ l-scheduler/