It's a blog.
In: Uncategorized27 Aug 2009
I think I probably read the news at the time it was actually news, but glossed over it because it seemed boring at the time… CUDA is an Nvidia technology that, in short, allows people to write code to use their video cards for number-crunching, not just drawing pixels. This seemed absurd without knowing too much about video cards, but it seems that GPUs are a fairly different environment from normal CPUs. Namely, they’re meant for massively-parallel workflows.
The people who seem to really be loving this are security folks and distributed cracking teams. This post on Offensive Security (affiliated with the BackTrack Linux distro) describes the configuration they’re using on a normal PC with an Nvidia card, and getting “10-15x” the throughput of a decent CPU in brute-forcing MD5 hashes.
Distributed (over the Internet) cracking of keys is nothing new, but it seems that there’s an interesting field developing in which CUDA+Internet is being leveraged to create what are ultimately among the most powerful “supercomputers” in the world.
I wonder what else this technology could be used for. Folding@Home comes to mind as one… Actually, I would wager that Photoshop would do extremely well using a GPU as a graphics processor, versus a normal video card.