e - 01003000555.24717.46031.80100
Таблиця 5. Результати виконання алгоритму на функції Розенброка
NВремя виконання ЦПУВремя виконання ГПУУскореніеРезультат на ЦПУРезультат на ГПУ1500134.1515.8724.8441.63e - 0031.78 e - 0032000248.3318.81128.1831.31e - 0031.28 e - 0032500367.37012.83428.6232.05e - 0041.98 e - 0043000523.46817.48729.9342.27e -0053.71 e - 005
Час виконання і прискорення в залежності від розмірності простору
Проведемо ще одну групу тестів, з фіксованим розміром популяції (N=1000). Крок і д покладемо 3.5 і 0.618 відповідно. Результати наведені нижче, див. Таблиці 6,7,8,9.
Таблиця 6. Результати виконання алгоритму на функції сфери
DВремя виконання ЦПУВремя виконання ГПУУскореніеРезультат на ЦПУРезультат на ГПУ2025.2821.85213.6501.00e - 0033.04 e - 0033040.0182.46316.2481.40 e - 0054.95 e - 0054051.1082.97817.1619.25 e - 0069.97 e - 0065059.8563.53616.9272. 67 e - 0042.28 e - 004
Таблиця 7. Результати виконання алгоритму на функції Растригина
DВремя виконання ЦПУВремя виконання ГПУУскореніеРезультат на ЦПУРезультат на ГПУ2024.9781.87813.2978.93 e - 0035.67 e - 0033040.6642.49716.2811.54 e - 0024.72 e - 0024052.1823.03017.2182.18 e - 0021.82 e - 0025066.5423.61318.4132. 85 e - 0013.14 e - 001
Таблиця 8. Результати виконання алгоритму на функції Грінвонка
DВремя виконання ЦПУВремя виконання ГПУУскореніеРезультат на ЦПУРезультат на ГПУ2027.4051.89214.4803.26 e - 0043.65 e - 0043043.6532.51417.3611.78 e - 0071.54 e - 0074055.5743.04618.2422.38 e - 00605066.0443.63018.1886.20 e -0061.79 e - 006
Таблиця 8. Результати виконання алгоритму на функції Розенброка
DВремя виконання ЦПУВремя виконання ГПУУскореніеРезультат на ЦПУРезультат на ГПУ2027.4051.89214.4803.26 e - 0043.65 e - 0043043.6532.51417.3611.78 e - 0071.54 e - 0074055.5743.04618.2422.38 e - 00605066.0443.63018.1886.20 e - 0061.79 e - 006
Аналіз результатів
З результатів експериментів можна зробити наступні висновки:
· Алгоритм, виконаний за допомогою ЦПУ, і алгоритм, виконаний за допомогою ГПУ, дають приблизно однакові результати. Таким чином, наше реалізація ефективна і надійна.
· Алгоритм на ГПУ виконується набагато швидше, ніж на ЦПУ. Приміром, у першому експерименті краща продуктивність була відзначена при запуску алгоритму для функції сфери: прискорення дійшло до позначки в 32 рази. У другому експерименті краща продуктивність була відзначена при запуску алгоритму для функції Растригина: прискорення досягло позначки в 18.4.
Важливо буде відзначити, що в нашій реалізації показники прискорення завжди будуть вищими для першого експерименту, в силу того, що наше рішення орієнтоване на виконання паралельно оптимізаційного процесу для кожної риби. Таким чином, при збільшенні кількості вимірювань ГПУ потрібно більше послідовних обчислень.
Висновок
У даній роботі ми представили базові блоки, необхідні для виконання алгоритму пошуку косяком риб на ГПУ з використанням CUDA. Результати показали, що така реалізація алгоритму набагато більш ефективна в план продуктивності, ніж оная на ЦПУ. Наш алгоритм дуже ефективний у вирішенні завдань реального світу, у разі їх великої розмірності або наявності великої популяції.
Список літератури
1.Yifan Hu, Baozhong Yu, Jianliang Ma, Tianzhou Chen, Parallel Fish Swarm Algorithm Based on GPU-Acceleration//College of Computer Science and Technology, Zhejiang University, Hangzhou, PR China, Intelligent Systems and Applications (ISA), 2011
.Anthony J.C.C. Lins, Carmelo J.A. Bastos-Filho, D? Bora N.O. Nascimento, Marcos A.C. Oliveira Junior and Fernando B. de Lima-Neto, Analysis of the Performance of the Fish School Search Algorithm Running in Graphic Processing Units//Polytechnic School of Pernambuco, University of Pernambuco, Brazil, Theory and New Applications of Swarm Intelligence, 2012, pp. 18-31.