Доклады БГУИР
2014 № 3 (81)
УДК004.272 : 004.414
ПОСТРОЕНИЕ ПРОГРАММНО-АППАРАТНОГО КОМПЛЕКСА ДЛЯ ИССЛЕДОВАНИЯ РАСПРЕДЕЛЕНИЯ ЭЛЕКТРОМАГНИТНОГО ПОЛЯ В БЛИЖНЕЙ ЗОНЕ ДИЭЛЕКТРИЧЕСКИХ И МЕТАЛЛИЧЕСКИХ
НАНОЧАСТИЦ
КС. КУРОЧКА, ОД. АСЕНЧИК, Е.Г. СТАРОДУБЦЕВ
Гомельский государственный технический университет имени П.О.Сухого пр. Октября, 48, Гомель, 246746, Беларусь
Поступила в редакцию 5 октября 2013
Приведены результаты разработки и исследования созданного на основе свободно распространяемого программного обеспечения высокопроизводительного программно -аппаратного вычислительного комплекса для моделирования распределения электромагнитных полей в ближней зоне металлических и диэлектрических наночастиц. В качестве сравнения приведены примеры расчета аналитического и численного значения полей вблизи сферических наночастиц.
Ключевые слова: распределенные вычисления, математическое моделирование, электромагнитное поле.
Введение
Для решения задач расчета распределения электромагнитного поля оптического диапазона в ближней и дальней зонах наночастиц предложено и используется немало различных аналитических и численных методов [1-3]. Особую вычислительную трудность вызывает расчет трехмерного распределения поля в ближней зоне металлических наночастиц на частотах, близких к частотам плазмонного резонанса [3]. Большие градиенты диэлектрической проницаемости, электрического и магнитного полей вблизи границ частиц, необходимость точной аппроксимации формы частицы вблизи границы раздела требует выбора малого размера расчетного элемента. Это приводит к необходимости решения систем линейных алгебраических уравнений (СЛАУ) значительных размерностей [4-6]. Если требуется решать задачу подбора оптимального параметра структуры, то решение СЛАУ требуется повторить многократно. Эффективное решение данной проблемы возможно посредством использования технологий организации распределенных вычислений и (или) параллельных вычислений, позволяющих уменьшить количество выполняемых операций на каждом вычислительном узле [7] и тем самым значительно снизить время нахождения решения.
Создаваемый программно аппаратный комплекс предназначен для компьютерного моделирования оптических свойств нанокомпозитов и метаматериалов на основе наночастиц металлов с целью последующего получения структур с заданными функциональными характеристиками, перспективными для использования в качестве сенсорных элементов, преобразователей, усилителей излучения, управляющих оптических и оптоэлектронных элементов [8]. Исходя из этого, он должен поддерживать расчет распределений электромагнитных полей оптического диапазона: в ближней зоне внутри и вне диэлектрической и металлической однородных или неоднородных (магнитных и немагнитных) наночастиц произвольной формы; созданного одним или несколькими точечными источниками (диполями), вблизи наночастиц.
В качестве программного обеспечения для решения указанных задач было выбрано программное обеспечение с открытым исходным кодом MEEP [8, 9], реализующее универсальный метод - метод конечных разностей во временной области (FDTD) [6, 8, 9]. К достоинствам пакета MEEP можно отнести возможность эффективного моделирования распределения электромагнитных полей и наличие поддержки параллельных вычислений на базе интерфейса MPI (MPICH) [10].
Архитектура программно-аппаратного вычислительного комплекса
Доступ к создаваемой вычислительной среде необходимо было обеспечить с любых компьютерных устройств и из различных точек доступа. Для этих целей наиболее эффективным является использование современных Web-технологий на базе GRID-систем [11].
В качестве базового программного обеспечения организации автономного сегмента GRID-среды был выбран дистрибутив программного обеспечения промежуточного уровня Unicore [12]. Предлагаемая архитектура представлена на рис. 1. Вычислительный кластер реализован на базе технологии MPI под управлением ОС Ubuntu.
Рис. 1. Архитектура программно-аппаратного вычислительного комплекса
Web-интерфейс (рис. 1) реализует основные функции взаимодействия с пользователем (клиентом) и позволяет практически с любого устройства, поддерживающего доступ к Web-ресурсам по протоколу HTTPS, размещать свои задания для выполнения в вычислительной среде. Так же через Web-интерфейс осуществляется регистрация и авторизация пользователей. Для каждого пользователя на сервере создается отдельная домашняя папка, предназначенная для загрузки файлов заданий и хранения конечных результатов расчетов. Web-интерфейс самостоятельно генерирует скрипт инициализации и файл задания для UNICORE, а так же автоматически задает пути для хранения файлов. Имя выходного архива с результатами указывается пользователем вручную.
После получения и обработки задания UNICORE генерирует архив с результатом и помещает его в домашнюю папку пользователя, после чего пользователь может скачать архив с результатом через Web-интерфейс. Для реализации были использованы веб-сервер Apache и язык PHP для написания серверной части (реализация загрузки файлов заданий, а также мониторинг результатов). Сами страницы имеют простое оформление, созданное средствами HTML и CSS.
Техническая реализация архитектуры программно-аппаратного вычислительного комплекса
Реализация предлагаемой архитектуры программно-аппаратного вычислительного комплекса заключается в интеграции программы MEEP с распределенной вычислительной средой с одной стороны, и с Unicore Server - с другой. Т.о. выделяются две подзадачи:
- запуск MEEP в распределенной вычислительно среде;
- запуск MEEP из задания Unicore.
Для решения первой задачи используется распределенная версия пакета MEEP-MPI и интерфейс MPI MPICH. Поскольку работа в вычислительном кластере сопряжена c удаленным запуском пользовательских программ, назначение которых заранее не известно, имеется вероятность неправильного или злонамеренного использования доступа к системам. Все действия в кластере пользователи должны совершать только от имени специально созданной непривилегированной учетной записи.
MPICH использует удаленный доступ к узлам по протоколу SSH. Концепция безопасности SSH запрещает доступ к этому каталогу любых других пользователей кроме «владельца». Механизм авторизации по умолчанию предполагает ввод пароля учетной записи на удаленной системе, что крайне неудобно в случае большого количества процессов. Поэтому предлагается использовать авторизацию посредством RSA-ключей без пароля. Пара ключей создается от имени ранее созданной учетной записи.
Для запуска распределенной программы в кластере все его узлы должны иметь доступ к исполняемому файлу, а также, если того требует программа, к файлам со входными данными. Организовать совместный доступ всех узлов к общим файлам можно с помощью сетевой файловой системы (Network File System, NFS). Для этого в таблицу монтирования /etc/fstab добавляется соответствующая строка. Монтирование будет происходить автоматически при загрузке системы. При этом для хранения своих локальных данных каждый вычислительный узел имеет отдельный каталог.
Для запуска MEEP из задания Unicore используется командный интерпретатор Bash, в котором формируется скрипт. Генерирование скриптового файла с необходимыми параметрами осуществляет разработанный планировщик. Для того, чтобы отправить созданное задание, используется консольный клиент UCC (Unicore Commandline Client), который запускается на стороне WEB-сервера.
Вычислительный эксперимент на примере решения задачи о распределении ЭМП в ближней зоне металлической и диэлектрической сферических частиц
Для проверки адекватности и тестирования быстродействия вычислительного комплекса было выбрано две физических задачи о моделировании электромагнитного поля (ЭМП) вблизи сферической металлической и диэлектрической наночастицы (НЧ) радиусом R = 40 нм. НЧ находятся в воздухе (в = 1), их центры совпадают с центром декартовой системы координат. Возбуждение осуществлялось плоской, линейно поляризованной вдоль оси X волной с длиной волны 405 нм. Моделирование осуществлялось методом рассеянного поля [6] до момента времени установления стационарного распределения поля в расчетной области. Выбирались значения диэлектрической проницаемости материала металлической bnp = -3,5191+0,5798/ (близкое к значению этой величины для серебра [13]) и диэлектрической наночастиц bnp = 3,5191+0,5798/.
Для моделирования использовалась пространственная расчетная область в форме куба с ребром 240 нм. После установления стационарного распределения поля результаты моделирования практически не зависели от толщины согласующего слоя (Perfectly Matched Layer, PML [6, 9]) вокруг расчетной области с толщиной превышающей 10 нм. При верификации использовалось разрешение 600 точек на 1 мкм (около 1,67 нм) в направлениях всех координатных осей, а для тестирования быстродействия - 200 точек на 1 мкм.
Рис. 2. Зависимость интенсивности электромагнитного поля от координат вблизи поглощающей диэлектрической сферической наночастицы
Рис. 3. Зависимость интенсивности электромагнитного поля от координат вблизи поглощающей сферической металлической наночастицы
Решение этой задачи может получено аналитически на основе теории Ми [14]. На рис. 2 и 3 приведены распределения квадрата амплитуды электрической составляющей электромагнитного поля вне трехмерных сферических металлической и диэлектрической наночастиц размером 40 нм, находящихся в воздухе в центре декартовой системы координат.
Тестирование быстродействия вычислительного комплекса осуществлялось при использовании различного оборудования. Изначально в качестве среды передачи данных была выбрана локальная вычислительная сеть на базе протокола 100Ьа8еТХ [15] (рис. 4) и решались модельные задачи с разрешением 200 точек на 1 мкм. Из рис. 4 видно, что ускорение фактически происходит только для случая использования двух узлов, далее производительность кластера падает. Очевидно, что такая картина наблюдается из-за того, что время расчета сопоставимо со скоростью передачи данных по сети. Для увеличения производительности требуется модернизация среды передачи данных.
150
130
110
щ &
СО
90
70
50
30
у
\\
_
диэлектрическая
■металлическая
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Количество вычислительных узлов, шт
Рис. 4. Время решения модельных задач в кластере на базе сети 100ЬаБеТХ
Модернизацию аппаратно-программного вычислительного комплекса можно осуществлять по трем основным направлениям. В первую очередь - это обеспечение минимального времени обработки каждого отдельного задания. Во вторую - реализация максимально эффективной загрузки вычислительных узлов. В третью - повышение производительности с точки зрения количества выполненных заданий за определенный временной интервал.
Первое направление может быть улучшено только за счет повышения и модернизации аппаратной части комплекса. Здесь можно выделить следующие ключевые элементы:
- среда передачи данных - локальная сеть - ограничена в росте имеющимся на рынке сетевых оборудованием и существующими стандартами построения сетевых систем;
- мощность ядра процессора отдельного вычислительного узла;
- объем оперативной памяти каждого вычислительного узла;
- количество используемых вычислительных узлов.
Как правило, увеличение производительности для решения отдельного задания приходится наращивать за счет повышения скорости среды передачи и увеличения количества узлов. Однако, как было показано ранее, увеличение количества узлов не всегда приводит к увеличению скорости выполнения задания.
160 140 120 100
& 80
И
60 40 20
4
Ч
диэлектрическая ■металлическая
Ъ,
3 4 5 6 7 8 9 10 11 12 13 Количество вычислительных узлов, шт
14 15 16
Рис. 5. Время решения модельных задач в кластере на базе сети 1000ЬаБе-Т
Второе направление в основном реализуется программными средствами - в частности, планировщиками заданий, эффективность которых зависит как от используемых алгоритмов планирования, так и от структуры заданий, находящихся в очереди обработки.
0
2
1
Третье направление может реализовываться совместно на аппаратном и программном уровнях. Для каждого задания в данной вычислительной среде существует эффективное число узлов, при котором добавление новых для решения задачи не приводит к уменьшению скорости обработки. Эффективное число узлов зависит как от самой задачи, так и от технических характеристик вычислительного узла. При реализации третьего направления необходимо обеспечить запуск всех заданий только на эффективном числе узлов, а остальные узлы использовать для запуска других заданий, что должен реализовать планировщик.
Осуществим модернизацию среды передачи данных до протокола 1000Ьа8е-Т [15] и проведем повторно вычислительный эксперимент (рис. 5). Анализируя рис. 4 и 5 видно, что эффективное число узлов возросло с 2 до 8, а минимальное время решения задачи уменьшилось с 93 секунд до 25 с.
Проведем вычислительный эксперимент при решении модельных задач с разрешением 500 точек на 1 мкм (рис. 6). Из рисунка следует, что с увеличением вычислительной сложности задания эффективное число узлов также возрастает.
0
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Количество вычислительных узлов, шт
Рис. 6. Время решения модельных задач с разрешением 500 точек на 1 мкм
Заключение
В результате проделанной работы был создан программно-аппаратный комплекс для исследования распределения электромагнитного поля в ближней зоне сферических частиц, отличающийся:
- использованием свободно распространяемого программного обеспечения;
- быстрым развертыванием и низким требованием к аппаратному обеспечению;
- простотой использования и интеграции в существующие вычислительные системы и
сети;
- возможностью легкого масштабирования и наращивания функций;
- повторяемостью и воспроизводимостью.
Вычислительные эксперименты показали, что для обеспечения максимальной производительности наиболее целесообразным является увеличение пропускной способности среды передачи данных и количества вычислительных узлов. Для наибольшей эффективности это стоит предпочесть увеличению вычислительной мощности отдельных узлов.
Предлагаемая методика создания программно-аппартного комплекса позволяет легко консолидировать неиспользуемые вычислительные ресурсы для решения сложных вычислительных задач и может быть легко распространена на другие классы ресурсоемких задач.
Работа выполнена при поддержке программы ГКПНИ «Функциональные и машиностроительные материалы, наноматериалы» (задание 2.4.02) Республики Беларусь.
PROGRAM-SOFTWARE COMPLEX FOR CALCULATIONS OF THE ELECTROMAGNETIC FIELD DISTRIBUTION IN THE NEAR FIELD OF DIELECTRIC AND METAL NANOPARTICLES
K.S. KURACHKA, O.D. ASENCHIK, E.G. STARODUBTSEV
Abstract
The results of research and development of high-performance hardware and software computer system for modeling the distribution of electromagnetic fields in the near field of metallic and dielectric nanoparticles of the analyzed. The complex is based on free software. The calculation results of the analytical and numerical values of electromagnetic fields in the vicinity of spherical nanoparticles are shown for comparison.
Список литературы
1. Novotny L., HechtB. Principles of Nano-Optics. Cambridge, 2006.
2. Климов В.В. Наноплазмоника. Москва, 2010.
3. KaramehmedovicM., Schuh R., Schmidt V. et. al. // Opt. Exp. 2011. № 19. P. 8939-8953.
4. Jianming J. Theory And Computation Of Electromagnetic Fields. New York, 2010.
5. BossavitA. Computational Electromagnetism: variational formulations, complementarity, edge elements. New York, 1997.
6. KunzK.S., LuebbersR.J. The Finite difference time domain method for electromagnetics. London, 1993.
7. Курочка К.С. // Изв. ГГУ им. Ф. Скорины. 2008. № 5 (50). С. 69-73.
8. Асенчик О.Д., Курочка К.С., Стародубцев Е.Г. // Матер. III Междунар. научн. конф. «Проблемы взаимодействия излучения с веществом». Гомель, 9-11 ноября 2011. C. 173-178.
9. Oskooi А.F. Roundy D., Ibanescu M. // Computer Physics Communications. 2010. № 181. P. 687-702.
10. Snir M., Otto S., Huss-Lederman S. MPI: The Complete Reference. Massachusetts, 1996.
11. Foster I., Kesselman C., Tuecke S. // Int. J. of Supercomputer Applications. 2001. № 15. P. 200-222.
12. Erwin D. UNICORE Plus final Report -- Uniform Interface to Computing Resources. Hamburg, 2003.
13. RakicA.D., DjurisicA.B., Elazar J.M. // Applied Optics. 1998. Vol. 37. № 22. P. 5271-5283.
14. Quinten M. Optical Properties of Nanoparticle Systems: Mie and beyond. Germany, 2011.
15. Олифер В.Г., Олифер Н.А. Компьютерные сети: принципы, технологии, протоколы. СПб, 2008.