Coder Social home page Coder Social logo

andyschwarzl / gpunufft Goto Github PK

View Code? Open in Web Editor NEW
77.0 12.0 32.0 81.41 MB

gpuNUFFT - An Open-Source GPU Library for 3D Gridding with Direct Matlab and Python Interface

Home Page: http://cai2r.net/resources/software/gpunufft-open-source-gpu-library-3d-gridding-direct-matlab-interface

License: Other

Python 2.27% CMake 3.46% C++ 67.16% Cuda 21.97% M 0.07% MATLAB 5.03% Batchfile 0.04%

gpunufft's Introduction

gpuNUFFT - GPU Regridding of arbitrary 3-D/2-D MRI data

  • Andreas Schwarzl - andy.schwarzl[at]gmail.com
  • Florian Knoll - florian.knoll[at]nyumc.org

INFO:

GPU 3D/2D regridding library with MATLAB(R) Mexfile output. Go to the subdirectory CUDA to compile the mexfiles.

REQUIREMENTS:

CMAKE Options:

  • GEN_MEX_FILES : DEFAULT ON, enables generation of Matlab MEX files
  • WITH_DEBUG : DEFAULT OFF, enables Command-Line DEBUG output
  • WITH_MATLAB_DEBUG : DEFAULT OFF, enables MATLAB Console DEBUG output
  • GEN_TESTS : DEFAULT OFF, generate Unit tests
  • FERMI_GPU : DEFAULT OFF, set ON to support cards with compute capability 2.0

Prior to compilation, the path where MATLAB is installed has to be defined in the top level CMakeLists.txt file, e.g.:

SET(MATLAB_ROOT_DIR "/home/florian/Programs/MATLAB/R2012b" CACHE STRING "MATLAB Installation Directory")

Alternatively, it can be passed as command line argument when calling cmake, e.g.:

cmake .. -DMATLAB_ROOT_DIR=/path/to/matlab

LINUX, using gcc:

build project via cmake, starting from project root directory:

> cd CUDA
> mkdir -p build
> cd build
> cmake ..
> make

Note: This version of gpuNUFFT was tested with CUDA 5.0. NVIDIAs nvcc compiler did not support gcc 4.7 or higher at this time. It is therefore suggested to compile gpuNUFFT with gcc 4.6. One comfortable way to toggle between gcc/g++ versions is to use the update-alternatives tool.

Screencast: Alternatively follow the installation and usage instructions for Linux:

Linux Installation


WINDOWS, with Visual Studio:

Setup a working version of Visual Studio Community 2013 or use the Visual Studio professional edition if available. Generate the project solution using the CMake-GUI or from command line by starting from the project root directory:

> cd CUDA
> mkdir build 
> cd build
> cmake .. -G "Visual Studio 12 2013 Win64"
> Build created Solution gpuNUFFT.sln using Visual Studio

For the Win64 platform check that all necessary Visual Studio Add-ons are installed correctly and a Win64 dummy project can be created using VS.

Screencast: Alternatively follow the installation and usage instructions for Windows:

Windows Installation


Run:

The compiled CUDA-mexfiles will appear in the bin directory and are also copied automatically into the gpuNUFFT/@gpuNUFFT/private directory . Include the gpuNUFFT directory into the matlab search path, in order to run the provided demo example.


Doc:

To generate the source code documentation run

> make doc

in the build directory.

Note: Requires doxygen to be installed.

Supporting material

Written documentation and presentations can be found here.

Python Bindings

Now we have support for python bindings. Bindings written by Chaithya G R and Carole Lazarus.

For using the python bindings, install from git repository:

pip install git+https://github.com/andyschwarzl/gpuNUFFT

To see the usage, please check gpuNUFFT/python or use the NonCartesianFFT class from pysap-mri

gpunufft's People

Contributors

andyschwarzl avatar chaithyagr avatar florianknoll avatar khammernik avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gpunufft's Issues

Problems on .so file

