Научная статья на тему 'Оценка производительности двух реализаций алгоритма с присоединенными списками для расчета ван-дер-ваальсовых взаимодействий в задачах молекулярно-динамического моделирования с использованием графических устройств'

Оценка производительности двух реализаций алгоритма с присоединенными списками для расчета ван-дер-ваальсовых взаимодействий в задачах молекулярно-динамического моделирования с использованием графических устройств Текст научной статьи по специальности «Математика»

CC BY
95
14
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ВАН-ДЕР-ВААЛЬСОВЫ ВЗАИМОДЕЙСТВИЯ / МОЛЕКУЛЯРНАЯ ДИНАМИКА / ПРИСОЕДИНЕННЫЕ СПИСКИ / ГРАФИЧЕСКИЕ УСТРОЙСТВА / ТЕКСТУРНАЯ ПАМЯТЬ

Аннотация научной статьи по математике, автор научной работы — Москвин Дмитрий Олегович, Соцкий Валентин Викторович, Усольцева Надежда Васильевна

В настоящее время жидкие кристаллы находят широкое применение во многих областях деятельности человека: электронике, медицине, энергетике (жидкие кристаллы могут быть использованы в солнечных батареях) и т. д. Это обстоятельство ставит перед учеными проблему синтеза жидких кристаллов с заданными свойствами. Химический синтез по ряду причин, как правило, предваряется компьютерным моделированием. Использование алгоритмов, работающих на графических устройствах, позволяет значительно ускорить процесс моделирования. В настоящее время вопрос использования графических устройств для ускорения компьютерного моделирования в химии изучен недостаточно хорошо. Для расчета ван-дер-ваальсовых взаимодействий использован потенциал Ленард-Джонса. Тот факт, что силы ван-дер-ваальсовых взаимодействий убывают пропорционально шестой степени межатомного расстояния, позволяет использовать методы расчета, основанные на выделении области пространства, где силы ван-дер-ваальсовых взаимодействий существенны, и области, где ими можно пренебречь. В ходе работы использованы графическое устройство nVidia GeForce 580 GTX и центральный процессор Intel core i7. Выполнено сравнение производительности двух алгоритмов расчета ван-дер-ваальсовых взаимодействий, базирующихся на методе с присоединенными списками. Первый алгоритм использует для заполнения списков центральный процессор (CPU), второй – GPU. В ходе серии вычислительных экспериментов выявлено, что алгоритм, заполняющий списки на GPU, работает (в среднем) в 2,6 раза медленнее алгоритма, заполняющего списки на CPU. Таким образом, перенос процедуры заполнения списков с CPU на GPU не эффективен.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по математике , автор научной работы — Москвин Дмитрий Олегович, Соцкий Валентин Викторович, Усольцева Надежда Васильевна

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Оценка производительности двух реализаций алгоритма с присоединенными списками для расчета ван-дер-ваальсовых взаимодействий в задачах молекулярно-динамического моделирования с использованием графических устройств»

УДК 532.783 : 519.63

Оценка производительности двух реализаций алгоритма с присоединенными списками для расчета ван-дер-ваальсовых взаимодействий в задачах молекулярно-динамического моделирования с использованием графических устройств

Д.О. Москвин, В.В. Соцкий, Н.В. Усольцева ФГБОУВПО «Ивановский государственный университет», НИИ Наноматериалов, г. Иваново, Российская Федерация E-mail: Moskvin1987@mail.ru

Авторское резюме

Состояние вопроса: В настоящее время жидкие кристаллы находят широкое применение во многих областях деятельности человека: электронике, медицине, энергетике (жидкие кристаллы могут быть использованы в солнечных батареях) и т. д. Это обстоятельство ставит перед учеными проблему синтеза жидких кристаллов с заданными свойствами. Химический синтез по ряду причин, как правило, предваряется компьютерным моделированием. Использование алгоритмов, работающих на графических устройствах, позволяет значительно ускорить процесс моделирования. В настоящее время вопрос использования графических устройств для ускорения компьютерного моделирования в химии изучен недостаточно хорошо.

Материалы и методы: Для расчета ван-дер-ваальсовых взаимодействий использован потенциал Ленард-Джонса. Тот факт, что силы ван-дер-ваальсовых взаимодействий убывают пропорционально шестой степени межатомного расстояния, позволяет использовать методы расчета, основанные на выделении области пространства, где силы ван-дер-ваальсовых взаимодействий существенны, и области, где ими можно пренебречь. В ходе работы использованы графическое устройство nVidia GeForce 580 GTX и центральный процессор Intel core i7. Результаты: Выполнено сравнение производительности двух алгоритмов расчета ван-дер-ваальсовых взаимодействий, базирующихся на методе с присоединенными списками. Первый алгоритм использует для заполнения списков центральный процессор (CPU), второй - GPU.

