返回
Enhancing data parallelism for Ant Colony Optimization on GPUs
DOI:10.1016/j.jpdc.2012.01.002.png)
摘要
En 中文
Graphics Processing Units (GPUs) have evolved into highly parallel and fully programmable architecture over the past five years, and the advent of CUDA has facilitated their application to many real-world applications. In this paper, we deal with a CPU implementation of Ant Colony Optimization (ACO), a population-based optimization method which comprises two major stages: tour construction and pheromone update. Because of its inherently parallel nature, ACO is well-suited to CPU implementation, but it also poses significant challenges due to irregular memory access patterns. Our contribution within this context is threefold: (1) a data parallelism scheme for tour construction tailored to CPUs, (2) novel CPU programming strategies for the pheromone update stage, and (3) a new mechanism called 1-Roulette to replicate the classic roulette wheel while improving CPU parallelism. Our implementation leads to factor gains exceeding 20x for any of the two stages of the ACO algorithm as applied to the TSP when compared to its sequential counterpart version running on a similar single-threaded high-end CPU. Moreover, an extensive discussion focused on different implementation paths on CPUs shows the way to deal with parallel graph connected components. This, in turn, suggests a broader area of inquiry, where algorithm designers may learn to adapt similar optimization methods to CPU architecture. (C) 2012 Elsevier Inc. All rights reserved.
Keyword:
Metaheuristics
GPU programming
Ant Colony Optimization
TSP
Performance analysis
期刊
IF:
4
论文数:
3.8K
被引数:
4.8K
机构
引用论文
Injury-Dependent and Disability-Specific Lumbar Spinal Gene Regulation following Sciatic Nerve Injury in the Rat大鼠坐骨神经损伤后损伤依赖性和残疾特异性腰椎基因调控
PLOS ONE
IF0
Recruitment and retention of African American patients for clinical research: An exploration of response rates in an urban psychiatric hospital.招募和保留非裔美国患者进行临床研究: 城市精神病医院响应率的探索。
没有更多内容

