120 likes | 202 Views
Akcelerace genetických algoritmů na grafických kartách. 5. část. Mikuláš Dítě. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti. Připomenutí problému. udr žování tyče na vozíku pěstování konstant zdlouhavý výpočet fitness funkce. Pam ěťová náročnost. CPU. CPU + GPU.
E N D
Akcelerace genetických algoritmů na grafických kartách 5. část Mikuláš Dítě Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti
Připomenutí problému • udržování tyče na vozíku • pěstování konstant • zdlouhavý výpočet fitness funkce
Paměťová náročnost CPU CPU + GPU přenesení dat do paměti GPU
Další optimalizace pouze GPU start zápis na GPU každá generace paralelní výpočet vlastní implementace rand() a další výpočty čtení z GPU
OpenCL vs CUDA • programování pro grafickou kartu • OpenCL je (víc) multiplatformní • 1.1 vyšla ještě 2010 • CUDA vytvořila Nvidia • 4.0 stable (květen 2011)
CUDA • maximální rozměr textury 65536 x 65535
Odkazy • https://github.com/Mikulas/PoleBalanceGPU • Ing. Miroslav Čepek (Katedra počítačů FEL ČVUT) • Ing. Vladimír Pospíšil (Cesta k vědě) Poděkování
Zdroje • [1] BROWNLEE, J. The pole balancing problem. [online]. [cit. 8. 1. 2011]. Dostupné z <http://www.ict.swin.edu.au/personal/jbrownlee/2005/TR07-2005.pdf> • [2] Genetic algorithm.[online]. [cit. 8. 1. 2011]. Dostupné z <http://en.wikipedia.org/wiki/Genetic_algorithm> • [3] NP-hard.[online]. [cit. 8. 1. 2011]. Dostupné z <http://en.wikipedia.org/wiki/Np-hard> • [4] KOZOLA, S. Improving Optimization Performance with Parallel Computing. [online]. [cit. 8. 1. 2011]. Dostupné z <http://www.mathworks.com/company/newsletters/digest/2009/mar/parallel-optimization.html >