Выводы: В ходе серии вычислительных экспериментов выявлено, что алгоритм, заполняющий списки на GPU, работает (в среднем) в 2,6 раза медленнее алгоритма, заполняющего списки на CPU. Таким образом, перенос процедуры заполнения списков с CPU на GPU не эффективен.

Ключевые слова: ван-дер-ваальсовы взаимодействия, молекулярная динамика, присоединенные списки, графические устройства, текстурная память.

Productivity Evaluation of Two Cell Method Algorithms for Van der Waals Interactions Calculation in Molecular Dynamics Modeling

with Using of Graphics Units

D.O. Moskvin, V.V. Sotsky, N.V. Usol'tseva Ivanovo State University, Research Institute of Nanomaterials, Ivanovo, Russian Federation

E-mail: Moskvin1987@mail.ru

Abstract

Background: Nowadays, the liquid crystals are widely used in such spheres as electronics, medicine, power engineering (they can be used in solar batteries) and etc. It is a problem for scientists to synthesize the liquid crystals with given characteristics. The chemical synthesis is usually anticipated by computer simulation. The usage of algorithms which work on graphics units allows to accelerate the computer simulation greatly. At the present time, the problem of the usage of graphic units for computer simulation's acceleration in chemistry requires further development. Materials and methods: The potential of Lennard-Johns is used for calculation of Van der Waals interactions. The fact that Van der Waals interaction power diminishes proportionally to the six degree of interatomic spacing allows to use calculation methods based on isolating the space where Van der Waals interaction power is substantial and the space where it may be left out of account. During the working process the graphic device GeForce 580GTX and the CPU Intel core i7 are used.

Results: Productivity comparison of two Van der Waals interactions calculation algorithms based on the cell method are carried out in this work. The first algorithm fills lists on central processing unit (CPU), the second - on a GPU. Conclusions: During a number of calculation experiments it is revealed that the cell method forming lists on GPU works 2,6 times (in average) slower than algorithm, forming list on CPU. Hence, forming lists procedure transfer from CPU to GPU is inefficient.

Key words: Van der Waals interactions, molecular dynamics, cell method, graphics units, texture memory.

Введение. Жидкие кристаллы (ЖК) в на- ных областях деятельности человека (электростоящее время широко используются в различ- ника, медицина, промышленность, и т. д.). В

частности, ЖК могут быть использованы в энергетике (солнечные батареи). Солнечные батареи на основе мезогенного порфирина (ЖК-соединения) имеют более высокую эффективность преобразования солнечной энергии в электрическую по сравнению с батареями на основе немезогенных соединений [1]. Данный факт обусловливает важность синтеза ЖК, обладающих требуемыми для конкретной отрасли свойствами. Химический эксперимент по причине его высокой стоимости, больших временных затрат и негативного влияния на экологию в последнее время все чаще предваряется компьютерным моделированием.

Одним из самых распространенных методов моделирования надмолекулярной организации ЖК является метод молекулярной динамики с параметрами молекулярной механики [2-10].

