AntonKueltz / fastecdsa

Python library for fast elliptic curve crypto
https://pypi.python.org/pypi/fastecdsa
The Unlicense
263 stars 76 forks source link

Does fastecdsa support gpu computation? #64

Closed liho00 closed 3 years ago

liho00 commented 3 years ago

After I read the documentation, I realized that, fastecdsa does not support gpu computation in Cuda or OpenCl, am I right?

Will you think that compute the result by running the script on GPU will be even faster than on CPU?

Can this be a feature request?

I think there is a python package called numba which allow python code to be run on gpu, but i still learning it.

AntonKueltz commented 3 years ago

I'll admit I'm not very familiar with GPU programming but my understanding is that GPUs would be suited for highly parallel workloads, whereas the elliptic curve operations that are the bottlenecks of this package aren't very suit to parallel implementations. I'm also not aware of any GMP support for running on GPUs, so the C code would have to be re-written.

That's not to say that this can't be done, but I would be interested in hearing an argument for the advantages of running this on the GPU, and also would likely need someone more familiar with GPU programming to implement it. I don't think a python wrapper around the native GPU code would work since my guess is that this would cause a fairly big performance hit vs writing this in something like C that the GPU can run natively.

AntonKueltz commented 3 years ago

Closing this as benefits and use cases of supporting running on GPUs are not clear.