SlideShare ist ein Scribd-Unternehmen logo
1 von 26
Downloaden Sie, um offline zu lesen
GPU Computation in Bioinspired
    Algorithms. A review


      M.G. Arenas, A.M. Mora, G. Romero, P.A. Castillo
          Depto. Arquitectura y Tecnología de Computadores
GPU Computation in Bioinspired Algorithms. A review


1. Introduction
•   Growing interest in GPU computation

•   A GPU is able to perform graphics manipulation at high speed

•   Developers can write their own high-level programs to run on GPU

•   These architectures suited to run large computational problems
    (bioinformatics area)
GPU Computation in Bioinspired Algorithms. A review


1. Introduction
•   GPUs can be seen as SIMD multi-core processors

•   Internally the GPU contains a number of small processors that are
    used to perform calculations

•   Depending on the GPU, the number of threads that can be
    executed in parallel is in the order of hundreds
GPU Computation in Bioinspired Algorithms. A review



Index
1. Introduction
2. Throughput, parallelism and GPUs
3. GPUs Programming
4. Bioinspired Methods on GPUs
5. Conclusions
GPU Computation in Bioinspired Algorithms. A review


2. Throughput, parallelism and GPUs
•   For years, processor makers increased clock rates and instruction-
    level paralelism => sequential code run faster




•   Nowadays, they design multicore-chips
     => software adapted to
      multithreaded / multiprocess
GPU Computation in Bioinspired Algorithms. A review


2. Throughput, parallelism and GPUs
•   GPUs have matured, becoming general
    purpose computational devices for highly
    parallel work-loads
GPU Computation in Bioinspired Algorithms. A review



Index
1. Introduction
2. Throughput, parallelism and GPUs
3. GPUs Programming
4. Bioinspired Methods on GPUs
5. Conclusions
GPU Computation in Bioinspired Algorithms. A review


3. GPUs Programming. Programming Model
•   APIs based on C-like languages

•   nVidia => GeForce => CUDA

•   ATI => Radeon => Close to metal

•   Aple => OpenCL

•   Microsoft => DirectCompute
GPU Computation in Bioinspired Algorithms. A review


3. GPUs Programming. Programming Model
•   OpenCL applications:
     • GPUs, multi-core CPUs, FPGAs
     • portable across different platforms
     • keep functionality and correctness
GPU Computation in Bioinspired Algorithms. A review


3. GPUs Programming. Execution Model
•   Applications have serial portions and parallel portions
    (kernel)

•   A kernel applies a single stream of instructions to many
    data (SIMD)
GPU Computation in Bioinspired Algorithms. A review


3. GPUs Programming. Execution Model




•   Terminology:


    –   Each piece of data = work-item (thread)
    –   A kernel has thousands of work-items
    –   A kernel is organized into many work-groups (thread block)
    –   Each work-group process many work-items
GPU Computation in Bioinspired Algorithms. A review


3. GPUs Programming. Memory Model
•   Define how the data is stored and communicated
    between CPU and GPU

•   Global memory
     CPU->rw / work-items->rw
•   Constant memory
     CPU->rw / work-items->ro
•   Private memory
     CPU->X / single work-item->rw
•   Local memory
     CPU->X / work-group->rw
GPU Computation in Bioinspired Algorithms. A review



Index
1. Introduction
2. Throughput, parallelism and GPUs
3. GPUs Programming
4. Bioinspired Methods on GPUs
5. Conclusions
GPU Computation in Bioinspired Algorithms. A review


4. Bioinspired Methods on GPUs
•   Review of different evolutionary computation
    approaches using GPU

•   Master-slave
•   Fine-grained
•   Island-model

•   ANN on GPUs
GPU Computation in Bioinspired Algorithms. A review


4.1 Master-slave approaches:
•   Some actions are executed in the CPU (main loop)
•   Evaluation and mutation are run on GPU

•   Competition and selection are performed on the CPU, while
    mutation, reproduction and evaluation on the GPU




                           CPU



             GPU
GPU Computation in Bioinspired Algorithms. A review


