torchkbnufft icon indicating copy to clipboard operation
torchkbnufft copied to clipboard

Turn off complex tensors completely

Open ajlok3 opened this issue 3 years ago • 3 comments

Since some features of pytorch are not yet supported for ComplexFloat tensors, it would be desirable to have a "switch" to turn off complex tensor completely (maybe in a different branch?).

My particular use case involves multi-GPU training with nccl backend. The error message I get is:

RuntimeError: Input tensor data type is not supported for NCCL process group: ComplexFloat

... and the complex tensors don't seem to come from my code but from within KbNUFFT object within the model.

ajlok3 avatar Feb 01 '22 22:02 ajlok3

Hello @ajlok3, I'm not sure this is possible with more recent versions of PyTorch - as you can see here there are no options for real-valued tensors. If you pass in something real-valued, the function will return something complex valued.

I assume that you are passing real-valued tensors into torchkbnufft where the last dimension is of size 2?

mmuckley avatar Feb 02 '22 00:02 mmuckley

Also, could you let me know what version of PyTorch you're on? As you can see here on more recent versions there might be complex-valued NCCL support.

mmuckley avatar Feb 02 '22 00:02 mmuckley

cc. @rohan-varma

anjali411 avatar Feb 08 '22 20:02 anjali411