Hofmann, JohannesFey, Dietmar2017-12-062017-12-062013https://dl.gi.de/handle/20.500.12116/8601We use Evolutionary Algorithms (EAs) to evaluate different aspects of high performance computing on CPUs and GPUs. EAs have the distinct property of being made up of parts that behave rather differently from each other, and display different requirements for the underlying hardware as well as software. We can use these motives to answer crucial questions for each platform: How do we make best use of the hardware using manual optimization? Which platform offers the better software libraries to perform standard operations such as sorting? Which platform has the higher net floating-point performance and bandwidth? We draw the conclusion that GPUs are able to outperform CPUs in all categories; thus, considering time-to-solution, EAs should be run on GPUs whenever possible.enPeak PerformanceHardware ThreadStreaming SIMD ExtensionLinear Congruential GeneratorTheoretical Peak PerformanceFast Evolutionary Algorithms: Comparing High Performance Capabilities of CPUs and GPUsText/Journal Article10.1007/BF033542340177-0454