SlideShare a Scribd company logo
1 of 26
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/

More Related Content

Viewers also liked

Ming-Wei Lee(David)(MGM Awards).PDF
Ming-Wei Lee(David)(MGM Awards).PDFMing-Wei Lee(David)(MGM Awards).PDF
Ming-Wei Lee(David)(MGM Awards).PDF
Ming-Wei Lee
 

Viewers also liked (20)

Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...
Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...
Predicción de tráfico mediante co-evolución de Redes Neuronales de Funciones ...
 
Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...
Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...
Estudio de los indicadores de exposición al riesgo mediante un sistema de mon...
 
Kaggle Otto Group
Kaggle Otto GroupKaggle Otto Group
Kaggle Otto Group
 
Otto Challenge report
Otto Challenge reportOtto Challenge report
Otto Challenge report
 
Hackahton smart cities 2016 (Mayo 2016)
Hackahton smart cities 2016 (Mayo 2016)Hackahton smart cities 2016 (Mayo 2016)
Hackahton smart cities 2016 (Mayo 2016)
 
Smart city hackathon
Smart city hackathonSmart city hackathon
Smart city hackathon
 
Embodied Values fifediet
Embodied Values fifedietEmbodied Values fifediet
Embodied Values fifediet
 
aimbetter
aimbetteraimbetter
aimbetter
 
nihms185179
nihms185179nihms185179
nihms185179
 
futbol
futbolfutbol
futbol
 
Hatcopy
HatcopyHatcopy
Hatcopy
 
RFP Evaluation Training
RFP Evaluation TrainingRFP Evaluation Training
RFP Evaluation Training
 
OPP Residential Example 2015
OPP Residential Example 2015  OPP Residential Example 2015
OPP Residential Example 2015
 
Ming-Wei Lee(David)(MGM Awards).PDF
Ming-Wei Lee(David)(MGM Awards).PDFMing-Wei Lee(David)(MGM Awards).PDF
Ming-Wei Lee(David)(MGM Awards).PDF
 
Inderesin analyysi - Stora Enso Nordnetin aamiaistilaisuudessa 1.3.2016
Inderesin analyysi - Stora Enso Nordnetin aamiaistilaisuudessa 1.3.2016Inderesin analyysi - Stora Enso Nordnetin aamiaistilaisuudessa 1.3.2016
Inderesin analyysi - Stora Enso Nordnetin aamiaistilaisuudessa 1.3.2016
 
Con botas en los pies
Con botas en los piesCon botas en los pies
Con botas en los pies
 
Benchmarking languages for evolutionary algorithms
Benchmarking languages for evolutionary algorithmsBenchmarking languages for evolutionary algorithms
Benchmarking languages for evolutionary algorithms
 
Data mining in security: Ja'far Alqatawna
Data mining in security: Ja'far AlqatawnaData mining in security: Ja'far Alqatawna
Data mining in security: Ja'far Alqatawna
 
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...Relato de Experiência de Monitoria da Disciplina de  Estrutura de Dados, Estr...
Relato de Experiência de Monitoria da Disciplina de Estrutura de Dados, Estr...
 
This was a triumph: Evolving intelligent bots for videogames. And for Science.
This was a triumph: Evolving intelligent bots for videogames. And for Science. This was a triumph: Evolving intelligent bots for videogames. And for Science.
This was a triumph: Evolving intelligent bots for videogames. And for Science.
 

Similar to Iwann2011 gpus

TRACK F: OpenCL for ALTERA FPGAs, Accelerating performance and design product...
TRACK F: OpenCL for ALTERA FPGAs, Accelerating performance and design product...TRACK F: OpenCL for ALTERA FPGAs, Accelerating performance and design product...
TRACK F: OpenCL for ALTERA FPGAs, Accelerating performance and design product...
chiportal
 