4.1 Master-slave approaches

References
•   Zhang, S., He, Z.: Implementation of parallel genetic algorithm based on cuda.
    In et al., Z.C., Lecture Notes in Computer Science, vol 5821. 2009

•   Wong, M., Wong, T., Fok, K.: Parallel evolutionary algorithms on graphics
    processing unit. CEC 2005

•   Harding, S., Banzhaf, W.: Fast genetic programming and artificial
    developmental systems on gpus. High Performance Computing Systems and
    Applications. 2007
GPU Computation in Bioinspired Algorithms. A review


4.2 Fine-grained approaches:
•   The whole evolutionary process is run on the GPU
•   Each EA individual is set to each GPU processor
•   Store individuals and fitness in the GPU global memory

•   Problem: random number generation (on CPU)
GPU Computation in Bioinspired Algorithms. A review


4.2 Fine-grained approaches

References
•   Wong, M., Wong, T.: Parallel hybrid genetic algorithms on Consumer-Level
    graphics hardware. CEC 2006
•   Wong, M., Wong, T.: Implementation of parallel genetic algorithms on graphics
    processing units. Studies in Computational Intelligence, vol 187, pp. 197–216. 2009
•   Yu, Q., Chen, C., Pan, Z.: Parallel genetic algorithms on programmable graphics
    hardware. Lecture Notes in Computer Science, vol 3612, pp. 1051–1059. 2005
•   Luo, Z., Liu, H.: Cellular genetic algorithms and local search for 3-SAT problem on
    graphic hardware. CEC 2006
•   Li, J.,Wang, X., He, R., Chi, Z.: An efficient fine-grained parallel genetic algorithm
    based on GPU-Accelerated. Network and Parallel Computing Workshop. 2007
•   Li, J., Zhang, L., Liu, L.: A parallel immune algorithm based on fine-grained model
    with gpu-acceleration. International Conference on Innovative Computing. 2009
•   Vidal, P., Alba, E.: Cellular genetic algorithm on graphic processing units. NICSO
    2010
GPU Computation in Bioinspired Algorithms. A review


4.3 Coarse-grained approaches (island
   model):
•   Code an “island” (EA) on GPU
•   Generate the initial population on CPU and copy it to the GPU VRAM
•   Each subpopulation evolves in each GPU processor
•   At some generations, individuals in subpopulations are shuffled via the
    GPU VRAM
GPU Computation in Bioinspired Algorithms. A review


4.3 Island-model approaches

References
•   Pospichal, P., Jaros., J.: Gpu-based acceleration of the genetic algorithm.
    Technical report, GECOO competition (2009)

•   Tsutsui, S., Fujimoto, N.: Solving quadratic assignment problems by genetic
    algorithms with gpu computation: a case study. GECCO 2009

•   Luong, T.V., Melab, N., Talbi, E.G.: GPU-based Island Model for Evolutionary
    Algorithms. GECCO 2010

•   Pospichal, P., Jaros, J., Schwarz, J.: Parallel genetic algorithm on the cuda
    architecture. Lecture Notes in Computer Science, vol 6024. 2010

•   Pospichal, P., Schwarz, J., Jaros, J.: Parallel genetic algorithm solving 0/1
    knapsack problem running on the gpu. International Conference on Soft
    Computing 2010
GPU Computation in Bioinspired Algorithms. A review


4.4 ANN approaches

•   Widely used in pattern recognition

•   Usually the computation for ANN is inherently parallel

•   However, many algorithms require some steps that are
    difficult to parallelize
GPU Computation in Bioinspired Algorithms. A review


4.4 ANN approaches

References
•   http://www.irontaco.com/Documents/MeuthNeuralGPGPUSurvey.pdf
•   Kyoung-Su Oh, Keechul Jung, GPU implementation of neural networks, Pattern
    Recognition, vol. 37, n.6, 2004
•   Z.Luo, H. Liu and X.Wu, Artificial Neural Network Computation on Graphic
    Process Unit, IJCNN 2005
