It's important to understand that most crypto algorithms don't actually use the passphrase for the symmetric key. It's hashed into a number. For example for AES, you have a choice of 64, 128 or 256 bits. No matter how good your passphrase, the actual key will be one of those bit lengths.
Which is why cracking tools don't just search the entire n-bit space, they instead generate extremely long lists of plausible passwords, hash them, and try those.
I've forgotten the passwords to some important encrypted documents, so I tried a few of the crackers.
They only sort of work. For example one has a choice of brute force or a dictionary, but not a combination of the two.
Also they do a lot of calculation they don't need to. Rather than hash every word in a dictionary every time they are executed, they could has them all just once, then save the hashes in a file.
Some offer the option of CPU implementations, NVIDIA CUDA or OpenCL. My MacBook Pro supports all three - lots of Macs have multiple cores, as well as both NVIDIA _and_ AMD CPUs. What I'd like to see is all three ways going simultaneously, but they don't do that.
Now it's not like I couldn't "use the source, Mike". It's just that I haven't actually done so yet.
"Rather than hash every word in a dictionary every time they are executed, they could has them all just once, then save the hashes in a file."
That's (part of) why any competent password storage system uses salt. It completely defeats precomputed tables.
For your first "problem", ocl-hashcat hybrid attack deals with that nicely. It also does use the CPU quite extensively for the bits the CPU is good at, so not sure where you're getting the idea that none of the common crackers do so.
The ones I actually tried appear to have only been implemented as far as required to crack the author's own archives, then were posted as-is.
I'll have a look at ocl-hashcat, I had not heard of that one.
On my macbook pro, I have a core quad xeon, which has hyperthreading, so sorta kind 8 CPUs, and two GPUs. I don't recall whether one is amd or if they're both nvidia. I do know that apple made some macs that had both vendors' gpus.