Расчет ван-дер-ваальсовых взаимодействий. Ван-дер-ваальсовы взаимодействия [4, 5, 8] являются одним из типов межатомных взаимодействий и, наряду с электростатическими взаимодействиями, наиболее затратны с точки зрения вычислений. Для их расчета использован потенциал Ленард-Джонса, формула которого имеет вид (( \12 ( Л6 N

и-#) -2 (D),

где г - межатомное расстояние; ст - диаметр частицы; е - глубина потенциальной ямы.

Тот факт, что силы ван-дер-ваальсовых взаимодействий убывают пропорционально г6, позволяет использовать для их расчета методы, в основе которых лежит выделение области пространства, где эти взаимодействия существенны, и области пространства, где ими можно пренебречь. Рассматриваемый метод с присоединенными списками [5] относится к данному классу методов. Идея метода заключается в разбиении пространства на ячейки одинакового размера, при этом учитываются взаимодействия между частицами, находящимися внутри фиксированной ячейки, и в ячейках, соседних по отношению к данной ячейке.

Так как моделирование даже в наносе-кундных интервалах времени требует больших временных затрат, а наиболее затратные операции (расчет сил ван-дер-ваальсовых взаимодействий) могут быть выполнены независимо друг от друга (параллельно), целесообразно внедрение в процесс моделирования технологий параллельных вычислений.

Графические устройства (GPU), обладая большим количеством параллельных процессоров, являются наиболее мощными ускорителями вычислительных экспериментов [11-18]. Работа с GPU осуществляется при помощи ин-

терфейса программирования CUDA, разработанного фирмой nVidia1 [15].

Экспериментальная часть. В рамках настоящей работы проведено сравнение производительности двух различных алгоритмов с присоединенными списками. В первом из них расчет сил взаимодействий осуществляется на GPU, а заполнение списков и интегрирование уравнений движения - на центральном процессоре (CPU). Во втором - расчет сил и заполнение списков выполняется на GPU, а интегрирование уравнений движения - на CPU. В процессе работы каждого алгоритма чтение данных осуществляется из текстурной памяти GPU [9].

Процедура заполнения списков на GPu выполняется по принципу: один поток GPU заполняет одну ячейку пространства.

С учетом особенностей графических устройств и самой процедуры она поделена на две подпроцедуры: первая опустошает присоединенные списки на каждой итерации алгоритма, вторая заполняет их.

Для поддержания плотности моделируемой системы использованы зеркальные граничные условия [4, 9], а также расчет объема модельной ячейки по количеству частиц.

Схема эксперимента составлена следующим образом. Количество частиц системы варьировали от 8192 до 98304 с шагом в 8192 частицы. Каждым алгоритмом было выполнено 10000 итераций на одной и той же стартовой конфигурации системы. В данной конфигурации частицы исследуемой системы были упорядочены по оси z. По окончании работы алгоритма получали время, затраченное на вычисления.

Вычислительный эксперимент был выполнен при помощи компьютера, оснащенного процессором Intel core i7 и графическим устройством nVidia GeForce 580 GTX. Результаты представлены на рисунке.

С заполнением списков на GPU

С tsnn пиеыме м гп ¡лгчгпи ыя Г'Р I I

О -|-,-1-,-1-,-1-,-1-,-1-

О 20000 40000 60000 80000 100000

Количество частиц

Сравнение производительности двух алгоритмов

''Документация по интерфейсу программирования CUDA, CUDA Documentation URL:

http://developer.nvidia.com/category/zone/cuda-zone

Анализ полученных результатов (см. рисунок) показывает, что алгоритм, заполняющий списки на GPU, значительно уступает в производительности алгоритму, осуществляющему заполнение списков на CPU (в среднем в 2,6 раза).

Отметим, что производительность первого алгоритма (с заполнением списков на CPU) была оценена нами ранее [18] (показана хорошая производительность по сравнению с другими алгоритмами, описанными в [18]), а перенос процедуры заполнения списков на GPU был осуществлен в целях получения более высокой производительности, однако, как показал вычислительный эксперимент, заполнение списков на GPU не эффективно. По нашему мнению, это вызвано неэффективностью загрузки GPU при заполнении списков (количество ячеек много меньше количества потоков GPU, поэтому большинство потоков простаивают), а также тем, что запись в память GPU занимает значительное время.

Работа поддержана грантами: РФФИ 10-0300881.

Список литературы

1. Lyons D.M., Ono R.J., Bielawski C.W., Sessler J.L.

Porphyrin-oligothiophene conjugates as additives for P3HT/PCBM solar cells // J. Mater. Chem. - 2012. - 22. -18956.

2. Alen M.P., Tildesley D.J. Computer simulations of liquids. - Oxford: Clarendon press, 1991. - 385 p.

3. Demus D., Gooldby J., Gray G.W., Spiess H.- W., Vill V. Hahdbook of liquid crystals. Vol. 1. - Willey-VCH, 1998. -2591 p.

4. Соцкий В.В., Усольцева Н.В. Методы моделирования мезоморфных систем. Деп. в ВИНИТИ. 03.12.2007 № 1116. - 2007. - 58 с.

5. Методы компьютерного моделирования для исследования полимеров и биополимеров / под ред. В.А. Иванова, А.Л. Рабиновича, А.Р. Хохлова. - М.: КД Либрком, 2009. - 696 с.

6. Аксёнова Е.В., Кшевецкий М.С. Вычислительные методы исследования молекулярной динамики. - СПб.: СПбГУ, 2009. - 50 с.

7. Получение стереографических изображений в задачах молекулярной динамики / Н.В. Усольцева, Ф.Н. Ясинский, В.В. Соцкий, М.С. Костин // Вестник ИГЭУ. -2009. - Вып. 4. - С. 45-48.

8. Ибрагимов И.М., Ковшов А.Н., Назаров Ю.Ф. Основы компьютерного моделирования наносистем: учеб. пособие. - СПб.: Лань, 2010. - 386 с.

9. Ying-Kui G., Zeng-Yang G., Xin-Gang L. Three-Dimentional Molecular Dynamics Simulation on Heat Propagation in Liquid Argon // Chinese Phys. Lett. - 2001. -Vol. 18. - P. 71-73.

10. Клочков С.А., Ясинский Ф.Н. Численные методы молекулярной динамики и нанотехнологии. - Иваново,

2007. - 86 с.

11. Giupponi G., Harvey M.J., De Fabritis G. The

impact of accelerator processors for high-throughoutput molecular modeling and simulation // Drug discovery today. -

2008. - Vol. 13. - P. 1052-1058.

12. Anderson J.A.. Lorenz C.D., Travesset A.A. General purpose molecular dynamics simulations fully implemented on graphics processing units // Journal of Computational Physics. - 2008. - Vol. 227. - P. 5342-5359.

13. Боярченков А.С., Поташников С.И. Использование графических процессоров и технологии CUDA для задач молекулярной динамики // Вычислительные методы и программирование. - 2009. - Т. 10. - С. 9-23.

14. Боярченков А.С., Поташников С.И. Параллельная молекулярная динамика с суммированием Эваль-да и интегрированием на графических процессорах // Вычислительные методы и программирование. - 2009. - Т. 10. -С. 158-175.

15. Боресков А.В., Харламов А.А. Основы работы с технологией CUDA. - М.: ДМК Пресс, 2010. - 232 с.

16. Соцкий В.В. Опыт применения графических контроллеров к решению задач молекулярной динамики // Жидкие кристаллы и их практическое применение. Вып. 3. -Иваново: Иван. гос. ун-т, 2011. - С. 77-84.

17. Москвин Д.О., Соцкий В.В., Усольцева Н.В. Сравнение производительности различных алгоритмов решения задач молекулярной динамики на графических контроллерах // Сб. науч. тр. SWorld по материалам конференции «Современные проблемы и пути их решения в науке, транспорте, производстве и образовании '2011». Т. 38. -Одесса, 2011. - С. 47-49.

18. Москвин Д.О., Соцкий В.В., Усольцева Н.В. Исследование производительности различных алгоритмов расчета ван-дер-ваальсовых взаимодействий в задачах молекулярной динамики на графических устройствах // Вестник ИГЭУ. - 2012. - Вып. 2. - С. 75-79.

References

1. Lyons, D.M., Ono, R.J., Bielawski, C.W., Sessler, J.L. Porphyrin-oligothiophene conjugates as additives for P3HT/PCBM solar cells. J. Mater. Chem, 2012, 22. 18956.

2. Alen, M.P., Tildesley, D.J. Computer simulations of liquids. Oxford: Clarendon press, 1991. 385 p.

3. Demus, D., Gooldby, J., Gray, G.W., Spiess, H.- W., Vill, V. Hahdbook of liquid crystals. Vol. 1. Willey-VCH, 1998. 2591 p.

4. Sotskiy, V.V., Usol'tseva, N.V. Metody modelirovaniya mezomorfnykh system [Simulation Methods of Mesomorphic Systems]. Dep. v VINITI. 03.12.2007 № 1116.

2007. 58 p.

5. Ivanov V.A., Rabinovich A.L., Khokhlov A.R. Metody komp'yuternogo modelirovaniya dlya issledovaniya polimerov i biopolimerov [Computer Simulation Methods for Researching Polymers and Biopolymers]. Moscow, KD Librkom, 2009. 696 p.

6. Aksenova, E.V., Kshevetsiy, M.S. Vychislitel'nye metody issledovaniya molekulyarnoy dinamiki [Calculation Research Methods oа Molecular Dynamics]. Saint-Petersburg, SPbGU, 2009. 50 p.

7. Usol'tseva, N.V., Yasinskiy, F.N., Sotskiy, V.V., Kostin, M.S. Poluchenie stereograficheskikh izobrazheniy v zadachakh molekulyarnoy dinamiki [Stereographical Pictures in Tasks of Molecular Dymanics]. Vestnik IGEU, 2009, issue 4, pp. 45-48.

8. Ibragimov, I.M., Kovshov, A.N., Nazarov, Yu.F. Osnovy komp'yuternogo modelirovaniya nanosistem: uchebnoe posobie [Foundations of Computer Simulation of Nanosystems]. Saint-Petersbu, Lan', 2010. 386 p.

9. Ying-Kui, G., Zeng-Yang, G., Xin-Gang, L. Three-Dimentional Molecular Dynamics Simulation on Heat Propagation in Liquid Argon. Chinese Phys. Lett. 2001, vol. 18, pp. 71-73.

10. Klochkov, S.A., Yasinskiy, F.N. Chislennye metody molekulyarnoy dinamiki i nanotekhnologii [Numerical Methods of Molecular Dynamics and Nanotechnology]. Ivanovo, 2007. 86 p.

11. Giupponi, G., Harvey, M.J., De Fabritis, G. The impact of accelerator processors for high-throughoutput molecular modeling and simulation. Drug discovery today,

2008, vol. 13, pp. 1052-1058.

12. Anderson, J.A., Lorenz, C.D., Travesset, A.A. General purpose molecular dynamics simulations fully implemented on graphics processing units. Journal of Computational Physics, 2008, vol. 227, pp. 5342-5359.

13. Boyarchenkov, A.S., Potashnikov, S.I. Ispol'zovanie graficheskikh protsessorov i tekhnologii CUDA dlya zadach molekulyarnoy dinamiki [Graphics Processors and CUDA Technologies for Molecular Dynamics Tasks]. Vychislitel'nye metody iprogrammirovanie, 2009, vol. 10, pp. 9-23.

14. Boyarchenkov, A.S., Potashnikov, S.I. Parallel'naya molekulyarnaya dinamika s summirovaniem Eval'da i integrirovaniem na graficheskikh protsessorakh [Parallel Molecular Dynamics with Ewald Summation and Integration on Graphics Processors]. Vychislitel'nye metody i programmirovanie, 2009, vol. 10, pp. 158-175.

15. Boreskov, A.V., Kharlamov, A.A. Osnovy raboty s tekhnologiey CUDA [Operation Fundamentals of CUDA Technology]. Moscow, DMK Press, 2010. 232 p.

16. Sotskiy, V.V. Opyt primeneniya graficheskikh kontrollerov k resheniyu zadach molekulyarnoy dinamiki [Application Experience of Graphics Controllers for Solving the Problems of Molecular Dynamics]. Zhidkie kristally i ikh prakticheskoe primenenie. Ivanovo, 2011, issue 3, pp. 77-84.

17. Moskvin, D.O., Sotskiy, V.V., Usol'tseva, N.V. Sravnenie proizvoditel'nosti razlichnykh algoritmov resheniya zadach molekulyarnoy dinamiki na graficheskikh kontrollerakh

Москвин Дмитрий Олегович, Ивановский государственный университет, аспирант НИИ Наноматериалов, телефон (4932) 37-08-08.

[Productivity Comparison of Different Algorithms of Molecular Dynamics Problem Solving on Graphics Controllers]. Sbornik nauchnykh trudov SWorld po materialam konferentsii «Sovremennye problemy i puti ikh resheniya v nauke, transporte, proizvodstve i obrazovanii '2011», t. 38 [SWorld Collected Works for Conference "Modern Problems and Ways of Their Solutions in Science, Transport, Industry and Education, 2011"]. Odessa, 2011, pp. 47-49.

18. Moskvin, D.O., Sotskiy, V.V., Usol'tseva, N.V. Issledovanie proizvoditel'nosti razlichnykh algoritmov rascheta van-der-vaal'sovykh vzaimodeystviy v zadachakh molekulyarnoy dinamiki na graficheskikh ustroystvakh [Productivity Research of Different Algorithms of Van der Waals interactions Calculation in Molecular Dynamics Tasks on Graphics Devices]. Vestnik IGEU, 2012, issue 2, pp. 75-79.

Соцкий Валентин Викторович, Ивановский государственный университет,

кандидат химических наук, старший научный сотрудник НИИ Наноматериалов, телефон (4932) 37-08-08.

Усольцева Надежда Васильевна, Ивановский государственный университет,

доктор химических наук, профессор, директор НИИ Наноматериалов, телефон (4932) 37-08-08.

i Надоели баннеры? Вы всегда можете отключить рекламу.