-
Notifications
You must be signed in to change notification settings - Fork 888
Open
Description
Just building vllm on aarch64 and see the following warning during the build process:
/vllm/.deps/flashmla-src/csrc/flash_api.cpp: In function ‘std::vector<at::Tensor> get_mla_metadata(at::Tensor&, int, int)’:
/vllm/.deps/flashmla-src/csrc/flash_api.cpp:46:38: warning: narrowing conversion of ‘(char)(& seqlens_k)->at::Tensor::<anonymous>.at::TensorBase::get_device()’ from ‘char’ to ‘c10::DeviceIndex’ {aka ‘signed char’} [-Wnarrowing] 46 | at::cuda::CUDAGuard device_guard{(char)seqlens_k.get_device()}; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/vllm/.deps/flashmla-src/csrc/flash_api.cpp: In function ‘std::vector<at::Tensor> mha_fwd_kvcache_mla(at::Tensor&, const at::Tensor&, int, const at::Tensor&, const at::Tensor&, float, bool, const at::Tensor&, const at::Tensor&)’:
/vllm/.deps/flashmla-src/csrc/flash_api.cpp:133:38: warning: narrowing conversion of ‘(char)(& q)->at::Tensor::<anonymous>.at::TensorBase::get_device()’ from ‘char’ to ‘c10::DeviceIndex’ {aka ‘signed char’} [-Wnarrowing]
133 | at::cuda::CUDAGuard device_guard{(char)q.get_device()};
| ^~~~~~~~~~~~~~~~~~~~
Since on aarch64 char
is by default unsigned
compared to x86 where it is signed
I think we need to be a bit more precise in which char is being used to remove the warning. Would using (signed char)
be enough?
Metadata
Metadata
Assignees
Labels
No labels