•   M. Martínez-Zarzuela et al. Fuzzy ART Neural Network Parallel Computing on
    the GPU. IWANN 2007



Libraries:
•   http://www.codeproject.com/KB/graphics/GPUNN.aspx
GPU Computation in Bioinspired Algorithms. A review



Index
1. Introduction
2. Throughput, parallelism and GPUs
3. GPUs Programming
4. Bioinspired Methods on GPUs
5. Conclusions
GPU Computation in Bioinspired Algorithms. A review


5. Conclusions
•   GPU computing approach

•   Overview current programming languages and
    software tools

•   Review the use of GPUs to implement
    bioinspired algorithms
GPU Computation in Bioinspired Algorithms. A review


5. Conclusions
•   Most of the bioinspired methods use the GPU to
    speed-up the fitness evaluation

•   Competition and selection are performed on CPU

•   Fitness, mutation and reproduction are performed
    on GPU

•   Speed-ups up to several thousands times higher
    on GPU compared to CPU sequential versions
GPU Computation in Bioinspired Algorithms. A review




        Thank you!



                     pedro@atc.ugr.es

http://atc.ugr.es/~pedro/research/gpu/

Weitere ähnliche Inhalte

Andere mochten auch

Design pattern (week 2)
Design pattern (week 2)Design pattern (week 2)
Design pattern (week 2)
stanbridge
 
Understanding operating systems 5th ed ch06
Understanding operating systems 5th ed ch06Understanding operating systems 5th ed ch06
Understanding operating systems 5th ed ch06
BarrBoy
 

Andere mochten auch (8)

High-performance asset cluster analysis implemented with Parallel Genetic Alg...
High-performance asset cluster analysis implemented with Parallel Genetic Alg...High-performance asset cluster analysis implemented with Parallel Genetic Alg...
High-performance asset cluster analysis implemented with Parallel Genetic Alg...
 
Design pattern (week 2)
Design pattern (week 2)Design pattern (week 2)
Design pattern (week 2)
 
Energy efficient resource management for high-performance clusters
Energy efficient resource management for high-performance clustersEnergy efficient resource management for high-performance clusters
Energy efficient resource management for high-performance clusters
 
Understanding operating systems 5th ed ch06
Understanding operating systems 5th ed ch06Understanding operating systems 5th ed ch06
Understanding operating systems 5th ed ch06
 
Parallel Algorithm Models
Parallel Algorithm ModelsParallel Algorithm Models
Parallel Algorithm Models
 
scheduling
schedulingscheduling
scheduling
 
Hadoop and big data
Hadoop and big dataHadoop and big data
Hadoop and big data
 
Hadoop Basics - Apache hadoop Bigdata training by Design Pathshala
Hadoop Basics - Apache hadoop Bigdata training by Design Pathshala Hadoop Basics - Apache hadoop Bigdata training by Design Pathshala
Hadoop Basics - Apache hadoop Bigdata training by Design Pathshala
 

Ähnlich wie Presentación GPUs MAEB 2012

Ähnlich wie Presentación GPUs MAEB 2012 (20)

Mauricio breteernitiz hpc-exascale-iscte
Mauricio breteernitiz hpc-exascale-iscteMauricio breteernitiz hpc-exascale-iscte
Mauricio breteernitiz hpc-exascale-iscte
 
GPU Algorithms and trends 2018
GPU Algorithms and trends 2018GPU Algorithms and trends 2018
GPU Algorithms and trends 2018
 
GPU Computing for Data Science
GPU Computing for Data Science GPU Computing for Data Science
GPU Computing for Data Science
 
Hybrid Multicore Computing : NOTES
Hybrid Multicore Computing : NOTESHybrid Multicore Computing : NOTES
Hybrid Multicore Computing : NOTES
 
Introduction to GPUs for Machine Learning
Introduction to GPUs for Machine LearningIntroduction to GPUs for Machine Learning
Introduction to GPUs for Machine Learning
 