Similar to Iwann2011 gpus (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
 
A GPU Implementation of Generalized Graph Processing Algorithm GIM-V
A GPU Implementation of Generalized Graph Processing Algorithm GIM-VA GPU Implementation of Generalized Graph Processing Algorithm GIM-V
A GPU Implementation of Generalized Graph Processing Algorithm GIM-V
 
Evolutionary Computing Technology - Genetic Algorithm
Evolutionary Computing Technology - Genetic AlgorithmEvolutionary Computing Technology - Genetic Algorithm
Evolutionary Computing Technology - Genetic Algorithm
 
Rack Cluster Deployment for SDSC Supercomputer
Rack Cluster Deployment for SDSC SupercomputerRack Cluster Deployment for SDSC Supercomputer
Rack Cluster Deployment for SDSC Supercomputer
 
[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...
 
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
 
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
 
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
 
Dl2 computing gpu
Dl2 computing gpuDl2 computing gpu
Dl2 computing gpu
 
TRACK F: OpenCL for ALTERA FPGAs, Accelerating performance and design product...
TRACK F: OpenCL for ALTERA FPGAs, Accelerating performance and design product...TRACK F: OpenCL for ALTERA FPGAs, Accelerating performance and design product...
TRACK F: OpenCL for ALTERA FPGAs, Accelerating performance and design product...
 
Connected Components Labeling
Connected Components LabelingConnected Components Labeling
Connected Components Labeling
 
Current Trends in HPC
Current Trends in HPCCurrent Trends in HPC
Current Trends in HPC
 
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
 
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)
 

More from pacvslideshare

More from pacvslideshare (20)

Aplicaciones de comunicación e interacción con los estudiantes (Telegram)
Aplicaciones de comunicación e interacción con los estudiantes (Telegram)Aplicaciones de comunicación e interacción con los estudiantes (Telegram)
Aplicaciones de comunicación e interacción con los estudiantes (Telegram)
 
Finding self-organized criticality in collaborative work via repository mining
Finding self-organized criticality in collaborative work via repository miningFinding self-organized criticality in collaborative work via repository mining
Finding self-organized criticality in collaborative work via repository mining
 
Servidores web de altas prestaciones. Tema 7
Servidores web de altas prestaciones. Tema 7Servidores web de altas prestaciones. Tema 7
Servidores web de altas prestaciones. Tema 7
 
Servidores web de altas prestaciones. Tema 6
Servidores web de altas prestaciones. Tema 6Servidores web de altas prestaciones. Tema 6
Servidores web de altas prestaciones. Tema 6
 
Servidores web de altas prestaciones. Tema 5
Servidores web de altas prestaciones. Tema 5Servidores web de altas prestaciones. Tema 5
Servidores web de altas prestaciones. Tema 5
 
Servidores web de altas prestaciones. Tema 4
Servidores web de altas prestaciones. Tema 4Servidores web de altas prestaciones. Tema 4
Servidores web de altas prestaciones. Tema 4
 
Servidores web de altas prestaciones. Tema 3
Servidores web de altas prestaciones. Tema 3Servidores web de altas prestaciones. Tema 3
Servidores web de altas prestaciones. Tema 3
 
Servidores web de altas prestaciones. Tema 2
Servidores web de altas prestaciones. Tema 2Servidores web de altas prestaciones. Tema 2
Servidores web de altas prestaciones. Tema 2
 
Servidores web de altas prestaciones. Tema 1
Servidores web de altas prestaciones. Tema 1Servidores web de altas prestaciones. Tema 1
Servidores web de altas prestaciones. Tema 1
 
Servidores web de altas prestaciones. Tema 0. Presentación
Servidores web de altas prestaciones. Tema 0. PresentaciónServidores web de altas prestaciones. Tema 0. Presentación
Servidores web de altas prestaciones. Tema 0. Presentación
 
Herramientas tic en docencia (2016)
Herramientas tic en docencia (2016)Herramientas tic en docencia (2016)
Herramientas tic en docencia (2016)
 
Cloud Computing. Contenedores
Cloud Computing. ContenedoresCloud Computing. Contenedores
Cloud Computing. Contenedores
 
Cloud Computing. Gestión de configuraciones. Vagrant
Cloud Computing. Gestión de configuraciones. VagrantCloud Computing. Gestión de configuraciones. Vagrant
Cloud Computing. Gestión de configuraciones. Vagrant
 
Cloud Computing. Gestión de configuraciones. Ansible
Cloud Computing. Gestión de configuraciones. AnsibleCloud Computing. Gestión de configuraciones. Ansible
Cloud Computing. Gestión de configuraciones. Ansible
 
Cloud Computing. Gestión de configuraciones
Cloud Computing. Gestión de configuracionesCloud Computing. Gestión de configuraciones
Cloud Computing. Gestión de configuraciones
 
Cloud Computing. Virtualización. IBM Bluemix
Cloud Computing. Virtualización. IBM BluemixCloud Computing. Virtualización. IBM Bluemix
Cloud Computing. Virtualización. IBM Bluemix
 
Cloud Computing. Virtualización. Azure
Cloud Computing. Virtualización. AzureCloud Computing. Virtualización. Azure
Cloud Computing. Virtualización. Azure
 
Cloud Computing. Virtualización. qemu
Cloud Computing. Virtualización. qemuCloud Computing. Virtualización. qemu
Cloud Computing. Virtualización. qemu
 
Cloud Computing. Virtualización
Cloud Computing. VirtualizaciónCloud Computing. Virtualización
Cloud Computing. Virtualización
 
Cloud Computing. Presentación general
Cloud Computing. Presentación generalCloud Computing. Presentación general
Cloud Computing. Presentación general
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 

Recently uploaded (20)

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 

Iwann2011 gpus

  • 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/