Skip to content

Files

Latest commit

 

History

History
45 lines (33 loc) · 1.42 KB

README.md

File metadata and controls

45 lines (33 loc) · 1.42 KB

SplinePSF

This is a factored out implementation repository of the spline function implemented in C++/C and CUDA. Currently it may only be used in conjunction with the DeepSMLM package. However we are planning on small standalone wrapper for Python / MATLAB; this is also the reason why we opted for a separate repository.

Installation

conda install -c haydnspass -c conda-forge spline

Known Limitations

  • C++/CUDA implementation is currently not ready for standalone use
  • Updated: CUDA supports arbitrary ROI size now. CUDA does not support ROIs bigger than 32 x 32 = 1024 pixels (this is due to the maximum number of threads per block). Please refer to the CPU version in this case

Build and Install Python package for Local Use

Make sure that the cuda compiler is in path, should you want to compile with CUDA acceleleration.

export CUDACXX=/usr/local/cuda/bin/nvcc  # with CUDA support, possibly subject to CMAKE change.

python setup.py install

Buildwheels

export CUDACXX=/usr/local/cuda/bin/nvcc  # with CUDA support, possibly subject to CMAKE change.

python setup.py bdist_wheel

Build and Deploy with conda

# recommended: create a new conda build environment
conda create --name build boa mamba
conda activate build

# navigate to [repo]/conda
cd dist_tools/conda
conda mambabuild -c conda-forge spline

CD

Set ANACONDA_USER and ANACONDA_TOKEN as GitHub Secrets.