microsoft / BitBLAS

BitBLAS is a library to support mixed-precision matrix multiplications, especially for quantized LLM deployment.
MIT License
428 stars 34 forks source link

Installation Failure on CUDA 11.7 #203

Closed rustic-snob closed 2 months ago

rustic-snob commented 2 months ago

Thank you for your great efforts on implementing effective kernels as of low precision quantized operations.

Currently I am struggling with installation this BitBLAS library in both PyPi and git repo ways.

If I install it with PyPi, the installation finishes without errors, but It fails when importing the library

-c "import bitblas; print(bitblas.__version__)"  

OSError: libnvrtc.so.12: cannot open shared object file: No such file or directory

If I install it with git repo, it give me an error like this (I truncated it cuz it was too long)

/tmp/pip-req-build-zf3_v6r0/3rdparty/tvm/src/tl/op/bulk_copy.cc:42:3: error: ‘CUtensorMapDataType’ was not declared in this scope; did you mean ‘to_CUtensorMapDataType’?
         42 |   CUtensorMapDataType tp;
            |   ^~~~~~~~~~~~~~~~~~~
            |   to_CUtensorMapDataType
      /tmp/pip-req-build-zf3_v6r0/3rdparty/tvm/src/tl/op/bulk_copy.cc:46:9: error: ‘tp’ was not declared in this scope; did you mean ‘tl’?
         46 |         tp = CU_TENSOR_MAP_DATA_TYPE_FLOAT64;
            |         ^~
            |         tl
      /tmp/pip-req-build-zf3_v6r0/3rdparty/tvm/src/tl/op/bulk_copy.cc:46:14: error: ‘CU_TENSOR_MAP_DATA_TYPE_FLOAT64’ was not declared in this scope
         46 |         tp = CU_TENSOR_MAP_DATA_TYPE_FLOAT64;
            |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /tmp/pip-req-build-zf3_v6r0/3rdparty/tvm/src/tl/op/bulk_copy.cc:49:14: error: ‘CU_TENSOR_MAP_DATA_TYPE_FLOAT32’ was not declared in this scope
         49 |         tp = CU_TENSOR_MAP_DATA_TYPE_FLOAT32;
            |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      /tmp/pip-req-build-zf3_v6r0/3rdparty/tvm/src/tl/op/bulk_copy.cc:52:14: error: ‘CU_TENSOR_MAP_DATA_TYPE_FLOAT16’ was not declared in this scope
         52 |         tp = CU_TENSOR_MAP_DATA_TYPE_FLOAT16;
...
RuntimeError: Failed to build TVM

Can you help me with this problem?

Thank you.

LeiWang1999 commented 2 months ago

hi @rustic-snob , thanks for you attention. It seems that our new feature tile-language has dependencies on CU_TENSORMAP which may not be available in CUDA 11.

But it's surprising that the pypi package is bound to cuda 12 as this should have been resolve by pr #86 , should take a look.

rustic-snob commented 2 months ago

Yeah, I don't know why but it tryna setup in CUDA 12 even though mine is in 11.7

Anyways, I solved it by updating CUDA to 12.

Closing this issue, and Thank you a lot!