Hi~
I try to install this on Ubuntu 16.04,but always meet with this problem when running demo:

Invalid MEX-file
'/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64':
Missing symbol
'_ZNKSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE7compareEPKc'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNKSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEE3strEv'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNSt13runtime_errorC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNSt16invalid_argumentC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC1EPKcRKS3' required
by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol '_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED1Ev'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEEC1ERKNS_12basic_stringIcS2_S3_EESt13_Ios_Openmode'
required by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'
Missing symbol
'_ZNSt7__cxx1118basic_stringstreamIcSt11char_traitsIcESaIcEED1Ev' required
by
'/home/wanggh/gpuNUFFT/CUDA/bin/libgpuNUFFT_f.so->/home/wanggh/gpuNUFFT/gpuNUFFT/@gpuNUFFT/private/mex_gpuNUFFT_precomp_f.mexa64'.

Error in gpuNUFFT (line 104)
[res.op.dataIndices,res.op.sectorDataCount,res.op.densSorted,res.op.coords,res.op.sectorCenters,res.op.sectorProcessingOrder,res.op.deapoFunction]
= mex_gpuNUFFT_precomp_f(single(k)',single(w)',res.op.params);

Error in cgsense_phantom_recon (line 34)
FT = gpuNUFFT(k',col(w(:,:,1)),osf,wg,sw,[N,N,nSl],[],true);

And I've tried cuda7.5/9.0/9.1. When compiling, this always happens
Building NVCC (Device) object src/gpu/coarse/CMakeFiles/gpuNUFFT_f.dir/__/gpuNUFFT_f_generated_precomp_kernels.cu.o
/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(97): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(108): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(97): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(108): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(97): warning: calling a host function from a host device function is not allowed

/home/wanggh/gpuNUFFT/CUDA/inc/precomp_utils.hpp(108): warning: calling a host function from a host device function is not allowed

Basically I follow the tutorial on the video, and I dont know where the problem comes from. Thanks a lot!

CMake Error, variables set to NOTFOUND

When trying to build gpuNUFFT using CUDA 10 and VS 2017, I get errors saying that variables are set to NOTFOUND. Any help would be appreciated.

Selecting Windows SDK version 10.0.17763.0 to target Windows 6.1.7601.
The C compiler identification is MSVC 19.16.27027.1
The CXX compiler identification is MSVC 19.16.27027.1
Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/cl.exe
Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/cl.exe -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Detecting C compile features
Detecting C compile features - done
Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/cl.exe
Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.16.27023/bin/Hostx86/x86/cl.exe -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Detecting CXX compile features
Detecting CXX compile features - done
Found CUDA: C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v10.0 (found version "10.0")
Could NOT find Matlab (missing: Matlab_MEX_LIBRARY Matlab_MX_LIBRARY Matlab_ENGINE_LIBRARY Matlab_DATAARRAY_LIBRARY) (found version "9.5")
MATLAB Installation found in C:\Program Files\MATLAB\R2018b
Setting MATLAB DEBUG Option to false
Setting DEBUG Option to false
setting NVCC FLAGS to: -arch=sm_30;-gencode;arch=compute_30,code=sm_30;-gencode;arch=compute_50,code=sm_50;-gencode=arch=compute_52,code=sm_52;-gencode=arch=compute_52,code=compute_52
creating lib with name: gpuNUFFT_f
------start creating libraries-------
Coarse GPU GpuNUFFT Library
Atomic GPU GpuNUFFT Library
MEX file
checking MATLAB INC DIR =
BUILDING FOR 32 bit Windows
Using MATLAB MX LIB: MATLAB_MX_LIBRARY-NOTFOUND
Using MATLAB MEX LIB: MATLAB_MEX_LIBRARY-NOTFOUND
Using MATLAB INC DIR: C:\Program Files\MATLAB\R2018b\extern\include
set Win 32 suffix
Generate precomputation MEX file
Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE)
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
CUDA_cublas_LIBRARY (ADVANCED)
linked by target "gpuNUFFT_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/coarse
linked by target "gpuNUFFT_ATM_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/atomic
CUDA_cufft_LIBRARY (ADVANCED)
linked by target "gpuNUFFT_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/coarse
linked by target "gpuNUFFT_ATM_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/atomic
MATLAB_MEX_LIBRARY
linked by target "mex_gpuNUFFT_adj_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab
linked by target "mex_gpuNUFFT_forw_atomic_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab
linked by target "mex_gpuNUFFT_forw_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab
linked by target "mex_gpuNUFFT_adj_atomic_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab
linked by target "mex_gpuNUFFT_precomp_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab/precomputation
MATLAB_MX_LIBRARY
linked by target "mex_gpuNUFFT_adj_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab
linked by target "mex_gpuNUFFT_forw_atomic_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab
linked by target "mex_gpuNUFFT_forw_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab
linked by target "mex_gpuNUFFT_adj_atomic_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab
linked by target "mex_gpuNUFFT_precomp_f" in directory C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/src/gpu/matlab/precomputation

