СОДЕРЖАНИЕ 3
ВЕДЕНИЕ 5
ГЛАВА 1. СИСТЕМЫ УСКОРЕНИЯ РАСЧЕТОВ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ 7
1.1 Применение численных методов при решении системы уравнений
Максвелла 7
1.2 Технологии GPGPU - программирования 10
1.3 NVIDIA CUDA 12
1.4 OpenCL 14
ГЛАВА 2. МЕТОД FDTD 17
2.1 Введение в алгоритм FDTD 17
2.2 Реализация базового алгоритма FDTD 22
2.3 Граничные условия 25
2.4 Простые граничные условия (ABC) 26
2.5 Граничные условия PML 29
ГЛАВА 3. РЕАЛИЗАЦИЯ МЕТОДА FDTD НА OPENCL 32
3.1 Написание Host - программы 32
3.2 Kernel - программа 40
3.3 Тестирование программы 43
Заключение 46
СПИСОК ЛИТЕРАТУРЫ 47
Приложение 1 49
Приложение 2 53
Приложение 3
В настоящее время существует большое количество задач, связанных с обработкой больших объемов информации. Они относятся к различным областям деятельности: экономические расчеты, моделирование физических законов, мультимедиа рендеринг и так далее. Для их выполнения требуется большое количество времени и вычислительных ресурсов. Одним из основных способов сократить время при решении подобных задач является метод параллелизма, когда одна большая задача разбивается на несколько подзадач, выполняющихся параллельно и независимо. Раньше такие ресурсы могли предоставить только большие кластеры в вычислительных центрах, однако, с развитием технологий, вычислительные ресурсы становились более доступными, появлялись новые способы создания высокопроизводительных вычислительных систем (НРС).
Увеличение тактовой частоты и степени интеграции аппаратных средств позволило создавать небольшие дешевые настольные системы. В настоящее время на персональном компьютере средней ценовой категории легко можно запустить и комфортно работать с серьезным пакетом программ для профессионального научного моделирования. В качестве вычислительного устройства для обработки данных может использоваться видеокарта. Графический процессор (GPU), в отличие от центрального процессора (CPU), изначально проектировался для обработки данных параллельно, так как его основная задача быстро визуализировать изображение на экране компьютера. Для этого GPU использует большое число потоковых процессоров, количество которых у производимых в настоящее время графических процессоров достигает нескольких сотен. Таким образом, GPU выгодно использовать для решения хорошо распараллеливаемых задач, однако он плохо справляется с потоками последовательных команд. CPU, наоборот, создан для выполнения команд по порядку. Процесс написания программ для GPU также отличается от программирования CPU ввиду архитектурных особенностей и организации работы с памятью. С появлением возможности полноценно программировать графический процессор стали появляться методы для выполнения на GPU неграфических вычислений. Эти методы нашли широкое применение в сфере физического моделирования, в частности в моделировании распространения электромагнитных волн. Это позволит выполнить обработку сигналов для обеспечения устойчивого соединения всех систем телекоммуникации таких, как Wi - Fi, Bluetooth, мобильный интернет, также актуальным будет разработка новых стандартов связи и оценка их применимости и безопасности в реальных условиях без создания прототипов.
В ходе выполнения работы были выполнены следующие задачи:
• изучен базовый алгоритм FDTD и граничные условия;
• изучена спецификацию OpenCL;
• освоены принципы работы планировщика OpenCL;
• написать Host - программу;
• написать Kernel.
Это позволило написать программу, используя технологию GPGPU - программирования. Данная технология позволила сократить время расчета алгоритма FDTD. Программа, написанная на OpenCL, практически в 60 раз быстрее чем аналогичная программа для процессора [Приложение З]. Время, затраченное видеокартой на выполнение алгоритма, составило 40 секунд. В то время как на центральном процессоре - 56 минут.
1. Федоров Н.Н. - Основы электродинамики - М.: Высшая школа, 1980.- 120с.
2. A finite difference frequency domain (FDFD) method for materials with negative permittivity [Электронный ресурс]/ C.Pflaum, Z.Rahimi. - Режим доступа:https://ieeexplore.ieee.org/document/5297314/ , свободный.
3. Решение системы уравнений Максвелла методом FDTD
[Электронный ресурс]/Зеленин А. - Режим доступа:
http: //zfdtd.narod.ru/method/intrfdtd.htm,свободный.
4. NVIDIA CUDA неграфические вычисления на графических процессорах[Электронный ресурс]/ Берилло А. - Режим доступа: https://www.ixbt.com/video3/cuda-1. shtml,свободный.
5. OpenCL. Подробности технологии [Электронный ресурс]/ - Режим доступаhttps://habr.com/post/72650/,свободный.
6. Yee, K.S. Numerical Solution of Initial Boundary Value Problems Involving Maxwell’s Equations in Isotropic Media / K.S. Yee // IEEE Trans. Antennas Propag., 1966.- AP-14.- P. 302-307.
7. Лиханова М. Д. -Разработка дипольной антенны - М.: Молодой ученый. — 2017. — №51. — С. 61-64.
8. Moore G. Cramming more components onto integrated circuits // Electronics Magazine. — 1965. — V. 38, № 8. — P. 4.
9. X. C. Yuan, "Three-Dimensional Electromagnetic Scattering from Inhomogeneous Objects by the Hybrid Moment and Finite Element Method," IEEE Trans. Microwave Theory and Tech., vol. 38, no. 8, August 1990, pp. 1053-1058
10. D. S. Katz, E. T. Thiele, and A. Taflove, "Validation and extension to three dimensions of the Berenger PML absorbing boundary condition for FD-TD meshes," IEEE Microwave Guided Wave Lett., vol. 4, pp. 268-270, Aug. 1994.
11. L. Zhao and A. C. Cangellaris, "GT-PML: Generalized theory of perfectly matched layers and its application to the reflectionless truncation of finite- difference time-domain grids," IEEE Trans. Microwave Theory Tech., vol. 44, pp. 2555-2563, Dec. 1996.
12. Munshi A. The OpenCL Specification. 2012. V. 11(14). P. 22 - 55.
13. Уравнения Максвелла для электромагнитного поля [Электронный ресурс] /- Режим доступа:http://www.pppa.ru/additional/02phy/03/phy_e_69.php,свободный.
14. Методы моделирования электромагнитных полей[Электронный ресурс]/- Режим доступа:
https://sites.google.com/site/komputernoemodelirovanie/home/stati/metody-modelirovania-elektromagnitnyh-polej, свободный.
15. Taflove A., Hagness S. Computational electrodynamics: the finite- difference time-domain method. 3d edition. London: Artech House, 2005. P. 51-80.
16. Rumpf R.C., Garcia C.R., Berry E.A., Barton J.H. Finite-Difference Frequency-Domain Algorithm for Modeling Electromagnetic Scattering from General Anisotropic Objects. PIERS B. 2014. V. 61. P. 55-67.
17. Holland R., Williams J. Total-field versus scattered-field finite- difference Codes: A Comparative Assessment. IEEE Trans. Nuclear Science, 1983. V. 30(6). P. 4583-4588. DOI: 10.1109/TNS.1983.4333175.
18. Berenger J.-P. A perfectly matched layer for the absorption of electromagnetic waves. J. Computational Physics. 1994. V. 114(2). P. 185-200.
19. Жданов М.С. Электроразведка. М.: Недра, 1986. С. 5-12.
20. Архитектура OpenCL [Электронный ресурс]/- Режим доступа: http://agapii.ucoz.ru/publ/opencl/statejki/arkhitektura_opencl/6-1 -0-12, свободный.