setup.py 873 B

12345678910111213141516171819202122232425
  1. from setuptools import setup
  2. import torch.cuda
  3. from torch.utils.cpp_extension import CppExtension, CUDAExtension, BuildExtension
  4. from torch.utils.cpp_extension import CUDA_HOME
  5. ext_modules = []
  6. if torch.cuda.is_available() and CUDA_HOME is not None:
  7. extension = CUDAExtension(
  8. 'structured_kernels', [
  9. 'cauchy.cpp',
  10. 'cauchy_cuda.cu',
  11. ],
  12. extra_compile_args={'cxx': ['-g', '-march=native', '-funroll-loops'],
  13. # 'nvcc': ['-O2', '-lineinfo']
  14. 'nvcc': ['-O2', '-lineinfo', '--use_fast_math']
  15. }
  16. )
  17. ext_modules.append(extension)
  18. setup(
  19. name='structured_kernels',
  20. version="0.1.0",
  21. ext_modules=ext_modules,
  22. # cmdclass={'build_ext': BuildExtension.with_options(use_ninja=False)})
  23. cmdclass={'build_ext': BuildExtension})