diff --git a/sgl-kernel/python/sgl_kernel/elementwise.py b/sgl-kernel/python/sgl_kernel/elementwise.py index 3b402366e..5684800be 100644 --- a/sgl-kernel/python/sgl_kernel/elementwise.py +++ b/sgl-kernel/python/sgl_kernel/elementwise.py @@ -369,7 +369,7 @@ def downcast_fp8( ) -def copy_to_gpu_no_ce(input: List[int], output: torch.Tensor): +def copy_to_gpu_no_ce(input: torch.Tensor, output: torch.Tensor): torch.ops.sgl_kernel.copy_to_gpu_no_ce(input, output) diff --git a/sgl-kernel/tests/test_copy.py b/sgl-kernel/tests/test_copy.py new file mode 100644 index 000000000..70ed864c1 --- /dev/null +++ b/sgl-kernel/tests/test_copy.py @@ -0,0 +1,16 @@ +import pytest +import sgl_kernel +import torch +from sgl_kernel.elementwise import copy_to_gpu_no_ce + + +@pytest.mark.parametrize("size", [64, 72]) +def test_copy_to_gpu_no_ce(size): + tensor_cpu = torch.randint(0, 1000000, (size,), dtype=torch.int32, device="cpu") + tensor_gpu = torch.empty_like(tensor_cpu, device="cuda") + copy_to_gpu_no_ce(tensor_cpu, tensor_gpu) + assert torch.all(tensor_cpu.cuda() == tensor_gpu) + + +if __name__ == "__main__": + pytest.main([__file__])