Зимняя школа 2013 Параллельная реализация построения множества Мандельброта Выполнил: Матвеев Алексей, ФИТ 3 курс Руководитель: Перепелкин Владислав Александрович
Множество Мандельброта это множество таких точек c на комплексной плоскости, для которых итеративная последовательность z 0 =0, z n =z n-1 2 +c (n=1, 2, 3, …) не уходит на бесконечность.
Множество Мандельброта
Идея решения Для решения было принято распределить части комплексной плоскости (полосы вдоль одной оси) между различными потоками(процессами), и в дальнейшем произвести вычисления элементов последовательности для каждой точки.
Реализация Последовательная версия Многопоточная версия (pthread) Версия на множество многопоточных процессов (mpi + pthread)
Часть множества Мандельброта
Тестирование В ходе тестирования был подтвержден тот факт, что алгоритм очень хорошо распараллеливается, например, на 6- ядерном процессоре время исполния программы уменьшилось до 5.7 раза. ThreadsTime mixedblackwhite
Результаты Были реализованы три версии программы (последовательная, pthread, mpi+pthread) и протестированы возможности распараллеливания версии на pthread, в дальнейшем будет произведено тестирование версии mpi+pthread.