GPU Performance Prediction Using High-level Application Models
GPU Performance Prediction Using High-level Application ModelsGPU Performance Prediction Using High-level Application Models
GPU Performance Prediction Using High-level Application Models
 
Evolutionary Computing Technology - Genetic Algorithm
Evolutionary Computing Technology - Genetic AlgorithmEvolutionary Computing Technology - Genetic Algorithm
Evolutionary Computing Technology - Genetic Algorithm
 
[db analytics showcase Sapporo 2018] B33 H2O4GPU and GoAI: harnessing the pow...
[db analytics showcase Sapporo 2018] B33 H2O4GPU and GoAI: harnessing the pow...[db analytics showcase Sapporo 2018] B33 H2O4GPU and GoAI: harnessing the pow...
[db analytics showcase Sapporo 2018] B33 H2O4GPU and GoAI: harnessing the pow...
 
GPU Support In Spark And GPU/CPU Mixed Resource Scheduling At Production Scale
GPU Support In Spark And GPU/CPU Mixed Resource Scheduling At Production ScaleGPU Support In Spark And GPU/CPU Mixed Resource Scheduling At Production Scale
GPU Support In Spark And GPU/CPU Mixed Resource Scheduling At Production Scale
 
GPU and Deep learning best practices
GPU and Deep learning best practicesGPU and Deep learning best practices
GPU and Deep learning best practices
 
2014/07/17 Parallelize computer vision by GPGPU computing
2014/07/17 Parallelize computer vision by GPGPU computing2014/07/17 Parallelize computer vision by GPGPU computing
2014/07/17 Parallelize computer vision by GPGPU computing
 
Rack Cluster Deployment for SDSC Supercomputer
Rack Cluster Deployment for SDSC SupercomputerRack Cluster Deployment for SDSC Supercomputer
Rack Cluster Deployment for SDSC Supercomputer
 
Sc12 workshop-writeup
Sc12 workshop-writeupSc12 workshop-writeup
Sc12 workshop-writeup
 
The Rise of Parallel Computing
The Rise of Parallel ComputingThe Rise of Parallel Computing
The Rise of Parallel Computing
 
Connected Components Labeling
Connected Components LabelingConnected Components Labeling
Connected Components Labeling
 
Dl2 computing gpu
Dl2 computing gpuDl2 computing gpu
Dl2 computing gpu
 
Bioinformatics on GPU
Bioinformatics on GPUBioinformatics on GPU
Bioinformatics on GPU
 
Report on GPGPU at FCA (Lyon, France, 11-15 October, 2010)
Report on GPGPU at FCA  (Lyon, France, 11-15 October, 2010)Report on GPGPU at FCA  (Lyon, France, 11-15 October, 2010)
Report on GPGPU at FCA (Lyon, France, 11-15 October, 2010)
 
GPU Support in Spark and GPU/CPU Mixed Resource Scheduling at Production Scale
GPU Support in Spark and GPU/CPU Mixed Resource Scheduling at Production ScaleGPU Support in Spark and GPU/CPU Mixed Resource Scheduling at Production Scale
GPU Support in Spark and GPU/CPU Mixed Resource Scheduling at Production Scale
 
Current Trends in HPC
Current Trends in HPCCurrent Trends in HPC
Current Trends in HPC
 

Kürzlich hochgeladen

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 

Kürzlich hochgeladen (20)

How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 

