cufinufft icon indicating copy to clipboard operation
cufinufft copied to clipboard

Windows version

Open ApplestarGY opened this issue 4 years ago • 7 comments

Hi,

I was wondering if cuFINUFFT is platform neutral. If not, do you plan to develop a Windows version?

Thanks, Yuan

ApplestarGY avatar Aug 16 '21 14:08 ApplestarGY

Dear Yuan, we have not tried it on Windows. We suspect that only some changes to the Makefile are needed. You might want to look at those changes for the related FINUFFT code. I am alerting @MelodyShih @garrettwrong @JBlaschke in case they have anything to add. Best, Alex

ahbarnett avatar Sep 22 '21 16:09 ahbarnett

Hi @ApplestarGY, I haven't use the NVIDIA toolchain on Windows, but my assumption would be that it's not that different from the Linux toolchain (especially on if you use the Windows Subsystem for Linux). That is to say that cufinufft isn't using any library calls specific to Linux/POSIX. So if you can get the compiler to work, I doubt there would be any problems. The only place where I am a little unsure would be python -- I don't know how the python C-API works in Windows.

JBlaschke avatar Sep 24 '21 06:09 JBlaschke

@ahbarnett , @JBlaschke I guess the answer is that there is not currently any plan to deploy cuFINUFFT to Windows from your side? Even though no linux specific dependencies are used, straight up building this on Windows looks cumbersome. Perhaps easiest to rewrite to use cmake? Greatly appreciated feature request would be python wheels working on Windows 😄

turbotage avatar Jan 24 '23 12:01 turbotage

@turbotage -- I think you have two questions here:

  1. Do we plan to deploy this on Windows?
  2. Do we plan to include alternate build systems (e.g. cmake)?

I think these are fundamentally different. My answers would be:

  1. No. I am unaware of any HPC systems running Windows
  2. This is an interesting question. I am open to including a cmake build unless folks here have any objections. I like embracing multiple build systems for resiliency. We could add python's setuptools to the mix also. (@ahbarnett what do you think?)

@turbotage why do you think building on windows is cumbersome? The Makefile doesn't do anything fancy, like it's not running perl/bash scripts to find things, etc. So you might just set the paths for Windows + use the Nvidia compiler. Or am I missing anything?

JBlaschke avatar Jan 26 '23 18:01 JBlaschke

Robert Blackwell and Joakim Anden are actively merging cufinufft into the finufft (repo and common build, for now; compu kernels to be merged later). That will use cmake, building on exisintg cmake for FINUFFT (which will become the standard and the makefile become obsolete, graduallly). Look at @rblackwer PR into FINUFFT. So, stay tuned there! Hope this helps. Best, Alex

On Thu, Jan 26, 2023 at 1:51 PM Johannes Blaschke @.***> wrote:

@turbotage https://github.com/turbotage -- I think you have two questions here:

  1. Do we plan to deploy this on Windows?
  2. Do we plan to include alternate build systems (e.g. cmake)?

I think these are fundamentally different. My answers would be:

  1. No. I am unaware of any HPC systems running Windows
  2. This is an interesting question. I am open to including a cmake build unless folks here have any objections. I like embracing multiple build systems for resiliency. We could add python's setuptools to the mix also. @.*** https://github.com/ahbarnett what do you think?)

@turbotage https://github.com/turbotage why do you think building on windows is cumbersome? The Makefile doesn't do anything fancy, like it's not running perl/bash scripts to find things, etc. So you might just set the paths for Windows + use the Nvidia compiler. Or am I missing anything?

— Reply to this email directly, view it on GitHub https://github.com/flatironinstitute/cufinufft/issues/114#issuecomment-1405452516, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACNZRSX4FO5LAI3AVM3LU4TWULBUVANCNFSM5CH4AAPQ . You are receiving this because you were mentioned.Message ID: @.***>

-- *-------------------------------------------------------------------~^`^~._.~' |\ Alex Barnett Center for Computational Mathematics, Flatiron Institute | \ http://users.flatironinstitute.org/~ahb 646-876-5942

ahbarnett avatar Jan 26 '23 23:01 ahbarnett

@ahbarnett I saw it; really awesome! What is the outlook for Type 3 transforms there? There is a pull request here for it, #120.

turbotage avatar Jan 30 '23 08:01 turbotage

We do want to bring in this PR for type 3, but that will happen after the initial merge. For now I guess you have to try to compile that PR. Sorry, there are multiple axes here (CPU/GPU, 3 types, make/cmake, ...) and @blackwer and @janden are working on the merge. It is great to know you will be a user!

ahbarnett avatar Jan 30 '23 17:01 ahbarnett