Применение параллельного программирования при моделировании динамики плоского электронного потока в скрещенных статических электрическом и магнитном полях

Тип работы:
Реферат
Предмет:
Физика


Узнать стоимость

Детальная информация о работе

Выдержка из работы

Е. А. Шамов E. A. Shamov
ПРИМЕНЕНИЕ ПАРАЛЛЕЛЬНОГО ПРОГРАММИРОВАНИЯ ПРИ МОДЕЛИРОВАНИИ ДИНАМИКИ ПЛОСКОГО ЭЛЕКТРОННОГО ПОТОКА В СКРЕЩЕННЫХ СТАТИЧЕСКИХ ЭЛЕКТРИЧЕСКОМ И МАГНИТНОМ ПОЛЯХ
APPLICATION OF PARALLEL PROGRAMMING IN SIMULATION OF THE DYNAMICS OF PLANE ELECTRON FLOW IN CROSSED STATIC ELECTRIC AND MAGNETIC FIELDS
Волгоградский государственный технический университет E-mail: neuro_mind@mail. ru
Рассматривается возможность применения параллельного программирования для моделирования движения плоского электронного потока в скрещенных электрическом и магнитном полях. Показано, что средства OpenMP и MPI позволяют сократить время расчета электронного потока. Выявлена зависимость времени расчета электронного потока от количества электронов. Сделано заключение о преимуществах распараллеливания трехмерной модели движения плоского электронного потока в скрещенных электрическом и магнитном полях при помощи технологий OpenMP и MPI для увеличения степени достоверности динамики моделируемого потока.
Ключевые слова: параллельное программирование, модель, электрон, поток, шум, технология, OpenMP, MPI.
The opportunity of application of parallel programming for modeling movement of a flat electronic stream in the crossed electric and magnetic fields is considered. It is shown, that means OpenMP and MPI allow to reduce time of calculation of an electron beam. Dependence of time of calculation of an electron beam on quantity electrons is revealed are investigated. The conclusion about advantages paralleling three-dimensional model of movement of a flat electron beam in the crossed fields is made by means of technologies OpenMP and MPI for increase of a degree of reliability of a modeled beam.
Key words: parallel programming, model, electron, stream, noise, technology, OpenMP, MPI.
Изучение поведения электронных потоков заранее предсказанными характеристиками,
давно привлекает внимание ученых. Это связа- а также на совершенствование параметров со-
но как с изучением физических процессов, про- временных приборов.
текающих при взаимодействии электронных Применение компьютерного моделирова-потоков с электромагнитными волнами, плаз- ния позволяет не только сократить время и
мой и твердыми мишенями, так и с вопросами стоимость разработки приборов, но и наметить
конструирования электронных приборов и уст- новые пути повышения их эффективности, так
ройств, в которых используются пучки. Одним как появляется возможность анализировать как
из эффективных путей исследования является выходные параметры, так и «внутренние» ха-
имитационное моделирование движения элек- рактеристики электронно-волнового взаимо-
тронов. Моделирование динамики плоского действия, что недоступно в реальном экспери-
электронного потока в скрещенных статиче- менте. Например, электровакуумные приборы
ских электрическом и магнитном полях произ- М-типа, имеющие хорошие технические харак-
водится для изучения физических процессов, теристики (высокий электронный коэффициент
протекающих в приборах сверхвысоких частот полезного действия, достаточно малый вес при
и направлено на создание новых устройств с генерации или усилении больших уровней
мощности), обладают высоким уровнем шума. Для того, что бы выявить причину возникающего шума, необходим тщательный анализ движения электронов в электронном потоке, который может позволить выявить пути устранения или хотя бы уменьшения уровня шума [1, 2, 3, 4, 5].
Однако ограниченность производительности вычислительной техники не позволяет производить изучение «тонкой» динамики потока. Действительно, широко применяемый в настоящее время метод «крупных частиц», когда электронный поток заменяется совокупностью ограниченного количества заряженный частиц, имеющих массу М = Ыт и заряд Q = Ые, где N — коэффициент укрупнения- т — масса электрона- е — его заряд, позволяет без потери точности решать уравнение движения при отсутствии взаимодействия между частицами
(используется отношение — = -), но приво-
М т
дит к неточностям при учете сил пространственного заряда, действующего между ними, поскольку величина кулоновских сил пропорциональна произведению величины заряда (т. е. силы взаимодействия возрастают пропорционально N2). Увеличение же количества крупных частиц приводит к неразрешимости задачи, когда необходимо анализировать движение порядка 1010 (и более) электронов.
Разработчикам аппаратного обеспечения было довольно сложно повышать производительность одноядерного процессора до бесконечности, поэтому ими было принято решение о создании многоядерных процессоров. В отдельности производительность каждого ядра не превосходит производительности мощного од-
ноядерного процессора, но суммарная производительность многоядерных процессоров стала резко расти за счет наращивания количества ядер [6]. Однако для использования всей мощи многоядерных процессоров необходимо, чтобы алгоритм и соответствующая ему программа содержала как можно меньше кода, который не могут выполнять все ядра одновременно. При моделировании динамики плоского электронного потока в скрещенных электрическом и магнитном полях, чтобы сократить время расчетов и увеличить число частиц, необходимо распараллеливание алгоритма (т. е. задействование всей мощи многоядерных процессоров и многопроцессорных систем). Для выполнения этой задачи решено использовать технологии OpenMP и MPI, которые позволяют эффективно использовать многоядерную машину и кластер, соответственно. Кластер — совокупность машин, решающих общую задачу. Исходя из документаций, технологию OpenMP лучше использовать для ускорения расчета задач с относительно малым, а технологию MPI — с относительно большим числом электронов в потоке [5, 6, 7, 8, 9].
Для анализа повышения производительности был проведен ряд экспериментов. Тесты во время исследований проводились на двухпроцессорных серверах, оснащенных 4-ядерными процессорами Intel Xeon, в лаборатории многопроцессорных технологий кафедры ЭВМ и систем ВолгГТУ. Как было сказано выше, технология OpenMP используется для задач относительно малой размерности, поэтому опыты проводились для числа электронов до 100 000. Результаты экспериментов приведены в табл. 1.
Таблица 1
Число частиц 1 ядро 2 ядра 4 ядра 8 ядер
Время расчетов, с Время расчетов, с Ускорение Время расчетов, с Ускорение Время расчетов, с Ускорение
10 000 941,688 611,622 1,539 657 304,128 3,96 354 163,944 5,743 961
20 000 3956,04 2239,776 1,766 266 1117,71 3,539 415 534,006 7,408 231
30 000 8940,294 4699,728 1,902 300 2381,742 3,753 679 1158,696 7,715 824
50 000 24 688,03 12 623,69 1,955 690 6306,894 3,914 451 3134,538 7,876 129
100 000 107 518,2 54 759,28 1,963 469 27 158,47 3,958 918 13 573,69 7,921 070
На рис. 1 выявлена зависимость ускорения ном числе электронов в потоке и использова-расчетов от числа используемых ядер при раз- нии технологии ОрепМР.
2 3 4 5 6 7
Рис. 1. Зависимости ускорения от числа ядер при различном числе частиц и использовании технологии ОрепМР
Графики 1−5 соответствуют электронным потокам с количеством электронов от 100 000 до 10 000. Из рис. 1 видно, что более ресурсоемкие задачи лучше масштабируются (т. е. показывают более высокое ускорение при увеличении количества ядер).
На рис. 2 показана зависимость времени про-
ведения моделирования электронного потока от числа частиц в потоке при использовании технологии ОрепМР на 8-ядерной машине. Зависимость времени расчетов от числа электронов в моделируемом потоке квадратичная. Это означает, что если число частиц в потоке увеличить в 2 раза, то время расчетов возрастет в 4 раза.
Рис. 2. Зависимости времени расчета от числа частиц при использовании технологии ОрепМР
Технология MPI позволяет использовать необходимость пересылок между процессами для вычислений одновременно несколько узлов во время моделирования. Результаты экспери-кластера (компьютеров). Недостатком является ментов представлены в табл. 2.
Таблица 2
Число электронов в потоке Число тактов Число процессорных ядер Время расчета, с Ускорение
50 000 1 1 124 1
50 000 1 20 6,6 18,79
50 000 1 72 1,9 65,26
100 000 1 1 543 1
100 000 1 20 27,3 19,89
100 000 1 72 7,7 70,52
50 000 500 1 27 036 1
50 000 500 20 1985 13,62
50 000 500 72 749 36,1
100 000 500 1 106 942 1
100 000 500 20 6406 16,69
100 000 500 72 2631 40,65
25 000 2500 1 167 550 1
25 000 2500 20 14 189 11,81
25 000 2500 72 4933 33,97
Из табл. 2 видно, что максимальное ускорение достигается при большом числе рассчитываемых электронов, как и в случае с OpenMP. Увеличение же числа тактов приводит к уменьшению ускорения, что связано с необходимостью пересылок. Можно заметить, что использование технологии MPI позволяет за достаточно короткое время рассчитать большой
электронный поток. Это в свою очередь, дает возможность увеличить точность расчета, а также размер моделируемого потока.
На рис. 3 приведены результаты исследования зависимости ускорения расчетов от числа используемых ядер при числе электронов в потоке 50 000 и 100 000 для 500 тактов при использовании технологии MPI.
2 4 6 8 10 12 14 16 18 20 22 24 26 28 30 32 34 38 38 40 42 44 46 48 50 52 54 56 58 60 62 84 88 68 70 72
Рис. 3. Зависимости ускорения от числа ядер при различном числе частиц и использовании технологии MPI
Сравнивая рис. 1 и 3, можно сказать, что увеличения ускорения необходимо увеличить технологии MPI и OpenMP схожи тем, что для число частиц в потоке, но на графике 1 рис. 1
прирост ускорения при увеличении числа ядер практически линеен, а на рис. 3 зависимость нелинейна. Это объясняется тем, что в MPI необходимо время на пересылку данных между узлами кластера, а в OpenMP всего один узел, поэтому пересылки данных нет и, соответственно, время на пересылку данных не за-
трачивается. При рассмотрении рис. 1 и 3 можно оценить относительное время пересылок при использовании MPI- при увеличении количестве ядер до 72 их доля составляет около 50% при 50 000 электронов в потоке. Оптимизация пересылок позволит сократить время расчетов.
13 800 18 400 23 000 27 800 32 200 38 800 41 400 46 000 50 600 55 200 58 800 64 400 6Э000 73 600 78 200 82 800 87 400 Э2000 Э6600 Рис. 4. Зависимости времени расчета от числа частиц при использовании технологии MPI на 72 ядрах кластера
Из рис. 4 видно, что зависимость времени расчетов от числа электронов в моделируемом потоке квадратичная (также, как и при использовании OpenMP). Это говорит о том, что характер зависимости, в основном, определяется алгоритмом решения задачи и не зависит от используемых технологий.
Исходя из полученных результатов, можно сделать следующие выводы. Технологии OpenMP и MPI позволяют эффективно решать задачи моделирования электронных потоков в скрещенных полях на многоядерной локальной машине и кластере, соответственно. Узким местом в программе, моделирующей электронный поток в скрещенных полях, является пересылка данных в каждом такте, поэтому ее необходимо максимально оптимизировать. В идеальном случае при стремлении времени пересылок к нулю, задача на N-ядерном кластере будет выполняться практически в N раз быстрее, чем на одном ядре. Если рассмотреть все тенденции и учесть, что производительность используемого кластера (при использовании MPI) примерно равна 500 Gflops, а производительность мощнейших кластеров в мире 1−1,2 Pflops, то за 2 ч
на самом мощном кластере можно смоделировать поток, состоящий примерно из 5 млн. электронов. Следовательно, расчет на 72-ядерном кластере с применением MPI является самым простым и эффективным средством моделирования динамики электронного потока, содержащего число частиц не менее 50 000, а применение технологии OpenMP (на 8-ядерной машине) в электронных потоках, содержащих число частиц менее 50 000. Необходимо не забывать о том, что увеличение числа ядер может не сократить, а даже увеличить время расчетов, если количество электронов в моделируемом потоке будет невелико (в случае использования технологии MPI). В будущем, для сокращения времени расчета, необходимо оптимизировать пересылки данных в программе. Также необходимо проанализировать модель для выявления возможностей повышения скорости расчета моделируемого потока.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Калинин, Ю. А. Сложная динамика и явление динамического хаоса в потоке заряженных частиц, формируемом магнетронно-инжекторной пушкой (численный и фи-
зический эксперимент) // Ю. А Калинин, В. Н. Кожевников, А. Г. Лазерсон // ЖТФ. — 2000. — Т. 70. — Вып. 7. -С. 83−91.
2. Михайловский, А. Б. Теория плазменных неустойчивостей. В 2 т. Т. 2. Неустойчивости неоднородной плазмы / А. Б. Михайловский. — 2-е изд., перераб. и доп. — М.: Атомиздат, 1977. — 360 с.
3. Шеин, А. Г. Спектральные характеристики ленточного электронного потока в скрещенных полях // А. Г. Шеин, Р. А. Евдокимов // Зарубежная радиоэлектроника. Успехи современной радиоэлектроники. — 2002. — № 8. -С. 4−8.
4. Гутин В. С. Обнаружение стохастических сигналов при дискретном спектральном анализе / В. С. Гутин // Радиотехника. — 2003. — № 4. — С. 28.
5. Шеин, А. Г. Стохастическая модель динамики плоского электронного потока в скрещенных статических
электрическом и магнитном полях / А. Г. Шеин, Е. А. Ша-мов // Известия Волгоградского государственного технического университета: межвуз. сб. науч. ст. № 3(51) / ВолгГТУ. — Волгоград, 2009. — (Сер. Электроника, измерительная техника, радиотехника и связь. Вып. 3). — С. 48−53.
6. Эхтер, Ш. Многоядерное программирование / Ш. Эхтер, Дж. Робертс. — 1-е изд. — СПб.: Питер, 2008. -320 с.
7. Левин, М. П. Параллельное программирование с использованием OpenMP / М. П. Левин. — М.: Бином, 2008. -120 с.
8. Корнеев, В. Д. Параллельное программирование в MPI / В. Д. Корнеев. — 1-е изд. — М.: Институт компьютерных исследований, 2003. — 303 с.
9. Хьюз, К. Параллельное и распределенное программирование с использованием C++ / К. Хьюз, Т. Хьюз. -М.: Вильямс, 2004. — 672 с.

ПоказатьСвернуть
Заполнить форму текущей работой