Shallot icon indicating copy to clipboard operation
Shallot copied to clipboard

Allow shallot to use GPU (OpenCL and CUDA)

Open ghost opened this issue 11 years ago • 6 comments

This program would be so much faster if we were able to use our graphics cards and CPU's at the same time to do the work!

ghost avatar Aug 23 '12 19:08 ghost

It would be? I have my doubts. Last time I looked into acceleration (albeit, with CPU-based acceleration), the instruction set was designed to hash a lot of data once. It was not designed to hash a small amount of data many times, especially with initial states (key to shallot's CPU optimization). I may look into it, but don't be surprised if the same holds true for CUDA/DirectCompute/OpenCL.

Orum avatar Aug 23 '12 22:08 Orum

Well, I'd be satisfied if it was looked into and not possible. It's practically a 50/50 chance it could be useful (or even possibly there's another way to do it), so as far as I am concerned it's worth it looking into it. Thanks for being willing to at least. I think I'll do a little research too.

Edit: I know that bitcoin miners use GPU's, and bitcoin mining is based on solving some type of cryptographic problem, so it could possibly be hashing many small bits of data many times. A good graphics cards can hash about 500 million times, while my processor can do only about 1000, so that's a pretty good speed improvement. Might be viable thought from that perspective.

ghost avatar Aug 23 '12 22:08 ghost

Can this source be useful to find some ideas about this issue? https://github.com/samr7/vanitygen

HostFat avatar Sep 21 '12 18:09 HostFat

Scallion does this and is released under a similar license, it claims 300x a speed up on a mid-range graphics card.

quixotist avatar May 16 '13 14:05 quixotist

@quixotist: Thanks for letting us know! :) I suppose I don't see any point leaving this open since another project has solved this. :)

Here's the project that quixotist referenced: https://github.com/lachesis/scallion

ghost avatar May 19 '13 21:05 ghost

Scallion is a .NET CLR application which requires Mono plus bindings for OpenCL, it's terribly hard to get running on Linux even if you have the hundreds of megs of runtime installed.

IMO it would be really useful to integrate this functionality into Shallot, ideally as GLSL if this is possible so we can have GPU acceleration without the overhead of all those horrible dependencies.

quixotist avatar May 20 '13 00:05 quixotist