Presentación GPUs MAEB 2012

  • 1. GPU Computation in Bioinspired Algorithms. A review M.G. Arenas, A.M. Mora, G. Romero, P.A. Castillo Depto. Arquitectura y Tecnología de Computadores
  • 2. GPU Computation in Bioinspired Algorithms. A review 1. Introduction • Growing interest in GPU computation • A GPU is able to perform graphics manipulation at high speed • Developers can write their own high-level programs to run on GPU • These architectures suited to run large computational problems (bioinformatics area)
  • 3. GPU Computation in Bioinspired Algorithms. A review 1. Introduction • GPUs can be seen as SIMD multi-core processors • Internally the GPU contains a number of small processors that are used to perform calculations • Depending on the GPU, the number of threads that can be executed in parallel is in the order of hundreds
  • 4. GPU Computation in Bioinspired Algorithms. A review Index 1. Introduction 2. Throughput, parallelism and GPUs 3. GPUs Programming 4. Bioinspired Methods on GPUs 5. Conclusions
  • 5. GPU Computation in Bioinspired Algorithms. A review 2. Throughput, parallelism and GPUs • For years, processor makers increased clock rates and instruction- level paralelism => sequential code run faster • Nowadays, they design multicore-chips => software adapted to multithreaded / multiprocess
  • 6. GPU Computation in Bioinspired Algorithms. A review 2. Throughput, parallelism and GPUs • GPUs have matured, becoming general purpose computational devices for highly parallel work-loads
  • 7. GPU Computation in Bioinspired Algorithms. A review Index 1. Introduction 2. Throughput, parallelism and GPUs 3. GPUs Programming 4. Bioinspired Methods on GPUs 5. Conclusions
  • 8. GPU Computation in Bioinspired Algorithms. A review 3. GPUs Programming. Programming Model • APIs based on C-like languages • nVidia => GeForce => CUDA • ATI => Radeon => Close to metal • Aple => OpenCL • Microsoft => DirectCompute
  • 9. GPU Computation in Bioinspired Algorithms. A review 3. GPUs Programming. Programming Model • OpenCL applications: • GPUs, multi-core CPUs, FPGAs • portable across different platforms • keep functionality and correctness
  • 10. GPU Computation in Bioinspired Algorithms. A review 3. GPUs Programming. Execution Model • Applications have serial portions and parallel portions (kernel) • A kernel applies a single stream of instructions to many data (SIMD)
  • 11. GPU Computation in Bioinspired Algorithms. A review 3. GPUs Programming. Execution Model • Terminology: – Each piece of data = work-item (thread) – A kernel has thousands of work-items – A kernel is organized into many work-groups (thread block) – Each work-group process many work-items
  • 12. GPU Computation in Bioinspired Algorithms. A review 3. GPUs Programming. Memory Model • Define how the data is stored and communicated between CPU and GPU • Global memory CPU->rw / work-items->rw • Constant memory CPU->rw / work-items->ro • Private memory CPU->X / single work-item->rw • Local memory CPU->X / work-group->rw
  • 13. GPU Computation in Bioinspired Algorithms. A review Index 1. Introduction 2. Throughput, parallelism and GPUs 3. GPUs Programming 4. Bioinspired Methods on GPUs 5. Conclusions
  • 14. GPU Computation in Bioinspired Algorithms. A review 4. Bioinspired Methods on GPUs • Review of different evolutionary computation approaches using GPU • Master-slave • Fine-grained • Island-model • ANN on GPUs
  • 15. GPU Computation in Bioinspired Algorithms. A review 4.1 Master-slave approaches: • Some actions are executed in the CPU (main loop) • Evaluation and mutation are run on GPU • Competition and selection are performed on the CPU, while mutation, reproduction and evaluation on the GPU CPU GPU
  • 16. GPU Computation in Bioinspired Algorithms. A review 4.1 Master-slave approaches References • Zhang, S., He, Z.: Implementation of parallel genetic algorithm based on cuda. In et al., Z.C., Lecture Notes in Computer Science, vol 5821. 2009 • Wong, M., Wong, T., Fok, K.: Parallel evolutionary algorithms on graphics processing unit. CEC 2005 • Harding, S., Banzhaf, W.: Fast genetic programming and artificial developmental systems on gpus. High Performance Computing Systems and Applications. 2007
  • 17. GPU Computation in Bioinspired Algorithms. A review 4.2 Fine-grained approaches: • The whole evolutionary process is run on the GPU • Each EA individual is set to each GPU processor • Store individuals and fitness in the GPU global memory • Problem: random number generation (on CPU)
  • 18. GPU Computation in Bioinspired Algorithms. A review 4.2 Fine-grained approaches References • Wong, M., Wong, T.: Parallel hybrid genetic algorithms on Consumer-Level graphics hardware. CEC 2006 • Wong, M., Wong, T.: Implementation of parallel genetic algorithms on graphics processing units. Studies in Computational Intelligence, vol 187, pp. 197–216. 2009 • Yu, Q., Chen, C., Pan, Z.: Parallel genetic algorithms on programmable graphics hardware. Lecture Notes in Computer Science, vol 3612, pp. 1051–1059. 2005 • Luo, Z., Liu, H.: Cellular genetic algorithms and local search for 3-SAT problem on graphic hardware. CEC 2006 • Li, J.,Wang, X., He, R., Chi, Z.: An efficient fine-grained parallel genetic algorithm based on GPU-Accelerated. Network and Parallel Computing Workshop. 2007 • Li, J., Zhang, L., Liu, L.: A parallel immune algorithm based on fine-grained model with gpu-acceleration. International Conference on Innovative Computing. 2009 • Vidal, P., Alba, E.: Cellular genetic algorithm on graphic processing units. NICSO 2010
  • 19. GPU Computation in Bioinspired Algorithms. A review 4.3 Coarse-grained approaches (island model): • Code an “island” (EA) on GPU • Generate the initial population on CPU and copy it to the GPU VRAM • Each subpopulation evolves in each GPU processor • At some generations, individuals in subpopulations are shuffled via the GPU VRAM
  • 20. GPU Computation in Bioinspired Algorithms. A review 4.3 Island-model approaches References • Pospichal, P., Jaros., J.: Gpu-based acceleration of the genetic algorithm. Technical report, GECOO competition (2009) • Tsutsui, S., Fujimoto, N.: Solving quadratic assignment problems by genetic algorithms with gpu computation: a case study. GECCO 2009 • Luong, T.V., Melab, N., Talbi, E.G.: GPU-based Island Model for Evolutionary Algorithms. GECCO 2010 • Pospichal, P., Jaros, J., Schwarz, J.: Parallel genetic algorithm on the cuda architecture. Lecture Notes in Computer Science, vol 6024. 2010 • Pospichal, P., Schwarz, J., Jaros, J.: Parallel genetic algorithm solving 0/1 knapsack problem running on the gpu. International Conference on Soft Computing 2010
  • 21. GPU Computation in Bioinspired Algorithms. A review 4.4 ANN approaches • Widely used in pattern recognition • Usually the computation for ANN is inherently parallel • However, many algorithms require some steps that are difficult to parallelize
  • 22. GPU Computation in Bioinspired Algorithms. A review 4.4 ANN approaches References • http://www.irontaco.com/Documents/MeuthNeuralGPGPUSurvey.pdf • Kyoung-Su Oh, Keechul Jung, GPU implementation of neural networks, Pattern Recognition, vol. 37, n.6, 2004 • Z.Luo, H. Liu and X.Wu, Artificial Neural Network Computation on Graphic Process Unit, IJCNN 2005 • M. Martínez-Zarzuela et al. Fuzzy ART Neural Network Parallel Computing on the GPU. IWANN 2007 Libraries: • http://www.codeproject.com/KB/graphics/GPUNN.aspx
  • 23. GPU Computation in Bioinspired Algorithms. A review Index 1. Introduction 2. Throughput, parallelism and GPUs 3. GPUs Programming 4. Bioinspired Methods on GPUs 5. Conclusions
  • 24. GPU Computation in Bioinspired Algorithms. A review 5. Conclusions • GPU computing approach • Overview current programming languages and software tools • Review the use of GPUs to implement bioinspired algorithms
  • 25. GPU Computation in Bioinspired Algorithms. A review 5. Conclusions • Most of the bioinspired methods use the GPU to speed-up the fitness evaluation • Competition and selection are performed on CPU • Fitness, mutation and reproduction are performed on GPU • Speed-ups up to several thousands times higher on GPU compared to CPU sequential versions
  • 26. GPU Computation in Bioinspired Algorithms. A review Thank you! pedro@atc.ugr.es http://atc.ugr.es/~pedro/research/gpu/