Configuring incomplete, errors occurred!
See also "C:/Users/Jackson/Google Drive/Lab/MATLAB_Codes/gpuNUFFT-master/CUDA/build/CMakeFiles/CMakeOutput.log".

Problems with Visual Studio 2017

There seem to be problems when trying to build gpuNUFFT with CUDA 9 and VS 2017 (Platform toolset v141).

https://stackoverflow.com/questions/43745099/using-cuda-with-visual-studio-2017

Building gpuNUFFT may result in the following error:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional\Common7\IDE\VC\VCTargets\Microsoft.CppCommon.targets(171,5): error MSB6006: "cmd.exe" exited with code 1.

One workaround is to change the platform toolset to v140 (2015) directly in Visual Studio. Or you can try to use the "Visual Studio 14 2015 Win64" generator during CMake.

HTH

Arbitrary sector width

Do not restrict the sector width to be a integer multiple of the oversampled grid since in some cases (anisotropic grids) this restriction cannot be met due to the problem size.

Density compensation

Hi,
First, i want to thank you for your work.

I try to use the last commit (Jul 2, 2017) and it seems you have changed the way you used the density compensation.

I'm currently using the mex function SDC3 from (http://www.ismrm.org/mri_unbound/sequence.htm) in order to generate density compensation vector. In release, 2.0.8 i have to directly passed the result "w" and now, i have to pass "w.^2".

Is that normal ?

While i'm here, how do you generate the density compensation vector ? Are you using gpuNUFFT, passing a vector of one ?

Perform coil summation on gpu when sensitivity data is present

If the gpuNUFFT operator is initialized with coil sensitivities following steps can be performed automatically on the GPU:

  • Adjoint operation: sum over coils as final step

