NVlabs / curobo

CUDA Accelerated Robot Library
https://curobo.org
Other
722 stars 107 forks source link

RuntimeError: Incompatible data types: torch.float64 and <class 'warp.types.vec4f'> #46

Closed chenzishuo1994 closed 9 months ago

chenzishuo1994 commented 9 months ago

I try to install curobo via conda(Ubuntu=18.04 python=3.7 cuda=11.3 pytorch=1.12.1),Install git lfs with "sudo apt install git-lfs"and run "pip install -e . --no-build-isolation" successful.But when running "python3 -m pytest", there always be error "RuntimeError: Incompatible data types: torch.float64 and <class 'warp.types.vec4f'>". Is anything wrong?Really thanks for your help.

chenzishuo1994 commented 9 months ago

This is the full error message: platform linux -- Python 3.7.16, pytest-7.1.2, pluggy-1.0.0 rootdir: /home/chen/curobo, configfile: pyproject.toml plugins: torchtyping-0.1.4, typeguard-4.1.2 collected 121 items / 2 errors / 2 skipped

================================================================================================== ERRORS ================================================================================================== _ ERROR collecting tests/ik_configtest.py tests/ik_config_test.py:134: in (ik_base_config(), True), tests/ik_config_test.py:36: in ik_base_config load_yaml(join_path(get_robot_configs_path(), robot_file))["robot_cfg"] src/curobo/types/robot.py:49: in from_dict CudaRobotGeneratorConfig(**data_dict_in["kinematics"], tensor_args=tensor_args)

:31: in __init__ ??? src/curobo/cuda_robot_model/cuda_robot_generator.py:203: in __post_init__ self.extra_links[k] = LinkParams.from_dict(self.extra_links[k]) src/curobo/cuda_robot_model/kinematics_parser.py:43: in from_dict Pose.from_list(dict_data["fixed_transform"], tensor_args=TensorDeviceType()) src/curobo/types/math.py:281: in get_numpy_matrix return self.get_matrix().cpu().numpy() ../miniconda3/envs/curobo2/lib/python3.7/contextlib.py:74: in inner return func(*args, **kwds) src/curobo/types/math.py:277: in get_matrix full_mat = pose_to_matrix(self.position, self.quaternion, out_matrix) src/curobo/geom/transform.py:163: in pose_to_matrix out_matrix[..., :3, :3] = quaternion_to_matrix(quaternion) src/curobo/geom/transform.py:110: in quaternion_to_matrix out_mat = QuatToMatrix.apply(quaternions, out_mat, adj_quaternion) src/curobo/geom/transform.py:1078: in forward wp.from_torch(quaternion.detach().view(-1, 4).contiguous(), dtype=wp.vec4), ../miniconda3/envs/curobo2/lib/python3.7/site-packages/warp/torch.py:115: in from_torch raise RuntimeError(f"Incompatible data types: {t.dtype} and {dtype}") E RuntimeError: Incompatible data types: torch.float64 and ______________________________________________________________________________ ERROR collecting tests/trajopt_config_test.py _______________________________________________________________________________ tests/trajopt_config_test.py:115: in (trajopt_base_config(), True), tests/trajopt_config_test.py:31: in trajopt_base_config load_yaml(join_path(get_robot_configs_path(), robot_file))["robot_cfg"] src/curobo/types/robot.py:49: in from_dict CudaRobotGeneratorConfig(**data_dict_in["kinematics"], tensor_args=tensor_args) :31: in __init__ ??? src/curobo/cuda_robot_model/cuda_robot_generator.py:203: in __post_init__ self.extra_links[k] = LinkParams.from_dict(self.extra_links[k]) src/curobo/cuda_robot_model/kinematics_parser.py:43: in from_dict Pose.from_list(dict_data["fixed_transform"], tensor_args=TensorDeviceType()) src/curobo/types/math.py:281: in get_numpy_matrix return self.get_matrix().cpu().numpy() ../miniconda3/envs/curobo2/lib/python3.7/contextlib.py:74: in inner return func(*args, **kwds) src/curobo/types/math.py:277: in get_matrix full_mat = pose_to_matrix(self.position, self.quaternion, out_matrix) src/curobo/geom/transform.py:163: in pose_to_matrix out_matrix[..., :3, :3] = quaternion_to_matrix(quaternion) src/curobo/geom/transform.py:110: in quaternion_to_matrix out_mat = QuatToMatrix.apply(quaternions, out_mat, adj_quaternion) src/curobo/geom/transform.py:1078: in forward wp.from_torch(quaternion.detach().view(-1, 4).contiguous(), dtype=wp.vec4), ../miniconda3/envs/curobo2/lib/python3.7/site-packages/warp/torch.py:115: in from_torch raise RuntimeError(f"Incompatible data types: {t.dtype} and {dtype}") E RuntimeError: Incompatible data types: torch.float64 and ============================================================================================= warnings summary ============================================================================================= :14 :14: DeprecationWarning: invalid escape sequence \p -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html ========================================================================================= short test summary info ========================================================================================== ERROR tests/ik_config_test.py - RuntimeError: Incompatible data types: torch.float64 and ERROR tests/trajopt_config_test.py - RuntimeError: Incompatible data types: torch.float64 and
chenzishuo1994 commented 9 months ago

The problem is solved.Its the CUDA version which not fit curobo.I used CUDA11.7 and pytorch 1.13.1, and everything will be right.