flatironinstitute / cufinufft

Nonuniform fast Fourier transforms of types 1 and 2, in 1D, 2D, and 3D, on the GPU
Other
83 stars 18 forks source link

pip install cufinufft throws: No such file or directory: 'python/cufinufft/requirements.txt' #146

Closed dimitsev closed 1 year ago

dimitsev commented 1 year ago

System: Ubuntu 22.04.2 LTS Python version: 3.10.9 (via sudo apt install python3) Nvidia driver version: 510.108.03 (via sudo apt install nvidia-driver-510) CUDA version: 11.6 (via sudo apt install nvidia-cuda-toolkit) GPU: Nvidia RTX A5000

pip install cufinufft throws: No such file or directory: 'python/cufinufft/requirements.txt'

In detail:

Collecting cufinufft
  Downloading cufinufft-1.1.tar.gz (8.1 kB)
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [6 lines of output]
      Traceback (most recent call last):
        File "<string>", line 2, in <module>
        File "<pip-setuptools-caller>", line 34, in <module>
        File "/tmp/pip-install-aqi2n6gm/cufinufft_7137ea3d29d64fdbb7ce833433127ef5/setup.py", line 9, in <module>
          with open(os.path.join('python/cufinufft', 'requirements.txt'), 'r') as fh:
      FileNotFoundError: [Errno 2] No such file or directory: 'python/cufinufft/requirements.txt'
      [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: metadata-generation-failed

× Encountered error while generating package metadata.
╰─> See above for output.

note: This is an issue with the package mentioned above, not pip.
hint: See above for details.
roflmaostc commented 1 year ago

Can confirm, encountered the same.

dimitsev commented 1 year ago

pip install cufinufft works on python 3.8.X (where X is whatever). I tested it on Ubuntu 20.04 LTS. However, I am not sure if it works on Windows 10/11. Our people discovered https://github.com/jyhmiinlin/pynufft and https://cupy.dev/ as alternatives to cuFINUFFT and to our custom CUDA kernels that we wrote using pycuda. These work in the most up-to-date python version and on all operating systems (status of 18 April 2023).

janden commented 1 year ago

Able to confirm as well.

So what's happening here is:

I'm going to publish some wheels for py310 and see whether we can get a source distribution up for v1.2.

janden commented 1 year ago

So v1.2 now has a py310 wheel uploaded. Installed and checked that everything works under numpy==1.23.0 and pycuda==2021.1.