for ii = 1:nc
y = y + conj(sens(:,:,:,ii) .* FH(data(:,ii)); end

  • Forward operation: loop over coils

img = repmat(img,[1,1,1,nCh]);
for ii = 1:nc
data(:,ii) = F( sens(:,:,:,ii) .* img(:,:,:,ii) ); end

cgsense_brain32ch_recon_2D.m demo error

Hi,
I installed gpuNUFFT today, and while the phantom demo (cgsense_phantom_recon.m) runs successfully, the brain demo (cgsense_brain32ch_recon_2D.m) gives this output:

Generate NUFFT Operator without coil sensitivities
Estimate coil sensitivities.
Generate NUFFT Operator with coil sensitivities
Time adjoint: 0.063022 s
Time forward: 0.061578 s
Error using .*
Matrix dimensions must agree.

Error in cg_sense_2d (line 47)
y = FT'* (data .* sqrt(repmat(col(mask), [1 nc])));

Error in cgsense_brain32ch_recon_2D (line 88)
img_cgsense = cg_sense_2d(rawdata,FT,senseEst,1,alpha,tol,maxitCG,display,useMultiCoil);

Is there a problem with my installation?

Thanks,
Matt

Compilation error on macOS

Fails at 57% on:

/.../gpuNUFFT/CUDA/inc/matlab_helper.h:113:37: error:
      cannot pass object of non-POD type 'IndType2' through variadic function;
      call will abort at runtime [-Wnon-pod-varargs]
        mexPrintf("%s: %d, ", name, (*data)[i]);
                                    ^
/.../gpuNUFFT/CUDA/inc/matlab_helper.h:140:3: note:
      in instantiation of function template specialization
      'readMatlabInputArray<IndType2>' requested here
  readMatlabInputArray<TType>(prhs, input_index, highest_varying_dim, name,
  ^
/.../gpuNUFFT/CUDA/inc/matlab_helper.h:166:3: note:
      in instantiation of function template specialization
      'readMatlabInputArray<IndType2>' requested here
  readMatlabInputArray<TType>(prhs, input_index, highest_varying_dim, name,
  ^
/.../gpuNUFFT/CUDA/src/gpu/matlab/gpuNUFFT_forw.cpp:88:7: note:
      in instantiation of function template specialization
      'readAndCreateArray<IndType2>' requested here
      readAndCreateArray<IndType2>(prhs, pcount++, 0,
      ^
In file included from /.../gpuNUFFT/CUDA/src/gpu/matlab/gpuNUFFT_forw.cpp:1:
/.../gpuNUFFT/CUDA/inc/matlab_helper.h:115:37: error:
      cannot pass object of non-POD type 'IndType2' through variadic function;
      call will abort at runtime [-Wnon-pod-varargs]
        mexPrintf("%s: %f, ", name, (*data)[i]);
                                    ^
2 errors generated.

I’m building on macOS with latest CUDA 8.0 and Apple LLVM 8.0.0 and HEAD of your repo. If this is a macOS thing, feel free to close—I’m building it here just to do some basic testing, I will find a Linux box with a more modern GPU and test there.

Remove sector overlap

Since atomic write operations are used, overlapping sections on the edges of the sectors are unnecessary and just computational overload

gpuNUFFT and NUFFT

I have built gpuNUFFT and tried to run cgsense_brain32ch_recon_2D. I get the following error:
Generate NUFFT Operator without coil sensitivities
Error using nufft
Too many input arguments.

Error in cgsense_brain32ch_recon_2D (line 36)
FT = nufft(col(k),col(w),1,0,[imwidth,imwidth], 2);

I changed nufft to lowercase in order to match the nufft from Dr. Fessler's IRT, but there must be some parameter mismatch.

Can you tell me more about the version of NUFFT you used for the demos?

Support for Multiple Workers

I am running this code on a computing server with 8 GPUs available to me, but as far as I can tell the gpuNUFFT operations are only running on a single GPU rather than accessing multiple workers. Is there any options in the MEX file makelist or elsewhere that would support multiple GPUs?

Out-of-memory in gpuNUFFT/CUDA/inc/cuda_utils.hpp at line 40

I'm experiencing sporadic crashes with an out-of-memory error message that points towards cuda_utils.hpp line 40. Running on Nvidia Tesla K40M (12Gb GDDR5) and I'm working on 2D data, so I'm nowhere near capacity. Could this be a memory leak?

out of memory in /home/alex/gpuNUFFT/CUDA/inc/cuda_utils.hpp at line 40

Missing NUFFT function

In gradient_demo.m, a function NUFFT is called, but it does not seem to be in the package. At the beginning of the script, an addpath command is issued for ../../../fessler/NUFFT. However, it is not clear what this toolbox refers to. The function call does not seem to match that of the nufft function in the IRT toolbox.

Fix problems when no sensitivity data is present

Apparently, following error occurs when no sensitivity data is present:

Error in gpuNUFFT (line 110)
    res.op.sens = reshape(res.op.sens,[2 imageDim(1)*imageDim(2)*max(1,imageDim(3)) res.op.sensChn]);

Error during configure

Hey,

I tried to configure it using cmake and get the following error:
Coarse GPU GpuNUFFT Library

Any ideas how I could try to resolve that problem. I succesfully installed it on other pcs before but on this one I have no idea what else it could be.

Any help appreciated

Moritz

The C compiler identification is MSVC 19.12.25834.0
The CXX compiler identification is MSVC 19.12.25834.0
Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.12.25827/bin/Hostx86/x64/cl.exe
Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.12.25827/bin/Hostx86/x64/cl.exe -- works
Detecting C compiler ABI info
Detecting C compiler ABI info - done
Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.12.25827/bin/Hostx86/x64/cl.exe
Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2017/Community/VC/Tools/MSVC/14.12.25827/bin/Hostx86/x64/cl.exe -- works
Detecting CXX compiler ABI info
Detecting CXX compiler ABI info - done
Detecting CXX compile features
Detecting CXX compile features - done
MATLAB Installation found in C:\Program Files\MATLAB\R2017a
Setting DEBUG Option to true
Setting MATLAB DEBUG Option to false
setting NVCC FLAGS to: -arch;sm_20;
creating lib with name: gpuNUFFT_f
------start creating libraries-------
Coarse GPU GpuNUFFT Library
MEX file
checking MATLAB INC DIR = C:\Program Files\MATLAB\R2017a\extern\include
BUILDING FOR 64 bit Windows
Using MATLAB MX LIB: C:/Program Files/MATLAB/R2017a/extern/lib/win64/microsoft/libmx.lib
Using MATLAB MEX LIB: C:/Program Files/MATLAB/R2017a/extern/lib/win64/microsoft/libmex.lib
Using MATLAB INC DIR: C:\Program Files\MATLAB\R2017a\extern\include
set Win 64 suffix
Generate precomputation MEX file
Configuring done

Matlab crashes when calling mex_gpuNUFFT_precomp_f()

Hi!
I just used cmake to set up the .mex files as instructed in the read.me. But unfortunaltely I have issues using gpuNUFFT as Matlab crashes every time.
Once I try to execute the demo script cgsense_brain32ch_recon_2D.m it starts executing the code so I guess the compiling process was successful, but Matlab crashes very rapidly without seeing any errors when executing mex_gpuNUFFT_precomp_f(...) which gets called within the function gpuNUFFT(...).
It happens with any data, also with the demo script.
When observing the behaviour of my machine in the task manager, I see no rise in ram or anything else.
My machine uses 16GB ram, a Cuda 10, and Matlab 2018a.
I experience the same problem using cloud computing, so I dont think its the limitations of my machine.

Can anybody help me?

Thank you
Lukas

unable to cmake due to missing CMakeLists.txt

Dear Andy,

I follow your README to build under linux but it breaks at the first step:

ahb@ccblin019 /data/ahb/gpuNUFFT> mkdir build
ahb@ccblin019 /data/ahb/gpuNUFFT> cd build/
ahb@ccblin019 /data/ahb/gpuNUFFT/build> cmake ..
CMake Error: The source directory "/data/ahb/gpuNUFFT" does not appear to
contain CMakeLists.txt.
Specify --help for usage, or press the help button on the CMake GUI.

Is there a missing file in the top-level directory?

Or maybe something obvious I'm missing - I don't use cmake much. Thanks! Alex

Compilation error CUDA 9.0

Compilation using CUDA 9.0 on Ubuntu 16.04. Fails at 3% with error:
nvcc fatal : Unsupported gpu architecture 'compute_20'
CMake Error at gpuNUFFT_f_generated_precomp_kernels.cu.o.cmake:207 (message):
Error generating
gpuNUFFT/CUDA/build/src/gpu/coarse/CMakeFiles/gpuNUFFT_f.dir/__/./gpuNUFFT_f_generated_precomp_kernels.cu.o

Documentation

Create a class based documentation and create a doxygen doc.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.