Showing results for 
Search instead for 
Did you mean: 

General Discussions

Journeyman III

Use AMD GPUs in brute forcing

Hello, I'm a new developer and decided to go from writing small good for nothing programs for practice, to actually making something useful, a RAR-PDF etc password recovery tool. The original plan was to make a simple program written in python that utilizes the CPU, but since I managed to interest some friends of mine in the project, we've decided to make an industry "competitive" (and with competitive I mean something worth someone's time) program that utilizes the GPU, since modern graphics' cards can test roughly 70 times more keys per second than modern CPUs. So it all comes down to how I can utilize a GPU's computing power, I know that with nvidia cards I can use CUDA but I'm kind of lost when it came to AMD cards, since I couldn't find a clear answer. My research up until now is that I should use OpenCL? I don't know, I'm pretty lost, from the looks of it, it seems more like it enhances the GPU performance rather than enhancing a program's performance with the GPU. Any and all answers are appreciated.

2 Replies
Big Boss

OpenCL has a clear advantage when portability is the concern. Some of the key features of OpenCL are:

  • Open standard for cross-platform and heterogeneous computing
  • Support for many types of processors such as CPUs, GPUs, DSPs, FPGAs and other h/w accelerators
  • Backed and supported by most of the industry leaders in this domain
  • Support for a wide range of applications and ability to extract good performance on most of the platforms due to its native support at hardware/platform level
Big Boss

Please note:

With GPUOpen, AMD has started an initiative to open source many tools and software that greatly help the developers for creating GPU computing applications for great performance (mainly targeting for AMD hardware/platform). For more information about those computing tools/software, please check this link: