setup.py 862 Bytes
Newer Older
Jiezhong Qiu's avatar
update  
Jiezhong Qiu committed
1
2
from setuptools import setup
from torch.utils.cpp_extension import BuildExtension, CUDAExtension
3
4
5
import os

CUDA_HELPER = os.environ.get('CUDA_HELPER', '/usr/local/cuda/samples/common/inc')
Rick Ho's avatar
Rick Ho committed
6
7
8
9
10
cxx_flags = [
        '-I{}'.format(CUDA_HELPER)
        ]
if os.environ.get('USE_NCCL', '0') == '1':
    cxx_flags.append('-DMOE_USE_NCCL')
Jiezhong Qiu's avatar
update  
Jiezhong Qiu committed
11
12

setup(
Jiezhong Qiu's avatar
Jiezhong Qiu committed
13
    name='moe_cuda',
Jiezhong Qiu's avatar
update  
Jiezhong Qiu committed
14
15
    ext_modules=[
        CUDAExtension(
Jiezhong Qiu's avatar
Jiezhong Qiu committed
16
            name='moe_cuda', 
Jiezhong Qiu's avatar
update  
Jiezhong Qiu committed
17
18
            sources=[
                'moe.cpp',
Rick Ho's avatar
Rick Ho committed
19
                'cuda_stream_manager.cpp',
Rick Ho's avatar
Rick Ho committed
20
21
22
                'moe_compute_kernel.cu',
                'moe_comm_kernel.cu',
                'moe_fused_kernel.cu',
Jiezhong Qiu's avatar
update  
Jiezhong Qiu committed
23
                ],
Rick Ho's avatar
Rick Ho committed
24
            extra_compile_args={
Rick Ho's avatar
Rick Ho committed
25
26
                'cxx': cxx_flags,
                'nvcc': cxx_flags
Rick Ho's avatar
Rick Ho committed
27
28
29
                }
            )
        ],
Jiezhong Qiu's avatar
update  
Jiezhong Qiu committed
30
31
    cmdclass={
        'build_ext': BuildExtension
32
    })