Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
CUDA-based hash crackers for the EngineYard contest (nvidia.com)
32 points by profquail on July 19, 2009 | hide | past | favorite | 12 comments


Impressive. Certainly puts CPU-based solutions using "off-the-shelf" crypto libraries into their place.

I hope whoever ends up winning (and/or doing well) posts details and code of their solution, this has been an interesting contest to follow and learn from.


I've been working with CUDA now for about a year now. Last summer I went out and bought a relatively cheap 8800 GT card, which even as an older card is capable of something like 500 GFlops if fully utilized. My Core 2 Duo can do about 20, and that's assuming you can code your programs with SIMD instructions.


Its not easy to utilise the full 500 GFlops, and this is for single FP precision, double FP precision only exists on the newer 200 series and throughput is much lower.

But certainly CUDA is very exciting :)


Actually, I think that number may be for integer instructions, which are the fastest (then single-precision, then double-precision). Which makes it even better for this scenario, since the hashing algorithm only uses integer ops.


How feasible would it be to load all your CPU cores and the GPU at the same time? Could you just fork off a thread for each core with some SIMD instructions?

With 2-8 cores combined, they should be able to give you at least a 10% increase in aggregate processing power.


The EngineYard Contest is becoming a lottery of smarts. The ability to build or find the best solution increases your odds.


And yet: the human and CPU effort expended will exceed the prize value by many multiples, which is why I consider this the Swoopo of computing contests.

And for those concerned with such things: think of the carbon footprint! <:gazes down at the co2stats insert at the bottom of every HN page>


I doubt a contest like this is really about the prize for many people. It's an opportunity for people to play around with code and learn.


Despite it being far slower than GPU-magic, this contest was a great opportunity for me to brush up on my C and finally learn MPI. Thanks, Engineyard :)


Damn pretty exciting stuff, I've wanted to do some CUDA but I've never seen some good starting code.


A good way to learn CUDA is to stop by the forums every once in a while and see what other people are doing with it. Lots of people post their code for little projects like this, which can be quite helpful for beginners.


That is pretty fast.. My C implementation for the contest will run through just about 1 million hashes per second on a Pentium M 2.0 ghz laptop.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: