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/