Giter VIP home page Giter VIP logo

curobo's Introduction

cuRobo

CUDA Accelerated Robot Library

Check curobo.org for installing and getting started with examples!

Use Discussions for questions on using this package.

Use Issues if you find a bug.

For business inquiries, please visit our website and submit the form: NVIDIA Research Licensing

Overview

cuRobo is a CUDA accelerated library containing a suite of robotics algorithms that run significantly faster than existing implementations leveraging parallel compute. cuRobo currently provides the following algorithms: (1) forward and inverse kinematics, (2) collision checking between robot and world, with the world represented as Cuboids, Meshes, and Depth images, (3) numerical optimization with gradient descent, L-BFGS, and MPPI, (4) geometric planning, (5) trajectory optimization, (6) motion generation that combines inverse kinematics, geometric planning, and trajectory optimization to generate global motions within 30ms.

cuRobo performs trajectory optimization across many seeds in parallel to find a solution. cuRobo's trajectory optimization penalizes jerk and accelerations, encouraging smoother and shorter trajectories. Below we compare cuRobo's motion generation on the left to a BiRRT planner for the motion planning phases in a pick and place task.

Citation

If you found this work useful, please cite the below report,

@misc{curobo_report23,
      title={cuRobo: Parallelized Collision-Free Minimum-Jerk Robot Motion Generation}, 
      author={Balakumar Sundaralingam and Siva Kumar Sastry Hari and Adam Fishman and Caelan Garrett 
              and Karl Van Wyk and Valts Blukis and Alexander Millane and Helen Oleynikova and Ankur Handa 
              and Fabio Ramos and Nathan Ratliff and Dieter Fox},
      year={2023},
      eprint={2310.17274},
      archivePrefix={arXiv},
      primaryClass={cs.RO}
}

curobo's People

Contributors

balakumar-s avatar blooop avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

curobo's Issues

401 Unauthorized when building docker image

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]):
  2. python version:
  3. Isaac Sim version (if using):

Issue Details

I was playing around with curobo and when running the command:

docker build -f isaac_sim.dockerfile -t curobo_docker .   

I get the output:

[+] Building 0.3s (4/4) FINISHED                                                                                                docker:default
 => [internal] load build definition from isaac_sim.dockerfile                                                                            0.0s
 => => transferring dockerfile: 8.50kB                                                                                                    0.0s
 => [internal] load .dockerignore                                                                                                         0.0s
 => => transferring context: 60B                                                                                                          0.0s
 => CANCELED [internal] load metadata for nvcr.io/nvidia/cudagl:11.4.2-devel-ubuntu20.04                                                  0.3s
 => ERROR [internal] load metadata for nvcr.io/nvidia/isaac-sim:2022.2.1                                                                  0.3s
------
 > [internal] load metadata for nvcr.io/nvidia/isaac-sim:2022.2.1:
------
isaac_sim.dockerfile:17
--------------------
  15 |
  16 |
  17 | >>> FROM nvcr.io/nvidia/isaac-sim:${ISAAC_SIM_VERSION} AS isaac-sim
  18 |
  19 |     FROM nvcr.io/nvidia/cudagl:${CUDA_VERSION}-devel-${BASE_DIST}
--------------------
ERROR: failed to solve: nvcr.io/nvidia/isaac-sim:2022.2.1: pulling from host nvcr.io failed with status code [manifests 2022.2.1]: 401 Unauthorized

Does this mean there is some issue with curobo's server?

Thanks for the help!

The update of tsdf with dynamic scene is too slow.

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): docker isaac sim
  2. python version: /
  3. Isaac Sim version (if using): 2022.2.1

Hello, guys. Thanks for your great work!

I want to use RGB-D depth map with curobo, and used tsdf integrator according to issue #92. The quality of SDF mapping has improved a lot compared to 'occupancy', but the update of dynamic objects has become very slow.

As shown in the video below, the tsdf can be quickly updated when objects are detached. But when new objects are added or moved, it takes 5-10 seconds to complete the update. This delay is too long, making the robotic arm unable to be used in dynamic tasks and scenes.

20231223-200123.mp4

I am not familiar with nvblox and didn't find some adjustable parameters. Is this an inherent flaw of the nvblox algorithm? Do you have any opinions or suggestions? Thanks again.

error when run "python3 -m pytest ."

self = Mesh(name='mesh_1', pose=[0.0, 2, 0.5, 0.043, -0.471, 0.284, 0.834], scale=[0.5, 0.5, 0.5], color=[0.38343539824735295...file_string=None, urdf_path=None, vertices=None, faces=None, vertex_colors=None, vertex_normals=None, face_colors=None)
process = True

def get_trimesh_mesh(self, process: bool = True):
    # load mesh from filepath or verts and faces:
    if self.file_path is not None:
        m = trimesh.load(self.file_path, process=process, force="mesh")
        if isinstance(m, trimesh.Scene):
            m = m.dump(concatenate=True)
      if isinstance(m.visual, trimesh.visual.texture.TextureVisuals):

E AttributeError: 'list' object has no attribute 'visual'

src/curobo/geom/types.py:385: AttributeError
-------------------------------------------------- Captured log call ---------------------------------------------------
WARNING curobo:logger.py:34 Creating new Mesh cache: 4
=================================================== warnings summary ===================================================
:3
:3: DeprecationWarning: invalid escape sequence \p

tests/pose_test.py::test_pose_transform_point_grad
/home/apri/anaconda3/envs/curobo/lib/python3.8/site-packages/torch/autograd/gradcheck.py:652: UserWarning: Input #0 requires gradient and is not a double precision floating point or complex. This check will likely fail if all the inputs are not of double precision floating point or complex.
warnings.warn(

tests/pose_test.py::test_pose_transform_point_grad
/home/apri/anaconda3/envs/curobo/lib/python3.8/site-packages/torch/autograd/gradcheck.py:652: UserWarning: Input #1 requires gradient and is not a double precision floating point or complex. This check will likely fail if all the inputs are not of double precision floating point or complex.
warnings.warn(

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=============================================== short test summary info ================================================
FAILED tests/warp_mesh_test.py::test_sdf_pose - AttributeError: 'list' object has no attribute 'visual'
FAILED tests/warp_mesh_test.py::test_swept_sdf_speed_pose - AttributeError: 'list' object has no attribute 'visual'
FAILED tests/warp_mesh_test.py::test_swept_sdf_pose - AttributeError: 'list' object has no attribute 'visual'
FAILED tests/world_config_test.py::test_world_modify - AttributeError: 'list' object has no attribute 'visual'
=========================== 4 failed, 125 passed, 2 skipped, 3 warnings in 65.17s (0:01:05) ============================

Error when building docker

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): python
  2. python version: 3.8
  3. Isaac Sim version (if using): No

Issue Details

I can't build docker through the docker/*.sh, please help me >.<

My command:

bash docker/build_dev_docker.sh

Error Result:

deprecated, use build_docker.sh instead
Argument empty, trying to build based on architecture
Building for X86 Architecture
x86.dockerfile
[+] Building 0.0s (2/2) FINISHED                                         docker:default
 => [internal] load .dockerignore                                                  0.0s
 => => transferring context: 2B                                                    0.0s
 => [internal] load build definition from x86.dockerfile          0.0s
 => => transferring dockerfile: 2B                                         0.0s
ERROR: failed to solve: failed to read dockerfile: open /data/docker/tmp/buildkit-mount2339691937/x86.dockerfile: no such file or directory

Error when testing a new robot: Configuring a mobile manipulator

Good morning,

I wanted to test curobo with a robot we are using (ur10e arm with a gripper on a mobile base). I followed the tutorial and everything worked until the last test, when I run omni_python curobo/examples/isaac_sim/motion_gen_reacher.py --robot /{PATH}/ur5e.yml --visualize_spheres

This might be related with the IsaacSim setup I am using:

  • Hardware: Ubuntu20, driver 535, GeForce RTX 3060
  • In docker: IsaacSim 2023.1.0 with CUDA 11.3 based on the official image, but with nvidia/cudagl:11.3.1-devel-ubuntu20.04 as a base image so that nvcc is accessible to build curobo and nvblox

As mentioned, everything builds correctly, and I am able to run IsaacSim to generate the USD and the spheres.
Here is the yaml file, and here is full log of the error I get:

Full Log
# /isaac-sim/python.sh curobo/examples/isaac_sim/motion_gen_reacher.py --robot /root/ros_ws/src/curobo_ros/cfg/amiga.yaml --visualize_spheres 

[Warning] [omni.isaac.kit.simulation_app] Modules: ['pxr', 'pxr.Tf._tf', 'pxr.Tf', 'pxr.Trace._trace', 'pxr.Trace', 'pxr.Work._work', 'pxr.Work', 'pxr.Plug._plug', 'pxr.Plug', 'pxr.Gf._gf', 'pxr.Gf', 'pxr.Vt._vt', 'pxr.Vt', 'pxr.Ar._ar', 'pxr.Ar', 'pxr.Kind._kind', 'pxr.Kind', 'pxr.Sdf._sdf', 'pxr.Sdf', 'pxr.Pcp._pcp', 'pxr.Pcp', 'pxr.Usd._usd', 'pxr.Usd', 'pxr.UsdGeom._usdGeom', 'pxr.UsdGeom', 'pxr.Ndr._ndr', 'pxr.Ndr', 'pxr.Sdr._sdr', 'pxr.Sdr', 'pxr.UsdShade._usdShade', 'pxr.UsdShade', 'pxr.UsdPhysics._usdPhysics', 'pxr.UsdPhysics'] were loaded before SimulationApp was started and might not be loaded correctly.
[Warning] [omni.isaac.kit.simulation_app] Please check to make sure no extra omniverse or pxr modules are imported before the call to SimulationApp(...)
[Info] [carb] Logging to file: /isaac-sim/kit/logs/Kit/Isaac-Sim/2023.1/kit_20231102_114656.log
2023-11-02 11:46:56 [0ms] [Warning] [omni.kit.app.plugin] No crash reporter present, dumps uploading isn't available.
[0.137s] [ext: omni.kit.async_engine-0.0.0] startup
[1.409s] [ext: omni.activity.core-1.0.1] startup
[1.418s] [ext: omni.assets.plugins-0.0.0] startup
[1.423s] [ext: omni.stats-0.0.0] startup
[1.426s] [ext: omni.client-1.0.1] startup
[1.453s] [ext: omni.activity.profiler-1.0.2] startup
[1.458s] [ext: omni.gpu_foundation-0.0.0] startup
[1.502s] [ext: omni.rtx.shadercache.vulkan-1.0.0] startup
[1.505s] [ext: carb.windowing.plugins-1.0.0] startup
2023-11-02 11:46:58 [2,064ms] [Warning] [carb.windowing-glfw.gamepad] Joystick with unknown remapping detected (will be ignored):  Corsair CORSAIR K60 RGB PRO Low Profile Mechanical Gaming Keyboard [030000001c1b0000ad1b000011010000]
[2.102s] [ext: omni.kit.renderer.init-0.0.0] startup

|---------------------------------------------------------------------------------------------|
| Driver Version: 535.113.01    | Graphics API: Vulkan
|=============================================================================================|
| GPU | Name                             | Active | LDA | GPU Memory | Vendor-ID | LUID       |
|     |                                  |        |     |            | Device-ID | UUID       |
|     |                                  |        |     |            | Bus-ID    |            |
|---------------------------------------------------------------------------------------------|
| 0   | NVIDIA GeForce RTX 3060          | Yes: 0 |     | 12534   MB | 10de      | 0          |
|     |                                  |        |     |            | 2503      | f55b400e.. |
|     |                                  |        |     |            | 65        |            |
|=============================================================================================|
| OS: 20.04.4 LTS (Focal Fossa) ubuntu, Version: 20.04.4, Kernel: 5.15.0-87-generic
| XServer Vendor: The X.Org Foundation, XServer Version: 12013000 (1.20.13.0)
| Processor: Intel(R) Core(TM) i9-10920X CPU @ 3.50GHz | Cores: 12 | Logical: 24
|---------------------------------------------------------------------------------------------|
| Total Memory (MB): 31768 | Free Memory: 15125
| Total Page/Swap (MB): 2047 | Free Page/Swap: 530
|---------------------------------------------------------------------------------------------|
[2.810s] [ext: omni.kit.pipapi-0.0.0] startup
[2.812s] [ext: omni.kit.pip_archive-0.0.0] startup
[2.812s] [ext: omni.pip.compute-1.2.0] startup
[2.813s] [ext: omni.pip.torch-2_0_1-2.0.2] startup
[2.845s] [ext: omni.pip.cloud-1.0.1] startup
[2.847s] [ext: omni.isaac.core_archive-2.2.1] startup
[2.847s] [ext: omni.kit.loop-isaac-1.0.2] startup
[2.849s] [ext: omni.kit.test-0.0.0] startup
[2.851s] [ext: omni.kit.telemetry-0.4.0] startup
[2.902s] [ext: omni.isaac.ml_archive-1.1.3] startup
[2.904s] [ext: omni.mtlx-0.1.0] startup
[2.906s] [ext: omni.usd.config-1.0.3] startup
[2.919s] [ext: omni.gpucompute.plugins-0.0.0] startup
[2.922s] [ext: omni.usd.libs-1.0.0] startup
[3.180s] [ext: omni.appwindow-1.1.5] startup
[3.496s] [ext: omni.kit.renderer.core-0.0.0] startup
[4.599s] [ext: omni.kit.renderer.capture-0.0.0] starWarning: in Tf_PyLoadScriptModule at line 123 of /buildAgent/work/ac88d7d902b57417/USD/pxr/base/tf/pyUtils.cpp -- Import failed for module 'pxr.UsdSkel'!
tup
[4.606s] [ext: omni.kit.renderer.imgui-0.0.0] startup
[4.823s] [ext: carb.audio-0.1.0] startup
[4.852s] [ext: omni.ui-2.17.3] startup
[4.886s] [ext: omni.uiaudio-1.0.0] startup
[4.889s] [ext: omni.kit.mainwindow-1.0.0] startup
[4.893s] [ext: omni.kit.uiapp-0.0.0] startup
[4.893s] [ext: omni.usd.schema.anim-0.0.0] startup
Traceback (most recent call last):
  File "/isaac-sim/kit/exts/omni.usd.libs/pxr/UsdSkel/__init__.py", line 25, in <module>
    Tf.PreparePythonModule()
  File "/isaac-sim/kit/python/lib/python3.10/site-packages/pxr/Tf/__init__.py", line 89, in PreparePythonModule
    module = importlib.import_module(
  File "/isaac-sim/kit/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
RuntimeError: extension class wrapper for base class pxrInternal_v0_22__pxrReserved__::UsdTyped has not been created yet
2023-11-02 11:47:00 [4,891ms] [Error] [omni.ext._impl._internal] Failed to import python module pxr.AnimationSchema from /isaac-sim/kit/exts/omni.usd.schema.anim. Error: extension class wrapper for base class pxrInternal_v0_22__pxrReserved__::UsdGeomBoundable has not been created yet. Traceback:
Traceback (most recent call last):
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 187, in _custom_importer
    return _import_public(ext_module.path, ext_module.name, reload_enabled)
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 94, in _import_public
    module = import_module(module_name)
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/custom_importer.py", line 76, in import_module
    return importlib.import_module(name)
  File "/isaac-sim/kit/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/isaac-sim/kit/exts/omni.usd.schema.anim/pxr/AnimationSchema/__init__.py", line 40, in <module>
    from . import _animationSchema
RuntimeError: extension class wrapper for base class pxrInternal_v0_22__pxrReserved__::UsdGeomBoundable has not been created yet

2023-11-02 11:47:00 [4,891ms] [Error] [carb.scripting-python.plugin] Exception: Extension python module: 'pxr.AnimationSchema' in '/isaac-sim/kit/exts/omni.usd.schema.anim' failed to load.

At:
  /isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py(213): startup
  /isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py(328): startup_extension
  PythonExtension.cpp::startup()(2): <module>
  /isaac-sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py(303): _start_app
  /isaac-sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py(192): __init__
  /curobo/curobo/examples/isaac_sim/motion_gen_reacher_nvblox.py(52): <module>

2023-11-02 11:47:00 [4,891ms] [Error] [omni.ext.plugin] [ext: omni.usd.schema.anim-0.0.0] Failed to startup python extension.
[5.038s] [ext: omni.usd.schema.physics-0.0.0] startup
[5.040s] [ext: omni.usd.schema.semantics-0.0.0] startup
2023-11-02 11:47:01 [5,005ms] [Error] [omni.ext._impl._internal] Failed to import python module usd.schema.semantics from /isaac-sim/kit/exts/omni.usd.schema.semantics. Error: extension class wrapper for base class pxrInternal_v0_22__pxrReserved__::UsdTyped has not been created yet. Traceback:
Traceback (most recent call last):
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 187, in _custom_importer
    return _import_public(ext_module.path, ext_module.name, reload_enabled)
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 94, in _import_public
    module = import_module(module_name)
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/custom_importer.py", line 76, in import_module
    return importlib.import_module(name)
  File "/isaac-sim/kit/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/isaac-sim/kit/exts/omni.usd.schema.semantics/usd/schema/semantics/__init__.py", line 4, in <module>
    import pxr.UsdSkel
  File "/isaac-sim/kit/exts/omni.usd.libs/pxr/UsdSkel/__init__.py", line 25, in <module>
    Tf.PreparePythonModule()
  File "/isaac-sim/kit/python/lib/python3.10/site-packages/pxr/Tf/__init__.py", line 89, in PreparePythonModule
    module = importlib.import_module(
  File "/Isaac-sim/kit/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
RuntimeError: extension class wrapper for base class pxrInternal_v0_22__pxrReserved__::UsdTyped has not been created yet




[...MANY MORE ERRORS LIKE THIS...]





2023-11-02 11:47:04 [8,438ms] [Error] [omni.ext.plugin] [ext: omni.kit.material.library-1.3.39] Failed to startup python extension.
[8.577s] [ext: omni.hydra.engine.stats-1.0.1] startup
[8.584s] [ext: omni.kit.manipulator.viewport-104.0.8] startup
[8.585s] [ext: omni.kit.viewport.window-105.1.9] startup
2023-11-02 11:47:04 [8,552ms] [Error] [omni.ext._impl._internal] Failed to import python module omni.kit.viewport.window from /isaac-sim/kit/exts/omni.kit.viewport.window. Error: No to_python (by-value) converter found for C++ type: std::vector<pxrInternal_v0_22__pxrReserved__::SdfPath, std::allocator<pxrInternal_v0_22__pxrReserved__::SdfPath> >. Traceback:
Traceback (most recent call last):
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 187, in _custom_importer
    return _import_public(ext_module.path, ext_module.name, reload_enabled)
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 94, in _import_public
    module = import_module(module_name)
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/custom_importer.py", line 76, in import_module
    return importlib.import_module(name)
  File "/isaac-sim/kit/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/isaac-sim/kit/exts/omni.kit.viewport.window/omni/kit/viewport/window/__init__.py", line 1, in <module>
    from .extension import ViewportWindowExtension
  File "/isaac-sim/kit/exts/omni.kit.viewport.window/omni/kit/viewport/window/extension.py", line 17, in <module>
    from .dragdrop.usd_file_drop_delegate import UsdFileDropDelegate
  File "/isaac-sim/kit/exts/omni.kit.viewport.window/omni/kit/viewport/window/dragdrop/usd_file_drop_delegate.py", line 13, in <module>
    from .scene_drop_delegate import SceneDropDelegate
  File "/isaac-sim/kit/exts/omni.kit.viewport.window/omni/kit/viewport/window/dragdrop/scene_drop_delegate.py", line 14, in <module>
    import omni.usd
  File "/isaac-sim/kit/exts/omni.usd/omni/usd/__init__.py", line 1, in <module>
    from ._impl import *
  File "/isaac-sim/kit/exts/omni.usd/omni/usd/_impl/__init__.py", line 3, in <module>
    from .api import *
  File "/isaac-sim/kit/exts/omni.usd/omni/usd/_impl/api.py", line 16, in <module>
    from pxr import Usd, UsdUtils
  File "/isaac-sim/kit/exts/omni.usd.libs/pxr/UsdUtils/__init__.py", line 25, in <module>
    Tf.PreparePythonModule()
  File "/isaac-sim/kit/python/lib/python3.10/site-packages/pxr/Tf/__init__.py", line 89, in PreparePythonModule
    module = importlib.import_module(
  File "/isaac-sim/kit/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
TypeError: No to_python (by-value) converter found for C++ type: std::vector<pxrInternal_v0_22__pxrReserved__::SdfPath, std::allocator<pxrInternal_v0_22__pxrReserved__::SdfPath> >

2023-11-02 11:47:04 [8,552ms] [Error] [carb.scripting-python.plugin] Exception: Extension python module: 'omni.kit.viewport.window' in '/isaac-sim/kit/exts/omni.kit.viewport.window' failed to load.

At:
  /isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py(213): startup
  /isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py(328): startup_extension
  PythonExtension.cpp::startup()(2): <module>
  /isaac-sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py(303): _start_app
  /isaac-sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py(192): __init__
  /curobo/curobo/examples/isaac_sim/motion_gen_reacher_nvblox.py(52): <module>

2023-11-02 11:47:04 [8,552ms] [Error] [omni.ext.plugin] [ext: omni.kit.viewport.window-105.1.9] Failed to startup python extension.
[8.692s] [ext: omni.physics.tensors-0.1.0] startup
[8.704s] [ext: omni.kit.widget.graph-1.8.4] startup
[8.710s] [ext: omni.kit.usd_undo-0.1.2] startup
[8.711s] [ext: omni.kit.viewport.utility-1.0.16] startup
[8.711s] [ext: omni.physx.tensors-0.1.0] startup
2023-11-02 11:47:04 [8,687ms] [Error] [omni.physx.cooking.plugin] Trying to create a context with name "omni.physx" that already exists
[8.731s] [ext: omni.kit.window.extensions-1.3.0] startup
[8.738s] [ext: omni.graph-1.106.0] startup
2023-11-02 11:47:04 [8,716ms] [Error] [omni.ext._impl._internal] Failed to import python module omni.graph.core from /isaac-sim/kit/exts/omni.graph. Error: No to_python (by-value) converter found for C++ type: std::vector<pxrInternal_v0_22__pxrReserved__::SdfPath, std::allocator<pxrInternal_v0_22__pxrReserved__::SdfPath> >. Traceback:
Traceback (most recent call last):
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 187, in _custom_importer
    return _import_public(ext_module.path, ext_module.name, reload_enabled)
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 94, in _import_public
    module = import_module(module_name)
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/custom_importer.py", line 76, in import_module
    return importlib.import_module(name)
  File "/isaac-sim/kit/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1050, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1027, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1006, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 688, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 883, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "/isaac-sim/kit/exts/omni.graph/omni/graph/core/__init__.py", line 20, in <module>
    from ._impl.extension import _PublicExtension  # noqa: F401
  File "/isaac-sim/kit/exts/omni.graph/omni/graph/core/_impl/extension.py", line 19, in <module>
    from .file_format_1_6 import migrate_compound_node_schema_data
  File "/isaac-sim/kit/exts/omni.graph/omni/graph/core/_impl/file_format_1_6.py", line 4, in <module>
    import omni.usd
  File "/isaac-sim/kit/exts/omni.usd/omni/usd/__init__.py", line 1, in <module>
    from ._impl import *
  File "/isaac-sim/kit/exts/omni.usd/omni/usd/_impl/__init__.py", line 3, in <module>
    from .api import *
  File "/isaac-sim/kit/exts/omni.usd/omni/usd/_impl/api.py", line 16, in <module>
    from pxr import Usd, UsdUtils
  File "/isaac-sim/kit/exts/omni.usd.libs/pxr/UsdUtils/__init__.py", line 25, in <module>
    Tf.PreparePythonModule()
  File "/isaac-sim/kit/python/lib/python3.10/site-packages/pxr/Tf/__init__.py", line 89, in PreparePythonModule
    module = importlib.import_module(
  File "/isaac-sim/kit/python/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
TypeError: No to_python (by-value) converter found for C++ type: std::vector<pxrInternal_v0_22__pxrReserved__::SdfPath, std::allocator<pxrInternal_v0_22__pxrReserved__::SdfPath> >

2023-11-02 11:47:04 [8,716ms] [Error] [carb.scripting-python.plugin] Exception: Extension python module: 'omni.graph.core' in '/isaac-sim/kit/exts/omni.graph' failed to load.

At:
  /isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py(213): startup
  /isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py(328): startup_extension
  PythonExtension.cpp::startup()(2): <module>
  /isaac-sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py(303): _start_app
  /isaac-sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py(192): __init__
  /curobo/curobo/examples/isaac_sim/motion_gen_reacher_nvblox.py(52): <module>

2023-11-02 11:47:04 [8,716ms] [Error] [omni.ext.plugin] [ext: omni.graph-1.106.0] Failed to startup python extension.
Fatal Python error: Segmentation fault

Current thread 0x00007f4e0a4cfb80 (most recent call first):
  File "/isaac-sim/kit/exts/omni.debugdraw/omni/debugdraw/__init__.py", line 6 in _get_interface
  File "/isaac-sim/kit/exts/omni.debugdraw/omni/debugdraw/__init__.py", line 10 in get_debug_draw_interface
  File "/isaac-sim/kit/exts/omni.debugdraw/omni/debugdraw/scripts/extension.py", line 7 in on_startup
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 166 in _startup_ext
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 224 in startup
  File "/isaac-sim/kit/kernel/py/omni/ext/_impl/_internal.py", line 328 in startup_extension
  File "PythonExtension.cpp::startup()", line 2 in <module>
  File "/isaac-sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py", line 303 in _start_app
  File "/isaac-sim/exts/omni.isaac.kit/omni/isaac/kit/simulation_app.py", line 192 in __init__
  File "/curobo/curobo/examples/isaac_sim/motion_gen_reacher_nvblox.py", line 52 in <module>

Extension modules: numpy.core._multiarray_umath, numpy.core._multiarray_tests, numpy.linalg._umath_linalg, numpy.fft._pocketfft_internal, numpy.random._common, numpy.random.bit_generator, numpy.random._bounded_integers, numpy.random._mt19937, numpy.random.mtrand, numpy.random._philox, numpy.random._pcg64, numpy.random._sfc64, numpy.random._generator, torch._C, torch._C._fft, torch._C._linalg, torch._C._nested, torch._C._nn, torch._C._sparse, torch._C._special, xxhash._xxhash, scipy._lib._ccallback_c, scipy.sparse._sparsetools, _csparsetools, scipy.sparse._csparsetools, scipy.sparse.linalg._isolve._iterative, scipy.linalg._fblas, scipy.linalg._flapack, scipy.linalg._cythonized_array_utils, scipy.linalg._flinalg, scipy.linalg._solve_toeplitz, scipy.linalg._matfuncs_sqrtm_triu, scipy.linalg.cython_lapack, scipy.linalg.cython_blas, scipy.linalg._matfuncs_expm, scipy.linalg._decomp_update, scipy.sparse.linalg._dsolve._superlu, scipy.sparse.linalg._eigen.arpack._arpack, scipy.sparse.csgraph._tools, scipy.sparse.csgraph._shortest_path, scipy.sparse.csgraph._traversal, scipy.sparse.csgraph._min_spanning_tree, scipy.sparse.csgraph._flow, scipy.sparse.csgraph._matching, scipy.sparse.csgraph._reordering, scipy.spatial._ckdtree, scipy._lib.messagestream, scipy.spatial._qhull, scipy.spatial._voronoi, scipy.spatial._distance_wrap, scipy.spatial._hausdorff, scipy.special._ufuncs_cxx, scipy.special._ufuncs, scipy.special._specfun, scipy.special._comb, scipy.special._ellip_harm_2, scipy.spatial.transform._rotation, scipy.optimize._minpack2, scipy.optimize._group_columns, scipy.optimize._trlib._trlib, numpy.linalg.lapack_lite, scipy.optimize._lbfgsb, _moduleTNC, scipy.optimize._moduleTNC, scipy.optimize._cobyla, scipy.optimize._slsqp, scipy.optimize._minpack, scipy.optimize._lsq.givens_elimination, scipy.optimize._zeros, scipy.optimize.__nnls, scipy.optimize._highs.cython.src._highs_wrapper, scipy.optimize._highs._highs_wrapper, scipy.optimize._highs.cython.src._highs_constants, scipy.optimize._highs._highs_constants, scipy.linalg._interpolative, scipy.optimize._bglu_dense, scipy.optimize._lsap, scipy.optimize._direct, psutil._psutil_linux, psutil._psutil_posix, PIL._imaging, embreex.rtcore, embreex.rtcore_scene, embreex.mesh_construction, lxml._elementpath, lxml.etree, shapely.lib, shapely._geos, shapely._geometry_helpers, scipy.ndimage._nd_image, _ni_label, scipy.ndimage._ni_label, yaml._yaml, scipy.interpolate._fitpack, scipy.interpolate.dfitpack, scipy.interpolate._bspl, scipy.interpolate._ppoly, scipy.interpolate.interpnd, scipy.interpolate._rbfinterp_pythran, scipy.interpolate._rgi_cython, scipy.integrate._odepack, scipy.integrate._quadpack, scipy.integrate._vode, scipy.integrate._dop, scipy.integrate._lsoda, scipy.special.cython_special, scipy.stats._stats, scipy.stats.beta_ufunc, scipy.stats._boost.beta_ufunc, scipy.stats.binom_ufunc, scipy.stats._boost.binom_ufunc, scipy.stats.nbinom_ufunc, scipy.stats._boost.nbinom_ufunc, scipy.stats.hypergeom_ufunc, scipy.stats._boost.hypergeom_ufunc, scipy.stats.ncf_ufunc, scipy.stats._boost.ncf_ufunc, scipy.stats.ncx2_ufunc, scipy.stats._boost.ncx2_ufunc, scipy.stats.nct_ufunc, scipy.stats._boost.nct_ufunc, scipy.stats.skewnorm_ufunc, scipy.stats._boost.skewnorm_ufunc, scipy.stats.invgauss_ufunc, scipy.stats._boost.invgauss_ufunc, scipy.stats._biasedurn, scipy.stats._levy_stable.levyst, scipy.stats._stats_pythran, scipy._lib._uarray._uarray, scipy.stats._statlib, scipy.stats._mvn, scipy.stats._sobol, scipy.stats._qmc_cy, scipy.stats._rcont.rcont, pydantic.typing, pydantic.validators, pydantic.networks, pydantic.types, pydantic.json, pydantic.error_wrappers, pydantic.fields, pydantic.parse, pydantic.main, pydantic.dataclasses, pydantic.decorator, omni.mdl.pymdlsdk._pymdlsdk (total: 146)
/isaac-sim/python.sh: line 41:  1111 Segmentation fault      (core dumped) $python_exe "$@" $args
There was an error running python


Do you have any ideas where this might come from?
Thank you!

Error when using NVBlox: RuntimeError: CUDA error: an illegal memory access was encountered

Hello,

I am getting an error when trying to use NVBlox with cuRobo. This happens both when I use the motion_gen_reacher_nvblox.py script with IsaacSim, and when I simply instantiate and warmup the MotionGen class in Python. Everything is working properly if I use motion_gen_reacher.py, but not motion_gen_reacher_nvblox.py.

The error is RuntimeError: CUDA error: an illegal memory access was encountered.

My setup is:

  1. cuRobo installation mode: docker python and docker isaac
  2. python version: 3.8.10
  3. Isaac Sim version (if using):2022.2.1
  4. GPU: NVIDIA GeForce RTX 3060
  5. CUDA 11.7
Stacktrace (isaacsim)
/isaac-sim/python.sh curobo/examples/isaac_sim/motion_gen_reacher_nvblox.py --robot /ros_ws/src/curobo_ros/cfg/amiga.yaml --visualize_spheres

[14.954s] app ready
[15.212s] RTX ready
[15.356s] Simulation App Startup Complete
torchtyping could not be imported, falling back to basic types
2023-11-14 09:34:46 [19,734ms] [Warning] [omni.isaac.urdf] The path amiga_arm_base_link-base_link_inertia is not a valid usd path, modifying to amiga_arm_base_link_base_link_inertia
2023-11-14 09:34:46 [19,734ms] [Warning] [omni.isaac.urdf] The path amiga_arm_base_link-base_fixed_joint is not a valid usd path, modifying to amiga_arm_base_link_base_fixed_joint
2023-11-14 09:34:46 [19,734ms] [Warning] [omni.isaac.urdf] The path amiga_arm_wrist_3-flange is not a valid usd path, modifying to amiga_arm_wrist_3_flange
2023-11-14 09:34:46 [19,734ms] [Warning] [omni.isaac.urdf] The path amiga_arm_flange-tool0 is not a valid usd path, modifying to amiga_arm_flange_tool0
2023-11-14 09:34:46 [19,734ms] [Warning] [omni.isaac.urdf] The path amig_arm_wrist_3_link-amiga_grip_camera_mount_link is not a valid usd path, modifying to amig_arm_wrist_3_link_amiga_grip_camera_mount_link
/World/amiga/Looks/material_Material_001_1 
WARNING: Logging before InitGoogleLogging() is written to STDERR
I1114 09:35:34.738322    29 layer_cake_impl.h:32] Adding Layer with type: N6nvblox15VoxelBlockLayerINS_9TsdfVoxelEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
I1114 09:35:34.738354    29 layer_cake_impl.h:32] Adding Layer with type: N6nvblox15VoxelBlockLayerINS_10ColorVoxelEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
I1114 09:35:34.738360    29 layer_cake_impl.h:32] Adding Layer with type: N6nvblox15VoxelBlockLayerINS_14OccupancyVoxelEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
I1114 09:35:34.738365    29 layer_cake_impl.h:32] Adding Layer with type: N6nvblox15VoxelBlockLayerINS_9EsdfVoxelEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
I1114 09:35:34.738370    29 layer_cake_impl.h:32] Adding Layer with type: N6nvblox10BlockLayerINS_9MeshBlockEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
E1114 09:35:34.744175    29 sqlite_database.cpp:192] Preparing query failed: file is not a database
E1114 09:35:34.744215    29 mapper.cpp:238] Failed to load map from file: /curobo/curobo/src/curobo/content/assets/scene/nvblox/srl_ur10_bins.nvblx
warming up...
/curobo/curobo/src/curobo/opt/particle/parallel_mppi.py:224: UserWarning: FALLBACK path has been taken inside: runCudaFusionGroup. This is an indication that codegen Failed for some reason.
To debug try disable codegen fallback path via setting the env variable `export PYTORCH_NVFUSER_DISABLE=fallback`
 (Triggered internally at ../torch/csrc/jit/codegen/cuda/manager.cpp:331.)
  cov_update = jit_diag_a_cov_update(w, actions, self.mean_action)
/curobo/curobo/src/curobo/opt/particle/parallel_mppi.py:297: UserWarning: FALLBACK path has been taken inside: runCudaFusionGroup. This is an indication that codegen Failed for some reason.
To debug try disable codegen fallback path via setting the env variable `export PYTORCH_NVFUSER_DISABLE=fallback`
 (Triggered internally at ../torch/csrc/jit/codegen/cuda/manager.cpp:331.)
  new_cov = jit_blend_cov(self.cov_action, cov_update, self.step_size_cov, self.kappa)
/curobo/curobo/src/curobo/opt/particle/parallel_mppi.py:301: UserWarning: FALLBACK path has been taken inside: runCudaFusionGroup. This is an indication that codegen Failed for some reason.
To debug try disable codegen fallback path via setting the env variable `export PYTORCH_NVFUSER_DISABLE=fallback`
 (Triggered internally at ../torch/csrc/jit/codegen/cuda/manager.cpp:331.)
  new_mean = jit_blend_mean(self.mean_action, new_mean, self.step_size_mean)
Traceback (most recent call last):
  File "curobo/examples/isaac_sim/motion_gen_reacher_nvblox.py", line 300, in <module>
    main()
  File "curobo/examples/isaac_sim/motion_gen_reacher_nvblox.py", line 163, in main
    motion_gen.warmup(enable_graph=True, warmup_js_trajopt=False)
  File "/curobo/curobo/src/curobo/wrap/reacher/motion_gen.py", line 1858, in warmup
    link_poses=link_poses,
  File "/curobo/curobo/src/curobo/wrap/reacher/motion_gen.py", line 1215, in plan_single
    link_poses=link_poses,
  File "/curobo/curobo/src/curobo/wrap/reacher/motion_gen.py", line 1037, in _plan_attempts
    link_poses,
  File "/curobo/curobo/src/curobo/wrap/reacher/motion_gen.py", line 1513, in _plan_from_solve_state
    newton_iters=trajopt_newton_iters,
  File "/isaac-sim/kit/python/lib/python3.7/contextlib.py", line 74, in inner
    return func(*args, **kwds)
  File "/curobo/curobo/src/curobo/wrap/reacher/motion_gen.py", line 909, in _solve_trajopt_from_solve_state
    newton_iters=newton_iters,
  File "/curobo/curobo/src/curobo/wrap/reacher/trajopt.py", line 496, in solve_any
    newton_iters=newton_iters,
  File "/curobo/curobo/src/curobo/wrap/reacher/trajopt.py", line 618, in solve_single
    newton_iters=newton_iters,
  File "/curobo/curobo/src/curobo/wrap/reacher/trajopt.py", line 577, in solve_from_solve_state
    result = self.solver.solve(goal_buffer, seed_traj)
  File "/curobo/curobo/src/curobo/wrap/wrap_base.py", line 138, in solve
    act_seq = self.optimize(seed, shift_steps=0)
  File "/curobo/curobo/src/curobo/wrap/wrap_base.py", line 70, in optimize
    act_seq = opt.optimize(act_seq, shift_steps)
  File "/curobo/curobo/src/curobo/opt/opt_base.py", line 93, in optimize
    out = self._optimize(opt_tensor, shift_steps, n_iters)
  File "/curobo/curobo/src/curobo/opt/particle/particle_opt_base.py", line 216, in _optimize
    self._initialize_cuda_graph(init_act, shift_steps=shift_steps)
  File "/curobo/curobo/src/curobo/opt/particle/particle_opt_base.py", line 235, in _initialize_cuda_graph
    self._cu_act_seq = self._run_opt_iters(self._cu_act_in, shift_steps=shift_steps)
  File "/curobo/curobo/src/curobo/opt/particle/particle_opt_base.py", line 260, in _run_opt_iters
    trajectory = self.generate_rollouts()
  File "/isaac-sim/extscache/omni.pip.torch-1_13_1-0.1.4+104.2.lx64/torch-1-13-1/torch/autograd/grad_mode.py", line 27, in decorate_context
    return func(*args, **kwargs)
  File "/curobo/curobo/src/curobo/opt/particle/parallel_mppi.py", line 578, in generate_rollouts
    return super().generate_rollouts(init_act)
  File "/curobo/curobo/src/curobo/opt/particle/particle_opt_base.py", line 178, in generate_rollouts
    act_seq = self.sample_actions(init_act)
  File "/isaac-sim/extscache/omni.pip.torch-1_13_1-0.1.4+104.2.lx64/torch-1-13-1/torch/autograd/grad_mode.py", line 27, in decorate_context
    return func(*args, **kwargs)
  File "/curobo/curobo/src/curobo/opt/particle/parallel_mppi.py", line 306, in sample_actions
    delta = torch.index_select(self._sample_set, 0, self._sample_iter).squeeze(0)
RuntimeError: CUDA error: an illegal memory access was encountered
CUDA kernel errors might be asynchronously reported at some other API call,so the stacktrace below might be incorrect.
For debugging consider passing CUDA_LAUNCH_BLOCKING=1.
Exception ignored in: <function DefaultStage.__del__ at 0x7f231d4610e0>
Traceback (most recent call last):
  File "/isaac-sim/kit/exts/omni.kit.stage_templates/omni/kit/stage_templates/templates/default_stage.py", line 13, in __del__
  File "/isaac-sim/kit/exts/omni.kit.stage_templates/omni/kit/stage_templates/new_stage.py", line 280, in unregister_template
TypeError: 'NoneType' object is not callable
Exception ignored in: <function SunlightStage.__del__ at 0x7f231d456b00>
Traceback (most recent call last):
  File "/isaac-sim/kit/exts/omni.kit.stage_templates/omni/kit/stage_templates/templates/sunlight.py", line 13, in __del__
  File "/isaac-sim/kit/exts/omni.kit.stage_templates/omni/kit/stage_templates/new_stage.py", line 280, in unregister_template
TypeError: 'NoneType' object is not callable
/isaac-sim/python.sh: line 41:    29 Segmentation fault      (core dumped) $python_exe "$@" $args
There was an error running python

Here is the code I tried when using Python only:

motion_gen_config = MotionGenConfig.load_from_robot_config(
            robot_cfg,
            world_cfg,
            tensor_args,
            trajopt_tsteps=32,
            collision_checker_type=CollisionCheckerType.BLOX,
            use_cuda_graph=True,
            num_trajopt_seeds=12,
            num_graph_seeds=12,
            interpolation_dt=0.03,
            collision_activation_distance=0.025,
            acceleration_scale=1.0,
            self_collision_check=True,
            maximum_trajectory_dt=0.25,
            finetune_dt_scale=1.05,
            fixed_iters_trajopt=True,
            finetune_trajopt_iters=300,
            minimize_jerk=True,
        )
motion_gen = MotionGen(motion_gen_config)
motion_gen.warmup(warmup_js_trajopt=False)

I added some debug prints in curobo/wrap/reacher/motion_gen.py; here is what plan_single is getting as inputs:

start_state = JointState(
    position=tensor([[0.1000, 0.1000, 0.1000, 0.1000, 0.1000, 0.1000]], device='cuda:0'),
    velocity=tensor([[0., 0., 0., 0., 0., 0.]], device='cuda:0'),
    acceleration=tensor([[0., 0., 0., 0., 0., 0.]], device='cuda:0'),
    joint_names=['amiga_arm_shoulder_pan_joint', 'amiga_arm_shoulder_lift_joint', 'amiga_arm_elbow_joint', 'amiga_arm_wrist_1_joint', 'amiga_arm_wrist_2_joint', 'amiga_arm_wrist_3_joint'],
    jerk=tensor([[0., 0., 0., 0., 0., 0.]], device='cuda:0')
     tensor_args=TensorDeviceType(device=device(type='cuda', index=0), dtype=torch.float32)
)

retract_pose = Pose(
    position=tensor([[ 0.3911, -1.1841,  0.3609]], device='cuda:0'),
    quaternion=tensor([[ 0.2708,  0.6531,  0.6533, -0.2707]], device='cuda:0'),
    rotation=None,
    batch=1, n_goalset=1, name='ee_link', normalize_rotation=True
)

link_poses = {'amiga_gripper_palm': Pose(
    position=tensor([[ 0.3911, -1.1841,  0.3609]], device='cuda:0'),
    quaternion=tensor([[ 0.2708,  0.6531,  0.6533, -0.2707]], device='cuda:0'),
    rotation=None, batch=1, n_goalset=1, name='ee_link', normalize_rotation=False
)}
Here are my installation steps, in case it helps
###################################################################################################
######################################### CMake version ###########################################
###################################################################################################

RUN wget https://cmake.org/files/v3.19/cmake-3.19.5.tar.gz && tar -xvzf cmake-3.19.5.tar.gz
RUN DEBIAN_FRONTEND=noninteractive apt-get install -y build-essential checkinstall zlib1g-dev libssl-dev
RUN cd cmake-3.19.5 && ./bootstrap 
RUN cd cmake-3.19.5 && make -j `nproc` && make install
RUN rm -rf cmake-3.19.5.tar.gz



####################################################################################################
############################################## nvblox ##############################################
####################################################################################################

RUN git clone https://github.com/valtsblukis/nvblox.git

RUN apt-get install -y libgoogle-glog-dev libgtest-dev libgflags-dev python3-dev libsqlite3-dev
RUN cd /usr/src/googletest && sudo cmake . && sudo cmake --build . --target install
RUN cd nvblox && cd nvblox && mkdir build && cd build && \
    cmake .. -DPRE_CXX11_ABI_LINKABLE=ON -DCMAKE_CUDA_FLAGS="-gencode=arch=compute_86,code=sm_86" -DCMAKE_CUDA_ARCHITECTURES="86" -DSTDGPU_CUDA_ARCHITECTURE_FLAGS_USER="86" -DBUILD_FOR_ALL_ARCHS=ON &&\
    make -j `nproc` &&\
    make install


RUN git clone https://github.com/nvlabs/nvblox_torch.git
RUN cd nvblox_torch && sh install.sh


####################################################################################################
############################################## curobo ##############################################
####################################################################################################

RUN git clone https://github.com/NVlabs/curobo.git 

RUN echo 'debconf debconf/frontend select Noninteractive' | debconf-set-selections

ENV PATH="${PATH}:/opt/hpcx/ompi/bin"
ENV LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/opt/hpcx/ompi/lib"

ENV LD_LIBRARY_PATH="/usr/local/lib:${LD_LIBRARY_PATH}"

RUN cd curobo && pip install -e . --no-build-isolation 

Do you have any ideas what may be causing it?
Thank you for your help!

cannot run curobo with issac sim 2023

In isaac sim 2023, the blow code will leads to a crash.

from omni.isaac.kit import SimulationApp
from curobo.util.usd_helper import UsdHelper
simulation_app = SimulationApp(
    {"headless": False, "width": 1920, "height": 1080}
)

If curobo is not imported, then the above code will run without an error.

RuntimeError: expected scalar type double but found float

I install cuRobo in python mode(ubuntu20.04 CUDA11.3, pytorch 1.11 and python3.7). When running pytest using "python3 -m pytest .", I got an error "RuntimeError: expected scalar type double but found float", and this error due to the function of normalize_quaternion() in src/curobo/types/math.py. I am new in pytorch and CUDA, how should I fix this bug?

Report feedback: jerk-limited parameterization

Not sure this is a good place to give feedback about your report, but here it is. 🐶

From your report page 16:

Geometric planning methods require time parameterization as a post-processing step to be able to execute on robots.
Kunz and Stilman developed a bounded velocity and acceleration time-parameterization technique [4] that
is extensively used in the robotics community, including MoveIt [55]. However, this time parameterization
technique does not bound the jerk along the trajectory and as such can have very large jerks. We could not
find any accessible software library that can post process geometric paths while bounding jerks, making
geometric path planning not directly deploy-able on jerk sensitive manipulators.

The currently-advised way to limit jerks in MoveIt is to run a ruckig smoothing filter on the parameterized trajectory - at almost no overhead due to the performant implementation of ruckig. Here is the short tutorial you could not find (whether it's "accessible" definitely depends on your standards, I'm the last to claim MoveIt has good usability):
https://ros-planning.github.io/moveit_tutorials/doc/time_parameterization/time_parameterization_tutorial.html?highlight=ruckig#jerk-limited-trajectory-smoothing
I would (have) be(en) interested in the comparison.

nvrtc: error: invalid value for --gpu-architecture (-arch)

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): python
  2. python version: python3.7.13
  3. Isaac Sim version (if using): not used

Issue Details

When , I meet the error when run example/motion_gen_api_example.py, the main error code is :

Traceback of TorchScript (most recent call last):
  File "/home/panmingjie/gsnet/curobo/src/curobo/util/sample_lib.py", line 511, in gaussian_transform
    uniform_samples: torch.Tensor, proj_mat: torch.Tensor, i_mat: torch.Tensor, variance: float
):
    gaussian_halton_samples = proj_mat * torch.erfinv(2 * uniform_samples - 1)
                                         ~~~~~~~~~~~~ <--- HERE
    i_mat = i_mat * variance
    gaussian_halton_samples = torch.matmul(gaussian_halton_samples, i_mat)

nvrtc: error: invalid value for --gpu-architecture (-arch)

pytorch version: 1.12.0
CUDA version: 11.3

The point that confuses me is that my pytorch and cuda version can run other repos and perform model training normally. I tried running the torch.erfinv() function alone but no error was reported. Why is it reporting an error when running curobo?

I'm not very familiar with CUDA, I hope you can help me .

isaac-sim crashed when opening usd file for configuring new robot

isaac-sim 2022.2.1 pass all tests
i tried to configuring new robot
urdf file:

<?xml version="1.0"?>
<!-- ======================================================================== -->
<!-- | Flexiv Rizon4 Arm (with approximated dynamic parameters)             | -->
<!-- ======================================================================== -->
<robot name="A02L_MP">
  
  <joint name="joint0" type="fixed">
    <origin rpy="0 0 0" xyz="0 0 0" />
    <parent link="world" />
    <child link="base_link" />
  </joint>
  <joint name="joint1" type="revolute">
    <parent link="base_link" />
    <child link="link1" />
    <origin rpy="0 0 3.141592653589793" xyz="0.0 0.0 0.155" />
    <axis xyz="0 0 1" />
    <limit effort="123" lower="-2.7925" upper="2.7925" velocity="2.0944" />
  </joint>
  <joint name="joint2" type="revolute">
    <parent link="link1" />
    <child link="link2" />
    <origin rpy="0 0 0" xyz="0.0 0.03 0.210" />
    <axis xyz="0 1 0" />
    <limit effort="123" lower="-2.2689" upper="2.2689" velocity="2.0944" />
  </joint>
  <joint name="joint3" type="revolute">
    <parent link="link2" />
    <child link="link3" />
    <origin rpy="0 0 0" xyz="0.0 0.035 0.205" />
    <axis xyz="0 0 1" />
    <limit effort="64" lower="-2.9671" upper="2.9671" velocity="2.4435" />
  </joint>
  <joint name="joint4" type="revolute">
    <parent link="link3" />
    <child link="link4" />
    <origin rpy="0 0 -3.141592653589793" xyz="-0.02 -0.03 0.19" />
    <axis xyz="0 1 0" />
    <limit effort="64" lower="-1.8675" upper="2.6878" velocity="2.4435" />
  </joint>
  <joint name="joint5" type="revolute">
    <parent link="link4" />
    <child link="link5" />
    <origin rpy="0 0 -3.141592653589793" xyz="-0.02 0.025 0.195" />
    <axis xyz="0 0 1" />
    <limit effort="39" lower="-2.9671" upper="2.9671" velocity="4.8869" />
  </joint>
  <joint name="joint6" type="revolute">
    <parent link="link5" />
    <child link="link6" />
    <origin rpy="0 0 0" xyz="0.0 0.03 0.19" />
    <axis xyz="0 1 0" />
    <limit effort="39" lower="-1.3963" upper="4.5379" velocity="4.8869" />
  </joint>
  <joint name="joint7" type="revolute">
    <parent link="link6" />
    <child link="link7" />
    <origin rpy="0 -1.5707963267948966 0" xyz="-0.055 0.070 0.11" />
    <axis xyz="0 0 1" />
    <limit effort="39" lower="-2.9671" upper="2.9671" velocity="4.8869" />
  </joint>
  
  <joint name="link7_to_flange" type="fixed">
    <parent link="link7" />
    <child link="flange" />
    <origin rpy="0 0 -3.141592653589793" xyz="0.0 0.0 0.081" />
  </joint>
  

  <link name="world" />
  <link name="base_link">
    <inertial>
      <mass value="3.7" />
      <origin rpy="0 0 0" xyz="0.0 -0.0 0.09" />
      <inertia ixx="0.019" ixy="0.0" ixz="0.0" iyy="0.02" iyz="0.0" izz="0.009" />
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/visual/link0.stl" />
      </geometry>
      <material name="rizon_light_grey" />
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/collision/link0.stl" />
      </geometry>
    </collision>
  </link>
  <link name="link1">
    <inertial>
      <mass value="3.7" />
      <origin rpy="0 0 0" xyz="0.0 0.01 0.15" />
      <inertia ixx="0.028" ixy="0.0" ixz="0.0" iyy="0.027" iyz="0.002" izz="0.008" />
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/visual/link1.stl" />
      </geometry>
      <material name="rizon_light_grey" />
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/collision/link1.stl" />
      </geometry>
    </collision>
  </link>
  <link name="link2">
    <inertial>
      <mass value="2.7" />
      <origin rpy="0 0 0" xyz="0.0 0.04 0.1" />
      <inertia ixx="0.023" ixy="0.0" ixz="0.0" iyy="0.024" iyz="-0.0" izz="0.004" />
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/visual/link2.stl" />
      </geometry>
      <material name="rizon_light_grey" />
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/collision/link2.stl" />
      </geometry>
    </collision>
  </link>
  <link name="link3">
    <inertial>
      <mass value="2.4" />
      <origin rpy="0 0 0" xyz="-0.01 -0.0 0.13" />
      <inertia ixx="0.014" ixy="0.0" ixz="-0.001" iyy="0.014" iyz="-0.001" izz="0.004" />
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/visual/link3.stl" />
      </geometry>
      <material name="rizon_light_grey" />
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/collision/link3.stl" />
      </geometry>
    </collision>
  </link>
  <link name="link4">
    <inertial>
      <mass value="2.4" />
      <origin rpy="0 0 0" xyz="-0.01 0.03 0.1" />
      <inertia ixx="0.018" ixy="0.0" ixz="-0.002" iyy="0.019" iyz="-0.001" izz="0.003" />
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/visual/link4.stl" />
      </geometry>
      <material name="rizon_light_grey" />
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/collision/link4.stl" />
      </geometry>
    </collision>
  </link>
  <link name="link5">
    <inertial>
      <mass value="2.4" />
      <origin rpy="0 0 0" xyz="0.0 0.0 0.13" />
      <inertia ixx="0.014" ixy="0.0" ixz="0.0" iyy="0.013" iyz="0.001" izz="0.004" />
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/visual/link5.stl" />
      </geometry>
      <material name="rizon_light_grey" />
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/collision/link5.stl" />
      </geometry>
    </collision>
  </link>
  <link name="link6">
    <inertial>
      <mass value="2.1" />
      <origin rpy="0 0 0" xyz="-0.01 0.06 0.07" />
      <inertia ixx="0.008" ixy="-0.0" ixz="-0.001" iyy="0.009" iyz="0.002" izz="0.004" />
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/visual/link6.stl" />
      </geometry>
      <material name="rizon_light_grey" />
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/collision/link6.stl" />
      </geometry>
    </collision>
  </link>
  <link name="link7">
    <inertial>
      <mass value="0.8" />
      <origin rpy="0 0 0" xyz="0.0 0.0 0.03" />
      <inertia ixx="0.001" ixy="0.0" ixz="0.0" iyy="0.001" iyz="0.0" izz="0.001" />
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/visual/link7.stl" />
      </geometry>
      <material name="rizon_light_grey" />
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0" />
      <geometry>
        <mesh filename="meshes/collision/link7.stl" />
      </geometry>
    </collision>
  </link>
  
  <link name="flange" />
  

  <!-- material 
  <material name="rizon_blue">
    <color rgba="0. 0. 1. 0.5" />
  </material>
  <material name="rizon_light_grey">
    <color rgba="0.7 0.7 0.7 1" />
  </material>
  <material name="rizon_dark_grey">
    <color rgba="0.2 0.2 0.2 1" />
  </material>
  <material name="rizon_white">
    <color rgba="1 1 1 1" />
  </material>-->
</robot>

flexiv.json

and successfully generate a usd file:
flexiv_usd.json

but when opening usd by isaac-sim, it crashed

CuRobo loads unscaled meshes

After adding a mesh file to the World Configuration, CuRobo effectively loads the unscaled mesh.

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): python
  2. python version: 3.10
  3. Isaac Sim version (if using):

Issue Details

I tried adding a simple sphere mesh through a yml file
sphMesh:
pose: [0.0, 0, 0.15, 1, 0, 0, 0]
scale: [0.005, 0.005, 0.005]
file_path: "sphere_mesh.obj"

And loading it as in the script below

with open(model.config["curoboConfig"]["worldYmlPath"]) as file_p:
            worldCfg = yaml.load(file_p, Loader=Loader)
world_model = WorldConfig.from_dict(worldCfg)
world_model.save_world_as_mesh("debugMesh.obj")

But when I load the debugMesh.obj file in a 3rd party viewer I verify that the object, as seen by CuRobo, is not scaled.

ps.: It is not a major issue, but it may be useful to solve it eventually

docker install error

Running docker from NGC : pull access denied for curobo_docker, repository does not exist or may require 'docker login': denied: requested access to the resource is denied.
i tried login but no use

Building your own docker image with CuRobo : there is no file "pull_repos.sh"

Nvidia WARP does not build on Jetson orin

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): Python
  2. python version: 3.8
  3. Isaac Sim version (if using):

Issue Details
Curobo builds fine, but unit tests fail because it can't find warp.so. I'm trying to build WARP on arm64 Ubuntu (jetson orin) but it fails because llvm is not installed. Can curobo work without warp? If not, what are the steps to successfully compile warp on arm64?

Time cost of python example

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): python
  2. python version: 3.8.10
  3. Isaac Sim version (if using): N/A
  4. GPU: RTX 4090
  5. CUDA: 11.8

Hi @balakumar-s , I just execute the example. But the time cost for franka IK example is strange and does not math the time mentioned in the paper.

Result

➜  curobo git:(main) ✗ python3 examples/ik_example_franka.py
--------------------------------------------------
Running demo_basic_ik
Success, Solve Time(s), Total Time(s)  1.0 1.0106189250946045 0.7667928535113149 tensor(0.0008, device='cuda:0') tensor(0.0066, device='cuda:0')
--------------------------------------------------
Running demo_full_config_collision_free_ik
Success, Solve Time(s), Total Time(s) 1.0 0.15874934196472168 0.4029872417449951 2.481468136980839 tensor(0.0005, device='cuda:0') tensor(0.0034, device='cuda:0')
--------------------------------------------------
Running demo_full_config_batch_env_collision_free_ik
Success, Solve Time(s), Total Time(s) 1.0 0.48165225982666016 0.5924277305603027
Running Batch Env Goalset IK
Success, Solve Time(s), Total Time(s) 1.0 0.18120265007019043 0.39771509170532227
➜  curobo git:(main) ✗

Code

# Standard Library
import time

# Third Party
import torch

# CuRobo
from curobo.geom.types import WorldConfig
from curobo.types.base import TensorDeviceType
from curobo.types.math import Pose
from curobo.types.robot import RobotConfig
from curobo.util_file import get_robot_configs_path, get_world_configs_path, join_path, load_yaml
from curobo.wrap.reacher.ik_solver import IKSolver, IKSolverConfig

torch.backends.cudnn.benchmark = True

torch.backends.cuda.matmul.allow_tf32 = True
torch.backends.cudnn.allow_tf32 = True


def demo_basic_ik():
    tensor_args = TensorDeviceType()

    config_file = load_yaml(join_path(get_robot_configs_path(), "franka.yml"))
    urdf_file = config_file["robot_cfg"]["kinematics"][
        "urdf_path"
    ]  # Send global path starting with "/"
    base_link = config_file["robot_cfg"]["kinematics"]["base_link"]
    ee_link = config_file["robot_cfg"]["kinematics"]["ee_link"]
    robot_cfg = RobotConfig.from_basic(urdf_file, base_link, ee_link, tensor_args)

    ik_config = IKSolverConfig.load_from_robot_config(
        robot_cfg,
        None,
        rotation_threshold=0.05,
        position_threshold=0.005,
        num_seeds=20,
        self_collision_check=False,
        self_collision_opt=False,
        tensor_args=tensor_args,
        use_cuda_graph=False,
    )
    ik_solver = IKSolver(ik_config)

    print("Running demo_basic_ik")
    for _ in range(1):
        q_sample = ik_solver.sample_configs(1)
        kin_state = ik_solver.fk(q_sample)
        goal = Pose(kin_state.ee_position, kin_state.ee_quaternion)

        st_time = time.time()
        result = ik_solver.solve_batch(goal)
        torch.cuda.synchronize()
        print(
            "Success, Solve Time(s), Total Time(s) ",
            torch.count_nonzero(result.success).item() / len(q_sample),
            result.solve_time,
            q_sample.shape[0] / (time.time() - st_time),
            torch.mean(result.position_error) * 100.0,
            torch.mean(result.rotation_error) * 100.0,
        )


def demo_full_config_collision_free_ik():
    tensor_args = TensorDeviceType()
    world_file = "collision_cage.yml"

    robot_file = "franka.yml"
    robot_cfg = RobotConfig.from_dict(
        load_yaml(join_path(get_robot_configs_path(), robot_file))["robot_cfg"]
    )
    world_cfg = WorldConfig.from_dict(load_yaml(join_path(get_world_configs_path(), world_file)))
    ik_config = IKSolverConfig.load_from_robot_config(
        robot_cfg,
        world_cfg,
        rotation_threshold=0.05,
        position_threshold=0.005,
        num_seeds=20,
        self_collision_check=True,
        self_collision_opt=True,
        tensor_args=tensor_args,
        use_cuda_graph=True,
        # use_fixed_samples=True,
    )
    ik_solver = IKSolver(ik_config)

    # print(kin_state)
    print("Running demo_full_config_collision_free_ik")
    for _ in range(1):
        q_sample = ik_solver.sample_configs(1)
        kin_state = ik_solver.fk(q_sample)
        goal = Pose(kin_state.ee_position, kin_state.ee_quaternion)

        st_time = time.time()
        result = ik_solver.solve_batch(goal)
        torch.cuda.synchronize()
        total_time = (time.time() - st_time) / q_sample.shape[0]
        print(
            "Success, Solve Time(s), Total Time(s)",
            torch.count_nonzero(result.success).item() / len(q_sample),
            result.solve_time,
            total_time,
            1.0 / total_time,
            torch.mean(result.position_error) * 100.0,
            torch.mean(result.rotation_error) * 100.0,
        )

def demo_full_config_batch_env_collision_free_ik():
    tensor_args = TensorDeviceType()
    world_file = ["collision_test.yml", "collision_cubby.yml"]

    robot_file = "franka.yml"
    robot_cfg = RobotConfig.from_dict(
        load_yaml(join_path(get_robot_configs_path(), robot_file))["robot_cfg"]
    )
    world_cfg = [
        WorldConfig.from_dict(load_yaml(join_path(get_world_configs_path(), x))) for x in world_file
    ]
    ik_config = IKSolverConfig.load_from_robot_config(
        robot_cfg,
        world_cfg,
        rotation_threshold=0.05,
        position_threshold=0.005,
        num_seeds=100,
        self_collision_check=True,
        self_collision_opt=True,
        tensor_args=tensor_args,
        use_cuda_graph=False,
        # use_fixed_samples=True,
    )
    ik_solver = IKSolver(ik_config)
    q_sample = ik_solver.sample_configs(len(world_file))
    kin_state = ik_solver.fk(q_sample)
    goal = Pose(kin_state.ee_position, kin_state.ee_quaternion)

    print("Running demo_full_config_batch_env_collision_free_ik")
    for _ in range(1):
        st_time = time.time()
        result = ik_solver.solve_batch_env(goal)
        # print(result.success)
        torch.cuda.synchronize()
        print(
            "Success, Solve Time(s), Total Time(s)",
            torch.count_nonzero(result.success).item() / len(q_sample),
            result.solve_time,
            time.time() - st_time,
        )

    q_sample = ik_solver.sample_configs(10 * len(world_file))
    kin_state = ik_solver.fk(q_sample)
    goal = Pose(
        kin_state.ee_position.view(len(world_file), 10, 3),
        kin_state.ee_quaternion.view(len(world_file), 10, 4),
    )

    print("Running Batch Env Goalset IK")
    for _ in range(1):
        st_time = time.time()
        result = ik_solver.solve_batch_env_goalset(goal)
        torch.cuda.synchronize()
        print(
            "Success, Solve Time(s), Total Time(s)",
            torch.count_nonzero(result.success).item() / len(result.success.view(-1)),
            result.solve_time,
            time.time() - st_time,
        )


if __name__ == "__main__":
    print("-"*50)
    demo_basic_ik()
    print("-"*50)
    demo_full_config_collision_free_ik()
    print("-"*50)
    demo_full_config_batch_env_collision_free_ik()

Clarify comparison to BiRRT

Thanks for contributing all your work. It's really interesting and it will take some time to digest all of it... 🐱

I would like to ask you to clarify the comparison to BiRRT you show in your readme and documentation.

  • The right trajectory clearly includes separate approach/put-down/retract motions without phase blending which are often preferred in physical robot experiments for predictability during execution, for clearance between motion phases, and to account for minor errors in perception. These phases were not computed through BiRRT so the label seems wrong. I don't think the left trajectory includes comparable constraints (or at least the required distances are tiny), so the comparison seems flawed. If you wanted to compare the pure transit motion + optimizing grasp pose IK(?) could you indicate that somewhere for fairness? I believe your solutions are still faster there.
  • Where both trajectories computed with the same (sphere) collision geometry and how long did it take to compute both? The typical advantage of BiRRT is that it's fast to generate feasible but jerky paths and running BiRRT* with a very short time epsilon after finding the first solution will generate much shorter Cartesian paths. Obviously time to solution is a problematic comparison between GPU and CPU anyway, but I believe you want to give a good first impression here so it should be fine.

No GUI when Installing the Python version

Hello,

I followed the installation instructions and installed the Python version of the library.

However, when I run the examples, I don't have access to some visualization of the planned trajectories or any kind of GUI. Should this be the case? How do I see the planned trajectories if so? Is this the only way to have Isaac Sim installed?

Best,
Isidoros

Unknown joint type prismatic

  1. cuRobo installation mode (choose from [isaac sim]):
  2. python version: python 3.10.13
  3. Isaac Sim version (if using): 2023.1.0-hotfix

Unknown joint type prismatic, error occurred at cuda_robot_generator.py/CudaRobotGenerator._build_kinematics_tensors(), it could not recognize my prismatic gripper, but prismatic are in the JointType.

class JointType(Enum):
    FIXED = -1
    X_PRISM = 0
    Y_PRISM = 1
    Z_PRISM = 2
    X_ROT = 3
    Y_ROT = 4
    Z_ROT = 5
    X_PRISM_NEG = 6
    Y_PRISM_NEG = 7
    Z_PRISM_NEG = 8
    X_ROT_NEG = 9
    Y_ROT_NEG = 10
    Z_ROT_NEG = 11
GET JOINT TYPE: JointType.FIXED
JOINT TYPE VALUE: -1
GET JOINT TYPE: JointType.FIXED
JOINT TYPE VALUE: -1
GET JOINT TYPE: prismatic
Traceback (most recent call last):
  File "/home/hermanye20/new_curobo_ws/curobo/examples/isaac_sim/motion_gen_reacher.py", line 376, in <module>
    main()
  File "/home/hermanye20/new_curobo_ws/curobo/examples/isaac_sim/motion_gen_reacher.py", line 180, in main
    motion_gen_config = MotionGenConfig.load_from_robot_config(
  File "/home/hermanye20/.local/share/ov/pkg/isaac_sim-2023.1.0-hotfix.1/kit/python/lib/python3.10/contextlib.py", line 79, in inner
    return func(*args, **kwds)
  File "/home/hermanye20/new_curobo_ws/curobo/src/curobo/wrap/reacher/motion_gen.py", line 345, in load_from_robot_config
    robot_cfg = RobotConfig.from_dict(robot_cfg, tensor_args)
  File "/home/hermanye20/new_curobo_ws/curobo/src/curobo/types/robot.py", line 48, in from_dict
    data_dict["kinematics"] = CudaRobotModelConfig.from_config(
  File "/home/hermanye20/new_curobo_ws/curobo/src/curobo/cuda_robot_model/cuda_robot_model.py", line 129, in from_config
    generator = CudaRobotGenerator(config)
  File "/home/hermanye20/new_curobo_ws/curobo/src/curobo/cuda_robot_model/cuda_robot_generator.py", line 222, in __init__
    self.initialize_tensors()
  File "/home/hermanye20/.local/share/ov/pkg/isaac_sim-2023.1.0-hotfix.1/kit/python/lib/python3.10/contextlib.py", line 79, in inner
    return func(*args, **kwds)
  File "/home/hermanye20/new_curobo_ws/curobo/src/curobo/cuda_robot_model/cuda_robot_generator.py", line 290, in initialize_tensors
    self._build_kinematics(self.base_link, self.ee_link, other_links, self.link_names)
  File "/home/hermanye20/.local/share/ov/pkg/isaac_sim-2023.1.0-hotfix.1/kit/python/lib/python3.10/contextlib.py", line 79, in inner
    return func(*args, **kwds)
  File "/home/hermanye20/new_curobo_ws/curobo/src/curobo/cuda_robot_model/cuda_robot_generator.py", line 467, in _build_kinematics
    self._build_kinematics_tensors(base_link, ee_link, link_names, chain_link_names)
  File "/home/hermanye20/.local/share/ov/pkg/isaac_sim-2023.1.0-hotfix.1/kit/python/lib/python3.10/contextlib.py", line 79, in inner
    return func(*args, **kwds)
  File "/home/hermanye20/new_curobo_ws/curobo/src/curobo/cuda_robot_model/cuda_robot_generator.py", line 421, in _build_kinematics_tensors
    print(f"JOINT TYPE VALUE: {self._bodies[i].joint_type.value}")
AttributeError: 'str' object has no attribute 'value'
 <joint name="gripper_inspire_left_joint_1" type="prismatic">
    <origin rpy="3.141592653589793 -1.5707963267948966 0" xyz="-0.034907 -0.009 0.12953"/>
    <parent link="gripper_inspire_body_link"/>
    <child link="gripper_inspire_left_link_1"/>
    <axis xyz="-0.00597 0 -0.99998"/>
    <limit effort="0" lower="-0.035" upper="0" velocity="0"/>
  </joint>
  <link name="gripper_inspire_right_link_1">
    <inertial>
      <origin rpy="0 0 0" xyz="-0.018807 0.0089979 -0.0046901"/>
      <mass value="0.010721"/>
      <inertia ixx="5.1508E-07" ixy="1.2231E-10" ixz="2.8973E-07" iyy="1.5709E-06" iyz="7.2401E-11" izz="1.6904E-06"/>
    </inertial>
    <visual>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="meshes/gripper/gripper_inspire_right_link_1.stl"/>
      </geometry>
      <material name="">
        <color rgba="0.79216 0.81961 0.93333 1"/>
      </material>
    </visual>
    <collision>
      <origin rpy="0 0 0" xyz="0 0 0"/>
      <geometry>
        <mesh filename="meshes/gripper/gripper_inspire_right_link_1.stl"/>
      </geometry>
    </collision>
  </link>
  <joint name="gripper_inspire_right_joint_1" type="prismatic">
    <origin rpy="3.141592653589793 -1.5707963267948966 3.141592653589793" xyz="0.034907 -0.009 0.12953"/>
    <parent link="gripper_inspire_body_link"/>
    <child link="gripper_inspire_right_link_1"/>
    <axis xyz="0.00597 0 0.99998"/>
    <limit effort="0" lower="0" upper="0.035" velocity="0"/>
    <!-- mimic not supported in isaac sim 2023.1.0-hotfix  -->
    <!-- <mimic joint="${name}_left_joint_1" multiplier="-1" offset="0" /> -->
  </joint>

Upload pip package to pypi with pre-compiled cuda kernels.

I made curobo into a pip package using:

python setup.py bdist_wheel

and uploaded it to a local pip registry so that I'm now able to:

pip install nividia_curobo

on different repos without needing to compile it each time.

However, when I use the pip installed curobo wheel I need to jit compile the cuda kernels every time. The output looks like:

kinematics_fused_cu not found, JIT compiling...
geom_cu binary not found, jit compiling...
lbfgs_step_cu not found, JIT compiling...
line_search_cu not found, JIT compiling...
tensor_step_cu not found, jit compiling...
  1. Do you know how to fix this? I have done some basic searching online but not found anything helpful.
  2. Can you publish curobo on pypi to make it easier for anyone to use curobo?

Thanks

Docker image of "Isaac Sim" do not have pytorch installed

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]):
  2. python version:
  3. Isaac Sim version (if using):

Issue Details

I wonder why the docker of isaac_sim do not have installed pytorch.

The version of cuda in the image is 11.4, and directly available pytorch cannot be found. I wonder if I did something wrong?

My build command:

cd docker
bash build_dev_docker.sh isaac_sim_2022.2.1

Issue with Updating Locked Joint State in motion_gen.py

  1. cuRobo installation mode: python
  2. python version:Python 3.8.10
  3. curobo v0.6.2

    def update_locked_state(js: JointState):
        # update the joint values of locked joints:

        pass

I am currently working with a robotic arm that is mounted on a sliding joint. For my use case, I need to lock the sliding joint while executing the motion planning for the robotic arm.

However, I also need to update the value of the sliding joint when I want to move the position of the robotic arm, and then lock it again.

I noticed the update_locked_state function in the motion_gen.py file, which seems to be intended for this purpose. However, it appears that this function is not yet implemented.

Could you please provide some guidance on how to properly update the locked state of the sliding joint? Any help would be greatly appreciated.

Thank you for your time and consideration.

ModuleNotFoundError: No module named 'pxr'

$ omni_python torch_layers_example.py

----output-----
Warning: running in conda env, please deactivate before executing this script
If conda is desired please source setup_conda_env.sh in your python 3.7 conda env and run python normally
Traceback (most recent call last):
File "torch_layers_example.py", line 28, in
from curobo.util.usd_helper import UsdHelper
File "/home/xu2/Work/curobo/src/curobo/util/usd_helper.py", line 19, in
from pxr import Gf, Sdf, Usd, UsdGeom, UsdPhysics, UsdShade
ModuleNotFoundError: No module named 'pxr'
There was an error running python
----output-----

I got this error when tried run torch_layers_example.py scripts, I have no idea of how to fix it, need help

pull_repos.sh script is referenced but not included in the repo

The comments in docker/build_dev_docker.sh says:

# Make sure you have pulled all required repos into pkgs folder (see pull_repos.sh script)

But I can not find that script in the repo.

As a result the build_dev_docker.sh script fails to find curobo and usd in the pkgs folder.

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

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.

When planning trajectories in a collision world, can objects the robot interacts be taken into account?

When planning trajectories in a collision world, can objects the robot interacts be taken into account?

I'm trying to use a robot to grasp objects. Curobo can meet my needs very well, reach the specified grasp pose, and grab the object. However, since the trajectory planned later only considers the robot itself, not the object. Therefore, objects can easily collide during motion.
(For example, if you go to pick up a water cup from a drawer, the robotic arm can use curobo to enter the drawer without collision, but during the process of taking out the drawer, the water cup can easily hit the drawer directly).

This problem seems difficult to solve. Do you have any relevant ideas or features? Grateful

Isaac Sim Examples not running due to broken urdf import

Running Curobo examples in Isaac Sim 2022.2.1 result in broken simulation. Simulation runs but Franka Panda is not imported. For example, running motion_gen_reacher.py gives the following warnings and errors:

2023-10-31 05:16:49 [152,960ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [152,960ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_link0/visuals not created
2023-10-31 05:16:49 [152,971ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [152,971ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_link1/visuals not created
2023-10-31 05:16:49 [152,984ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [152,984ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_link2/visuals not created
2023-10-31 05:16:49 [152,998ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [152,998ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_link3/visuals not created
2023-10-31 05:16:49 [153,010ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [153,010ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_link4/visuals not created
2023-10-31 05:16:49 [153,022ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [153,022ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_link5/visuals not created
2023-10-31 05:16:49 [153,033ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [153,033ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_link6/visuals not created
2023-10-31 05:16:49 [153,045ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [153,045ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_link7/visuals not created
2023-10-31 05:16:49 [153,057ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [153,057ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_hand/visuals not created
2023-10-31 05:16:49 [153,070ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [153,070ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_leftfinger/visuals not created
2023-10-31 05:16:49 [153,082ms] [Warning] [omni.isaac.urdf] Asset convert failed as asset file is broken.
2023-10-31 05:16:49 [153,082ms] [Warning] [omni.isaac.urdf] Prim /World/panda/panda_rightfinger/visuals not created
2023-10-31 05:17:02 [166,582ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_hand/collisions
2023-10-31 05:17:02 [166,582ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_link7/collisions
2023-10-31 05:17:02 [166,583ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_link6/collisions
2023-10-31 05:17:02 [166,583ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_link5/collisions
2023-10-31 05:17:02 [166,583ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_rightfinger/collisions
2023-10-31 05:17:02 [166,583ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_link2/collisions
2023-10-31 05:17:02 [166,583ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_leftfinger/collisions
2023-10-31 05:17:02 [166,583ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_link3/collisions
2023-10-31 05:17:02 [166,583ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_link1/collisions
2023-10-31 05:17:02 [166,583ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_link4/collisions
2023-10-31 05:17:02 [166,583ms] [Error] [omni.physicsschema.plugin] Provided mesh geom with a PhysicsCollisionAPI does not have points, collision will not be created. Prim: /World/panda/panda_link0/collisions

Install failed on Win11

  1. cuRobo installation mode: python
  2. python version: python 3.7.16
    -- setuptool: 65.0.0
    -- cuda 11.7
    -- pytorch: 1.13.1
  3. Isaac Sim version (if using): I have not tried Isaac sim yet.

Issue Details

I try to install curobo on my win11 PC, with RTX 3090, but it failed when I executed the command:

pip install -e  . --no-build-isolation

I also follow the suggestion printed from the log, run the pip install without edit mode, but it still not work:

pip install . --no-build-isolation

Is it possible to install the curobo on a Windows PC? Thanks in advance!

Here is the log output:
error_log.txt

Error when run "motion_gen_reacher.py"

Hi,
my env info:

  1. cuRobo installation mode: python, isaac sim
  2. python version: 3.7.13
  3. Isaac Sim version (if using): 2022.2.1

Issue Details:
When run motion_gen_reacher.py on my robot without griper collision spheres, It's workable.
But with griper collision spheres, it got Error:
img_v3_0257_9d35dfbe-352f-47b4-b6bd-bc62269c7cdg

About adding sphere in configuration

  1. cuRobo installation mode [isaac sim]:
  2. python version: default
  3. Isaac Sim version : 2023

When I adding sphere in part of configuration custom robot, I found that if some link of urdf have a refer mesh file with scale<0, like this:

<geometry>
<mesh filename="meshes/dhag95/visual/proximal_phalanx_link.STL" scale="0.001 0.001 0.001" />
</geometry>

the spheres added automatedly are huge and at wrong position, and "scale spheres in link" panel cant solve the problem

how to run collision check IK for custom robots.

Hi, is it possible to infer collsion models directly from URDF?
From the IK example, the ik without collision model works well, but for the collision check, it seems not support collision mesh defined in the urdf? Could you support this?

Motion_gen.plan_batch_env() Fails to Plan Successful Result When Envs >=5

I think there is some bug with batch_motion_gen_reacher.py with n_envs >=5( n_envs = 2 - 4 seems working fine)

To reproduce the bug, go

"batch_motion_gen_reacher.py"

and change few lines:

n_envs = 2 ->
n_envs = 5
world_file = ["collision_test.yml", "collision_thin_walls.yml"] ->
world_file = ["collision_test.yml" for i in range(n_envs)]
cmd_plan = [None, None] ->
cmd_plan = [None for i in range(n_envs)]

then running the file will cause no planned trajectory being success, if we commented out the check if result.success[s]:
we can observe
Screencast from 12-14-2023 09-41-14 PM

In contrast, if we just change the value of n_envs from 5 to 4
n_envs = 4
all the issue are gone and can be seens from
Screencast from 12-14-2023 09-43-02 PM

the updated batch_motiuon_gen_reacher.py that reproduces error can be downloaded from here
https://drive.google.com/drive/folders/12Ph7JvX9RleSdUkNCYJS6Mu96byihg9l

Thank you for your hard work.

How to use RGB-D depth map with cuRobo?

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): docker isaac sim
  2. python version: /
  3. Isaac Sim version (if using): 2022 version

Hi guys, thanks for your great work!!!

I want to use CuRobo with RGB-D camera, and use the api in examples:

data_camera = CameraObservation(  # rgb_image = data["rgba_nvblox"],
depth_image=data["depth"], intrinsics=data["intrinsics"], pose=camera_pose
            )
data_camera = data_camera.to(device=tensor_args.device)
world_model.add_camera_frame(data_camera, "world")
world_model.process_camera_frames("world", False)
torch.cuda.synchronize()
world_model.update_blox_hashes()

But even when RGB-D shoots the desktop, the point cloud should be very thin, but the generated occupancy is always very bloated ( a thick occupancy that approximates a cube is generated instead of a plane).

img_v3_026b_762c1f55-572e-46eb-9325-f9215b5e927g

img_v3_026b_49b8d20c-e81a-4874-bae8-168e20cbf93g

I'm confused about this, and I haven't found any other API examples or documentation. Is there a more accurate way to model point clouds?

Undefined symbol issue when running nvblox related examples

Hi, examples given in isaac-sim folder are working except nvblox ones. I have followed instructions given in curobo documentation to install nvblox correctly in isaac-sim and was able to import nvblox_torch. But when running nvblox related examples, I am getting below issue. Can you help me resolve this? Is this some version mismatch issue?

Command: omni_python mpc_nvblox_example.py
Issue:
OSError: /usr/local/lib/libglog.so.0: undefined symbol: ZN6google14FlagRegistererC1INSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEEPKcS9_S9_PT_SB
2023-11-28 18:23:36 [29,361ms] [Warning] [carb.audio.context] 1 contexts were leaked
/home2/$USER$/.local/share/ov/pkg/isaac_sim-2022.2.1/python.sh: line 41: 3414963 Segmentation fault (core dumped) $python_exe "$@" $args
There was an error running python

Segmentation fault when pytest

First thanks for your wonderful work!
I follow the instruction and run python3 -m pytest . and get Segmentation fault:

platform linux -- Python 3.8.16, pytest-7.4.3, pluggy-1.3.0
rootdir: /share/haoran/HRI/curobo
configfile: pyproject.toml
plugins: dash-2.11.1, typeguard-4.1.5, torchtyping-0.1.4
collecting 23 items
Fatal Python error: Segmentation fault

Current thread 0x00007fa6eb87c4c0 (most recent call first):
File "/share/haoran/HRI/curobo/src/curobo/types/math.py", line 207 in from_list
File "/share/haoran/HRI/curobo/src/curobo/cuda_robot_model/kinematics_parser.py", line 43 in from_dict
File "/share/haoran/HRI/curobo/src/curobo/cuda_robot_model/cuda_robot_generator.py", line 204 in post_init
File "", line 31 in init
File "/share/haoran/HRI/curobo/src/curobo/types/robot.py", line 49 in from_dict
File "/share/haoran/HRI/curobo/tests/ik_config_test.py", line 35 in ik_base_config
File "/share/haoran/HRI/curobo/tests/ik_config_test.py", line 134 in
File "/home/haoran/anaconda3/envs/cvpr2023/lib/python3.8/site-packages/_pytest/assertion/rewrite.py", line 186 in exec_module
File "", line 671 in _load_unlocked
File "", line 975 in _find_and_load_unlocked
File "", line 991 in _find_and_load
File "", line 1014 in _gcd_import
File "/home/haoran/anaconda3/envs/cvpr2023/lib/python3.8/importlib/init.py", line 127 in import_module
File "/home/haoran/anaconda3/envs/cvpr2023/lib/python3.8/site-packages/_pytest/pathlib.py", line 567 in import_path
...

I wonder what might be the cause of this. My CUDA Version: 11.6.

ModuleNotFoundError: No module named 'pxr'

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): python
  2. python version: python==3.7
  3. Isaac Sim version (if using): not used

Issue Details

I need help, thanks!!!!!

$ python examples/motion_gen_api_example.py

Traceback (most recent call last):
File "examples/motion_gen_api_example.py", line 20, in
from curobo.util.usd_helper import UsdHelper
File "/home/panmingjie/gsnet/curobo/src/curobo/util/usd_helper.py", line 19, in
from pxr import Gf, Sdf, Usd, UsdGeom, UsdPhysics, UsdShade
ModuleNotFoundError: No module named 'pxr'

Sphere model is fitting joints instead of links (for custom robot)

Hi, I was trying to build sphere model for xarm7 (which is not provided by default in curobo). Spheres are fitting joints instead of links.

URDF : https://drive.google.com/file/d/15mpdO20_NXHT8zGIXS_X6gOnTpc5biYx/view?usp=sharing
USD : https://drive.google.com/file/d/179Jmx-5bW3uxbX5I8bk_qkOby5i7vSJ7/view?usp=drive_link
yml file: https://drive.google.com/file/d/1rg1XP9KHyKcymljtMYX_doApf2QBbCIQ/view?usp=sharing

Screenshots of the sphere model for first 3 links. Could you please help me understand why is it modelling that way?

link_base_xarm7
link1_xarm7
link2_xarm7

Let me know if you need further information.

'cudafe++' died due to signal 9 (Kill signal) when building x86 docker

  1. cuRobo installation mode (docker python):
  2. python version: System Python is 3.10
  3. Isaac Sim version (if using):

Issue Details

On a Ubuntu 22.04 computer, when running

bash build_docker.sh x86

for the step

RUN cd /pkgs &&  git clone https://github.com/valtsblukis/nvblox.git && \
    cd nvblox && cd nvblox && mkdir build && cd build && \
    cmake .. -DPRE_CXX11_ABI_LINKABLE=ON && \
    make -j32 && \
    make install

I get the error:

25.88 [ 23%] Building CUDA object CMakeFiles/nvblox_lib.dir/src/integrators/projective_occupancy_integrator.cu.o
25.88 [ 24%] Building CUDA object CMakeFiles/nvblox_lib.dir/src/integrators/esdf_slicer.cu.o
25.89 [ 24%] Building CXX object CMakeFiles/nvblox_lib.dir/src/io/layer_cake_io.cpp.o
25.89 [ 25%] Building CXX object CMakeFiles/nvblox_lib.dir/src/io/ply_writer.cpp.o
26.26 [ 26%] Building CXX object CMakeFiles/nvblox_lib.dir/src/io/pointcloud_io.cpp.o
26.53 [ 26%] Building CXX object CMakeFiles/nvblox_lib.dir/src/io/image_io.cpp.o
27.07 [ 27%] Building CUDA object CMakeFiles/nvblox_lib.dir/src/mesh/mesh_block.cu.o
27.46 [ 27%] Building CUDA object CMakeFiles/nvblox_lib.dir/src/mesh/mesh_integrator_color.cu.o
28.05 [ 28%] Building CUDA object CMakeFiles/nvblox_lib.dir/src/mesh/mesh_integrator.cu.o
28.31 [ 28%] Building CXX object CMakeFiles/nvblox_lib.dir/src/mesh/mesh.cpp.o
28.38 [ 29%] Building CXX object CMakeFiles/nvblox_lib.dir/src/mesh/mesh_streamer.cpp.o
31.55 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
31.58 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:366: CMakeFiles/nvblox_lib.dir/src/integrators/tsdf_decay_integrator.cu.o] Error 9
31.58 make[2]: *** Waiting for unfinished jobs....
32.33 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
32.34 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:150: CMakeFiles/nvblox_lib.dir/src/map/blox.cu.o] Error 9
32.77 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
32.77 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:222: CMakeFiles/nvblox_lib.dir/src/sensors/pointcloud.cu.o] Error 9
33.20 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
33.20 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:336: CMakeFiles/nvblox_lib.dir/src/integrators/view_calculator.cu.o] Error 9
50.82 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
50.83 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:381: CMakeFiles/nvblox_lib.dir/src/integrators/projective_occupancy_integrator.cu.o] Error 9
61.17 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
61.18 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:396: CMakeFiles/nvblox_lib.dir/src/integrators/projective_tsdf_integrator.cu.o] Error 9
70.05 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
70.06 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:351: CMakeFiles/nvblox_lib.dir/src/integrators/occupancy_decay_integrator.cu.o] Error 9
91.35 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
91.36 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:411: CMakeFiles/nvblox_lib.dir/src/integrators/projective_color_integrator.cu.o] Error 9
106.4 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
106.4 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:237: CMakeFiles/nvblox_lib.dir/src/sensors/image.cu.o] Error 9
124.3 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
124.4 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:165: CMakeFiles/nvblox_lib.dir/src/map/layer.cu.o] Error 9
166.9 nvcc error   : 'cudafe++' died due to signal 9 (Kill signal)
166.9 make[2]: *** [CMakeFiles/nvblox_lib.dir/build.make:471: CMakeFiles/nvblox_lib.dir/src/rays/sphere_tracer.cu.o] Error 9
170.1 In file included from /pkgs/nvblox/nvblox/include/nvblox/core/unified_ptr.h:217,
170.1                  from /pkgs/nvblox/nvblox/include/nvblox/sensors/image.h:22,
170.1                  from /pkgs/nvblox/nvblox/include/nvblox/io/image_io.h:21,
170.1                  from /pkgs/nvblox/nvblox/src/io/image_io.cpp:1:
170.1 In member function ‘nvblox::unified_ptr<T>& nvblox::unified_ptr<T>::operator=(nvblox::unified_ptr<T>&&) [with T = unsigned char []]’,
170.1     inlined from ‘nvblox::Image<_ElementType>& nvblox::Image<_ElementType>::operator=(nvblox::Image<_ElementType>&&) [with _ElementType = unsigned char]’ at /pkgs/nvblox/nvblox/include/nvblox/sensors/internal/impl/image_impl.h:48:15,
170.1     inlined from ‘bool nvblox::io::writeToPngTemplate(const string&, const ImageType&) [with ImageType = nvblox::Image<unsigned char>]’ at /pkgs/nvblox/nvblox/src/io/image_io.cpp:41:9:
170.1 /pkgs/nvblox/nvblox/include/nvblox/core/internal/impl/unified_ptr_impl.h:194:17: warning: ‘<unnamed>.nvblox::Image<unsigned char>::owned_data_.nvblox::unified_ptr<unsigned char []>::size_’ may be used uninitialized [-Wmaybe-uninitialized]
170.1   194 |   size_ = other.size_;
170.1       |           ~~~~~~^~~~~
170.1 /pkgs/nvblox/nvblox/src/io/image_io.cpp: In function ‘bool nvblox::io::writeToPngTemplate(const string&, const ImageType&) [with ImageType = nvblox::Image<unsigned char>]’:
170.1 /pkgs/nvblox/nvblox/src/io/image_io.cpp:41:11: note: ‘<anonymous>’ declared here
170.1    41 |     tmp = ImageType(MemoryType::kHost);
170.1       |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
170.1 In file included from /pkgs/nvblox/nvblox/include/nvblox/core/unified_ptr.h:217,
170.1                  from /pkgs/nvblox/nvblox/include/nvblox/sensors/image.h:22,
170.1                  from /pkgs/nvblox/nvblox/include/nvblox/io/image_io.h:21,
170.1                  from /pkgs/nvblox/nvblox/src/io/image_io.cpp:1:
170.1 In member function ‘nvblox::unified_ptr<T>& nvblox::unified_ptr<T>::operator=(nvblox::unified_ptr<T>&&) [with T = nvblox::Color []]’,
170.1     inlined from ‘nvblox::Image<_ElementType>& nvblox::Image<_ElementType>::operator=(nvblox::Image<_ElementType>&&) [with _ElementType = nvblox::Color]’ at /pkgs/nvblox/nvblox/include/nvblox/sensors/internal/impl/image_impl.h:48:15,
170.1     inlined from ‘bool nvblox::io::writeToPngTemplate(const string&, const ImageType&) [with ImageType = nvblox::Image<nvblox::Color>]’ at /pkgs/nvblox/nvblox/src/io/image_io.cpp:41:9:
170.1 /pkgs/nvblox/nvblox/include/nvblox/core/internal/impl/unified_ptr_impl.h:194:17: warning: ‘<unnamed>.nvblox::Image<nvblox::Color>::owned_data_.nvblox::unified_ptr<nvblox::Color []>::size_’ may be used uninitialized [-Wmaybe-uninitialized]
170.1   194 |   size_ = other.size_;
170.1       |           ~~~~~~^~~~~
170.1 /pkgs/nvblox/nvblox/src/io/image_io.cpp: In function ‘bool nvblox::io::writeToPngTemplate(const string&, const ImageType&) [with ImageType = nvblox::Image<nvblox::Color>]’:
170.1 /pkgs/nvblox/nvblox/src/io/image_io.cpp:41:11: note: ‘<anonymous>’ declared here
170.1    41 |     tmp = ImageType(MemoryType::kHost);
170.1       |           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
177.8 make[1]: *** [CMakeFiles/Makefile2:437: CMakeFiles/nvblox_lib.dir/all] Error 2
177.8 make: *** [Makefile:146: all] Error 2
------
x86.dockerfile:113
--------------------
 112 |     
 113 | >>> RUN cd /pkgs &&  git clone https://github.com/valtsblukis/nvblox.git && \
 114 | >>>     cd nvblox && cd nvblox && mkdir build && cd build && \
 115 | >>>     cmake .. -DPRE_CXX11_ABI_LINKABLE=ON && \
 116 | >>>     make -j32 && \
 117 | >>>     make install
 118 |     
--------------------
ERROR: failed to solve: process "/bin/sh -c cd /pkgs &&  git clone https://github.com/valtsblukis/nvblox.git &&     cd nvblox && cd nvblox && mkdir build && cd build &&     cmake .. -DPRE_CXX11_ABI_LINKABLE=ON &&     make -j32 &&     make install" did not complete successfully: exit code: 2

Anyone knows what might be the issue?

When I try to rebuild it, another error occurs

Looking in indexes: https://pypi.org/simple, https://pypi.ngc.nvidia.com
Processing /pkgs/curobo
Preparing metadata (pyproject.toml): started
Preparing metadata (pyproject.toml): finished with status 'done'
Requirement already satisfied: networkx in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (2.6.3)
Requirement already satisfied: numpy in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (1.22.2)
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f914091b730>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /compute/redist/numpy-quaternion/
WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f914091ba00>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /compute/redist/numpy-quaternion/
WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f914091bbb0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /compute/redist/numpy-quaternion/
Collecting numpy-quaternion (from nvidia-curobo==0.0.0)
Obtaining dependency information for numpy-quaternion from https://files.pythonhosted.org/packages/54/cc/f354be1e9e3a0b1ea0ae61e800249c033e78e1ade5ff604f69decb3d3e41/numpy_quaternion-2023.0.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata
Downloading numpy_quaternion-2023.0.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (14 kB)
Requirement already satisfied: pyyaml in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (6.0.1)
Collecting setuptools-scm>=6.2 (from nvidia-curobo==0.0.0)
Obtaining dependency information for setuptools-scm>=6.2 from https://files.pythonhosted.org/packages/0e/a3/b9a8b0adfe672bf0df5901707aa929d30a97ee390ba651910186776746d2/setuptools_scm-8.0.4-py3-none-any.whl.metadata
Downloading setuptools_scm-8.0.4-py3-none-any.whl.metadata (6.4 kB)
Collecting torchtyping (from nvidia-curobo==0.0.0)
Downloading torchtyping-0.1.4-py3-none-any.whl (17 kB)
Requirement already satisfied: torch>=1.10 in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (2.1.0a0+29c30b1)
Requirement already satisfied: trimesh in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (4.0.8)
Collecting yourdfpy>=0.0.53 (from nvidia-curobo==0.0.0)
Downloading yourdfpy-0.0.53-py3-none-any.whl (22 kB)
Collecting warp-lang>=0.9.0 (from nvidia-curobo==0.0.0)
Obtaining dependency information for warp-lang>=0.9.0 from https://files.pythonhosted.org/packages/b8/3b/acbbde78d548b46502c044a0dc76ee6d362ce54f860aa7871f0e0d19a5a6/warp_lang-0.10.1-py3-none-manylinux2014_x86_64.whl.metadata
Downloading warp_lang-0.10.1-py3-none-manylinux2014_x86_64.whl.metadata (782 bytes)
Requirement already satisfied: scipy>=1.7.0 in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (1.11.1)
Requirement already satisfied: tqdm in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (4.65.0)
Requirement already satisfied: wheel in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (0.41.1)
Collecting importlib-resources (from nvidia-curobo==0.0.0)
Obtaining dependency information for importlib-resources from https://files.pythonhosted.org/packages/93/e8/facde510585869b5ec694e8e0363ffe4eba067cb357a8398a55f6a1f8023/importlib_resources-6.1.1-py3-none-any.whl.metadata
Downloading importlib_resources-6.1.1-py3-none-any.whl.metadata (4.1 kB)
Requirement already satisfied: ipdb in /usr/lib/python3/dist-packages (from nvidia-curobo==0.0.0) (0.13.9)
Requirement already satisfied: ipython in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (8.14.0)
Collecting black (from nvidia-curobo==0.0.0)
Obtaining dependency information for black from https://files.pythonhosted.org/packages/a4/dc/af67d8281e9a24f73d24b060f3f03f6d9ad6be259b3c6acef2845e17d09c/black-23.12.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata
Downloading black-23.12.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (68 kB)
���������������������������������������� 69.0/69.0 kB 11.1 MB/s eta 0:00:00
Collecting flake8 (from nvidia-curobo==0.0.0)
Obtaining dependency information for flake8 from https://files.pythonhosted.org/packages/b0/24/bbf7175ffc47cb3d3e1eb523ddb23272968359dfcf2e1294707a2bf12fc4/flake8-6.1.0-py2.py3-none-any.whl.metadata
Downloading flake8-6.1.0-py2.py3-none-any.whl.metadata (3.8 kB)
Collecting flake8-docstrings (from nvidia-curobo==0.0.0)
Downloading flake8_docstrings-1.7.0-py2.py3-none-any.whl (5.0 kB)
Collecting flake8-isort (from nvidia-curobo==0.0.0)
Obtaining dependency information for flake8-isort from https://files.pythonhosted.org/packages/82/d2/18aee7242bf5bc0d780d88009657c9169d042044d3cb3e05898429d474e6/flake8_isort-6.1.1-py3-none-any.whl.metadata
Downloading flake8_isort-6.1.1-py3-none-any.whl.metadata (25 kB)
Requirement already satisfied: pytest>6.2.5 in /usr/local/lib/python3.10/dist-packages (from nvidia-curobo==0.0.0) (7.4.0)
Collecting pytest-cov (from nvidia-curobo==0.0.0)
Obtaining dependency information for pytest-cov from https://files.pythonhosted.org/packages/a7/4b/8b78d126e275efa2379b1c2e09dc52cf70df16fc3b90613ef82531499d73/pytest_cov-4.1.0-py3-none-any.whl.metadata
Downloading pytest_cov-4.1.0-py3-none-any.whl.metadata (26 kB)
Collecting usd-core (from nvidia-curobo==0.0.0)
Obtaining dependency information for usd-core from https://files.pythonhosted.org/packages/69/cd/16227f45f599fd22ef77d3d80559c5b63cb95a41da8b27a4211858314cc7/usd_core-23.11-cp310-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata
Downloading usd_core-23.11-cp310-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (1.6 kB)
Requirement already satisfied: iniconfig in /usr/local/lib/python3.10/dist-packages (from pytest>6.2.5->nvidia-curobo==0.0.0) (2.0.0)
Requirement already satisfied: packaging in /usr/local/lib/python3.10/dist-packages (from pytest>6.2.5->nvidia-curobo==0.0.0) (23.1)
Requirement already satisfied: pluggy<2.0,>=0.12 in /usr/local/lib/python3.10/dist-packages (from pytest>6.2.5->nvidia-curobo==0.0.0) (1.2.0)
Requirement already satisfied: exceptiongroup>=1.0.0rc8 in /usr/local/lib/python3.10/dist-packages (from pytest>6.2.5->nvidia-curobo==0.0.0) (1.1.2)
Requirement already satisfied: tomli>=1.0.0 in /usr/local/lib/python3.10/dist-packages (from pytest>6.2.5->nvidia-curobo==0.0.0) (2.0.1)
Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from setuptools-scm>=6.2->nvidia-curobo==0.0.0) (68.0.0)
Requirement already satisfied: typing-extensions in /usr/local/lib/python3.10/dist-packages (from setuptools-scm>=6.2->nvidia-curobo==0.0.0) (4.7.1)
Requirement already satisfied: filelock in /usr/local/lib/python3.10/dist-packages (from torch>=1.10->nvidia-curobo==0.0.0) (3.12.2)
Requirement already satisfied: sympy in /usr/local/lib/python3.10/dist-packages (from torch>=1.10->nvidia-curobo==0.0.0) (1.12)
Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from torch>=1.10->nvidia-curobo==0.0.0) (3.1.2)
Requirement already satisfied: fsspec in /usr/local/lib/python3.10/dist-packages (from torch>=1.10->nvidia-curobo==0.0.0) (2023.6.0)
Requirement already satisfied: lxml in /usr/lib/python3/dist-packages (from yourdfpy>=0.0.53->nvidia-curobo==0.0.0) (4.8.0)
Requirement already satisfied: six in /usr/local/lib/python3.10/dist-packages (from yourdfpy>=0.0.53->nvidia-curobo==0.0.0) (1.16.0)
Requirement already satisfied: click>=8.0.0 in /usr/local/lib/python3.10/dist-packages (from black->nvidia-curobo==0.0.0) (8.1.5)
Collecting mypy-extensions>=0.4.3 (from black->nvidia-curobo==0.0.0)
Downloading mypy_extensions-1.0.0-py3-none-any.whl (4.7 kB)
Collecting pathspec>=0.9.0 (from black->nvidia-curobo==0.0.0)
Obtaining dependency information for pathspec>=0.9.0 from https://files.pythonhosted.org/packages/cc/20/ff623b09d963f88bfde16306a54e12ee5ea43e9b597108672ff3a408aad6/pathspec-0.12.1-py3-none-any.whl.metadata
Downloading pathspec-0.12.1-py3-none-any.whl.metadata (21 kB)
Requirement already satisfied: platformdirs>=2 in /usr/local/lib/python3.10/dist-packages (from black->nvidia-curobo==0.0.0) (3.10.0)
Collecting mccabe<0.8.0,>=0.7.0 (from flake8->nvidia-curobo==0.0.0)
Downloading mccabe-0.7.0-py2.py3-none-any.whl (7.3 kB)
Collecting pycodestyle<2.12.0,>=2.11.0 (from flake8->nvidia-curobo==0.0.0)
Obtaining dependency information for pycodestyle<2.12.0,>=2.11.0 from https://files.pythonhosted.org/packages/b1/90/a998c550d0ddd07e38605bb5c455d00fcc177a800ff9cc3dafdcb3dd7b56/pycodestyle-2.11.1-py2.py3-none-any.whl.metadata
Downloading pycodestyle-2.11.1-py2.py3-none-any.whl.metadata (4.5 kB)
Collecting pyflakes<3.2.0,>=3.1.0 (from flake8->nvidia-curobo==0.0.0)
Obtaining dependency information for pyflakes<3.2.0,>=3.1.0 from https://files.pythonhosted.org/packages/00/e9/1e1fd7fae559bfd07704991e9a59dd1349b72423c904256c073ce88a9940/pyflakes-3.1.0-py2.py3-none-any.whl.metadata
Downloading pyflakes-3.1.0-py2.py3-none-any.whl.metadata (3.5 kB)
Collecting pydocstyle>=2.1 (from flake8-docstrings->nvidia-curobo==0.0.0)
Downloading pydocstyle-6.3.0-py3-none-any.whl (38 kB)
Collecting isort<6,>=5.0.0 (from flake8-isort->nvidia-curobo==0.0.0)
Obtaining dependency information for isort<6,>=5.0.0 from https://files.pythonhosted.org/packages/d1/b3/8def84f539e7d2289a02f0524b944b15d7c75dab7628bedf1c4f0992029c/isort-5.13.2-py3-none-any.whl.metadata
Downloading isort-5.13.2-py3-none-any.whl.metadata (12 kB)
Requirement already satisfied: decorator in /usr/local/lib/python3.10/dist-packages (from ipdb->nvidia-curobo==0.0.0) (5.1.1)
Requirement already satisfied: toml>=0.10.2 in /usr/local/lib/python3.10/dist-packages (from ipdb->nvidia-curobo==0.0.0) (0.10.2)
Requirement already satisfied: backcall in /usr/local/lib/python3.10/dist-packages (from ipython->nvidia-curobo==0.0.0) (0.2.0)
Requirement already satisfied: jedi>=0.16 in /usr/local/lib/python3.10/dist-packages (from ipython->nvidia-curobo==0.0.0) (0.19.0)
Requirement already satisfied: matplotlib-inline in /usr/local/lib/python3.10/dist-packages (from ipython->nvidia-curobo==0.0.0) (0.1.6)
Requirement already satisfied: pickleshare in /usr/local/lib/python3.10/dist-packages (from ipython->nvidia-curobo==0.0.0) (0.7.5)
Requirement already satisfied: prompt-toolkit!=3.0.37,<3.1.0,>=3.0.30 in /usr/local/lib/python3.10/dist-packages (from ipython->nvidia-curobo==0.0.0) (3.0.39)
Requirement already satisfied: pygments>=2.4.0 in /usr/local/lib/python3.10/dist-packages (from ipython->nvidia-curobo==0.0.0) (2.16.1)
Requirement already satisfied: stack-data in /usr/local/lib/python3.10/dist-packages (from ipython->nvidia-curobo==0.0.0) (0.6.2)
Requirement already satisfied: traitlets>=5 in /usr/local/lib/python3.10/dist-packages (from ipython->nvidia-curobo==0.0.0) (5.9.0)
Requirement already satisfied: pexpect>4.3 in /usr/local/lib/python3.10/dist-packages (from ipython->nvidia-curobo==0.0.0) (4.8.0)
Collecting coverage[toml]>=5.2.1 (from pytest-cov->nvidia-curobo==0.0.0)
Obtaining dependency information for coverage[toml]>=5.2.1 from https://files.pythonhosted.org/packages/b3/91/1f1c7f3351e4c996558e67bfe4f04084b7d01878e2bb55640652e1ee908f/coverage-7.4.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata
Downloading coverage-7.4.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (8.1 kB)
Collecting typeguard>=2.11.1 (from torchtyping->nvidia-curobo==0.0.0)
Obtaining dependency information for typeguard>=2.11.1 from https://files.pythonhosted.org/packages/18/01/5fc45558268ced46d86292763477996a3cdd505567cd590a688e8cdc386e/typeguard-4.1.5-py3-none-any.whl.metadata
Downloading typeguard-4.1.5-py3-none-any.whl.metadata (3.7 kB)
Requirement already satisfied: parso<0.9.0,>=0.8.3 in /usr/local/lib/python3.10/dist-packages (from jedi>=0.16->ipython->nvidia-curobo==0.0.0) (0.8.3)
Requirement already satisfied: ptyprocess>=0.5 in /usr/local/lib/python3.10/dist-packages (from pexpect>4.3->ipython->nvidia-curobo==0.0.0) (0.7.0)
Requirement already satisfied: wcwidth in /usr/local/lib/python3.10/dist-packages (from prompt-toolkit!=3.0.37,<3.1.0,>=3.0.30->ipython->nvidia-curobo==0.0.0) (0.2.6)
Collecting snowballstemmer>=2.2.0 (from pydocstyle>=2.1->flake8-docstrings->nvidia-curobo==0.0.0)
Downloading snowballstemmer-2.2.0-py2.py3-none-any.whl (93 kB)
��������������������������������������� 93.0/93.0 kB 144.8 MB/s eta 0:00:00
Collecting colorlog (from trimesh->nvidia-curobo==0.0.0)
Obtaining dependency information for colorlog from https://files.pythonhosted.org/packages/95/df/520663eb7f7a329f7c585834b754bcc3cbcc03957d85fcbba4a2a723ad9d/colorlog-6.8.0-py3-none-any.whl.metadata
Downloading colorlog-6.8.0-py3-none-any.whl.metadata (10 kB)
Collecting mapbox-earcut (from trimesh->nvidia-curobo==0.0.0)
Downloading mapbox_earcut-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (104 kB)
�������������������������������������� 104.9/104.9 kB 20.5 MB/s eta 0:00:00
Requirement already satisfied: chardet in /usr/lib/python3/dist-packages (from trimesh->nvidia-curobo==0.0.0) (4.0.0)
Requirement already satisfied: jsonschema in /usr/local/lib/python3.10/dist-packages (from trimesh->nvidia-curobo==0.0.0) (4.18.6)
Collecting svg.path (from trimesh->nvidia-curobo==0.0.0)
Downloading svg.path-6.3-py2.py3-none-any.whl (16 kB)
Requirement already satisfied: pycollada in /usr/local/lib/python3.10/dist-packages (from trimesh->nvidia-curobo==0.0.0) (0.6)
Collecting shapely (from trimesh->nvidia-curobo==0.0.0)
Obtaining dependency information for shapely from https://files.pythonhosted.org/packages/99/e9/a996a080d8478f4ab5ea82f64a5f39aaa8e05c99c2703e0ee03ec8c9e924/shapely-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata
Downloading shapely-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (7.0 kB)
Collecting xxhash (from trimesh->nvidia-curobo==0.0.0)
Obtaining dependency information for xxhash from https://files.pythonhosted.org/packages/80/8a/1dd41557883b6196f8f092011a5c1f72d4d44cf36d7b67d4a5efe3127949/xxhash-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata
Downloading xxhash-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (12 kB)
Collecting rtree (from trimesh->nvidia-curobo==0.0.0)
Obtaining dependency information for rtree from https://files.pythonhosted.org/packages/f2/04/74f48b042aabdafa122289957240f4c013aec8c9045c3ce2fe3d1fa7a937/Rtree-1.1.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata
Downloading Rtree-1.1.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl.metadata (2.8 kB)
Collecting httpx (from trimesh->nvidia-curobo==0.0.0)
Obtaining dependency information for httpx from https://files.pythonhosted.org/packages/39/9b/4937d841aee9c2c8102d9a4eeb800c7dad25386caabb4a1bf5010df81a57/httpx-0.26.0-py3-none-any.whl.metadata
Downloading httpx-0.26.0-py3-none-any.whl.metadata (7.6 kB)
Collecting embreex (from trimesh->nvidia-curobo==0.0.0)
Obtaining dependency information for embreex from https://files.pythonhosted.org/packages/90/c7/f4abf09c6109c975e462c72ea4f9e2d72d78e20325dafb151c8e9789a31d/embreex-2.17.7.post4-cp310-cp310-manylinux_2_28_x86_64.whl.metadata
Downloading embreex-2.17.7.post4-cp310-cp310-manylinux_2_28_x86_64.whl.metadata (3.0 kB)
Requirement already satisfied: pillow in /usr/local/lib/python3.10/dist-packages (from trimesh->nvidia-curobo==0.0.0) (9.2.0)
Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->torch>=1.10->nvidia-curobo==0.0.0) (2.1.3)
Requirement already satisfied: executing>=1.2.0 in /usr/local/lib/python3.10/dist-packages (from stack-data->ipython->nvidia-curobo==0.0.0) (1.2.0)
Requirement already satisfied: asttokens>=2.1.0 in /usr/local/lib/python3.10/dist-packages (from stack-data->ipython->nvidia-curobo==0.0.0) (2.2.1)
Requirement already satisfied: pure-eval in /usr/local/lib/python3.10/dist-packages (from stack-data->ipython->nvidia-curobo==0.0.0) (0.2.2)
Requirement already satisfied: mpmath>=0.19 in /usr/local/lib/python3.10/dist-packages (from sympy->torch>=1.10->nvidia-curobo==0.0.0) (1.3.0)
Collecting anyio (from httpx->trimesh->nvidia-curobo==0.0.0)
Obtaining dependency information for anyio from https://files.pythonhosted.org/packages/bf/cd/d6d9bb1dadf73e7af02d18225cbd2c93f8552e13130484f1c8dcfece292b/anyio-4.2.0-py3-none-any.whl.metadata
Downloading anyio-4.2.0-py3-none-any.whl.metadata (4.6 kB)
Requirement already satisfied: certifi in /usr/local/lib/python3.10/dist-packages (from httpx->trimesh->nvidia-curobo==0.0.0) (2023.7.22)
Collecting httpcore==1.* (from httpx->trimesh->nvidia-curobo==0.0.0)
Obtaining dependency information for httpcore==1.* from https://files.pythonhosted.org/packages/56/ba/78b0a99c4da0ff8b0f59defa2f13ca4668189b134bd9840b6202a93d9a0f/httpcore-1.0.2-py3-none-any.whl.metadata
Downloading httpcore-1.0.2-py3-none-any.whl.metadata (20 kB)
Requirement already satisfied: idna in /usr/local/lib/python3.10/dist-packages (from httpx->trimesh->nvidia-curobo==0.0.0) (3.4)
Collecting sniffio (from httpx->trimesh->nvidia-curobo==0.0.0)
Downloading sniffio-1.3.0-py3-none-any.whl (10 kB)
Collecting h11<0.15,>=0.13 (from httpcore==1.*->httpx->trimesh->nvidia-curobo==0.0.0)
Downloading h11-0.14.0-py3-none-any.whl (58 kB)
��������������������������������������� 58.3/58.3 kB 264.5 MB/s eta 0:00:00
Requirement already satisfied: attrs>=22.2.0 in /usr/local/lib/python3.10/dist-packages (from jsonschema->trimesh->nvidia-curobo==0.0.0) (23.1.0)
Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/local/lib/python3.10/dist-packages (from jsonschema->trimesh->nvidia-curobo==0.0.0) (2023.7.1)
Requirement already satisfied: referencing>=0.28.4 in /usr/local/lib/python3.10/dist-packages (from jsonschema->trimesh->nvidia-curobo==0.0.0) (0.30.2)
Requirement already satisfied: rpds-py>=0.7.1 in /usr/local/lib/python3.10/dist-packages (from jsonschema->trimesh->nvidia-curobo==0.0.0) (0.9.2)
Requirement already satisfied: python-dateutil>=2.2 in /usr/local/lib/python3.10/dist-packages (from pycollada->trimesh->nvidia-curobo==0.0.0) (2.8.2)
Downloading setuptools_scm-8.0.4-py3-none-any.whl (42 kB)
���������������������������������������� 42.1/42.1 kB 493.2 MB/s eta 0:00:00
Downloading warp_lang-0.10.1-py3-none-manylinux2014_x86_64.whl (52.6 MB)
���������������������������������������� 52.6/52.6 MB 48.2 MB/s eta 0:00:00
Downloading black-23.12.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB)
���������������������������������������� 1.7/1.7 MB 62.1 MB/s eta 0:00:00
Downloading flake8-6.1.0-py2.py3-none-any.whl (58 kB)
���������������������������������������� 58.3/58.3 kB 147.4 MB/s eta 0:00:00
Downloading flake8_isort-6.1.1-py3-none-any.whl (18 kB)
Downloading importlib_resources-6.1.1-py3-none-any.whl (33 kB)
Downloading numpy_quaternion-2023.0.2-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (195 kB)
���������������������������������������� 195.8/195.8 kB 79.6 MB/s eta 0:00:00
Downloading pytest_cov-4.1.0-py3-none-any.whl (21 kB)
Downloading usd_core-23.11-cp310-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (25.8 MB)
���������������������������������������� 25.8/25.8 MB 41.9 MB/s eta 0:00:00
Downloading isort-5.13.2-py3-none-any.whl (92 kB)
���������������������������������������� 92.3/92.3 kB 46.0 MB/s eta 0:00:00
Downloading pathspec-0.12.1-py3-none-any.whl (31 kB)
Downloading pycodestyle-2.11.1-py2.py3-none-any.whl (31 kB)
Downloading pyflakes-3.1.0-py2.py3-none-any.whl (62 kB)
���������������������������������������� 62.6/62.6 kB 207.6 MB/s eta 0:00:00
Downloading typeguard-4.1.5-py3-none-any.whl (34 kB)
Downloading colorlog-6.8.0-py3-none-any.whl (11 kB)
Downloading coverage-7.4.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (233 kB)
��������������������������������������� 233.2/233.2 kB 123.5 MB/s eta 0:00:00
Downloading embreex-2.17.7.post4-cp310-cp310-manylinux_2_28_x86_64.whl (17.0 MB)
���������������������������������������� 17.0/17.0 MB 40.2 MB/s eta 0:00:00
Downloading httpx-0.26.0-py3-none-any.whl (75 kB)
���������������������������������������� 75.9/75.9 kB 183.3 MB/s eta 0:00:00
Downloading httpcore-1.0.2-py3-none-any.whl (76 kB)
���������������������������������������� 76.9/76.9 kB 112.4 MB/s eta 0:00:00
Downloading Rtree-1.1.0-py3-none-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (488 kB)
���������������������������������������� 488.6/488.6 kB 73.6 MB/s eta 0:00:00
Downloading shapely-2.0.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.5 MB)
���������������������������������������� 2.5/2.5 MB 34.5 MB/s eta 0:00:00
Downloading xxhash-3.4.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (194 kB)
��������������������������������������� 194.1/194.1 kB 136.5 MB/s eta 0:00:00
Downloading anyio-4.2.0-py3-none-any.whl (85 kB)
���������������������������������������� 85.5/85.5 kB 239.5 MB/s eta 0:00:00
Building wheels for collected packages: nvidia-curobo
Building wheel for nvidia-curobo (pyproject.toml): started
Building wheel for nvidia-curobo (pyproject.toml): still running...
Building wheel for nvidia-curobo (pyproject.toml): finished with status 'error'
error: subprocess-exited-with-error

� Building wheel for nvidia-curobo (pyproject.toml) did not run successfully.
� exit code: 1
��> [703 lines of output]
No CUDA runtime is found, using CUDA_HOME='/usr/local/cuda'
/usr/local/lib/python3.10/dist-packages/setuptools/dist.py:745: SetuptoolsDeprecationWarning: Invalid dash-separated options
!!

********************************************************************************
Usage of dash-separated 'long-description-content-type' will not be supported in future
versions. Please use the underscore name 'long_description_content_type' instead.

This deprecation is overdue, please update your project and remove deprecated
calls to avoid build errors in the future.

See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
********************************************************************************

!!
opt = self.warn_dash_deprecation(opt, section)
/usr/local/lib/python3.10/dist-packages/setuptools/config/setupcfg.py:293: _DeprecatedConfig: Deprecated config in `setup.cfg`
!!

********************************************************************************
The license_file parameter is deprecated, use license_files instead.

This deprecation is overdue, please update your project and remove deprecated
calls to avoid build errors in the future.

See https://setuptools.pypa.io/en/latest/userguide/declarative_config.html for details.
********************************************************************************

!!
parsed = self.parsers.get(option_name, lambda x: x)(value)
*********************************
CuRobo: Compiling CUDA kernels...
This will take 20+ minutes, to speedup compilation set TORCH_CUDA_ARCH_LIST={X}+PTX to  compile only for a specific architecture. e.g., export TORCH_CUDA_ARCH_LIST=7.0+PTX
running bdist_wheel
running build
running build_py
creating build
creating build/lib.linux-x86_64-3.10
creating build/lib.linux-x86_64-3.10/curobo
copying src/curobo/__init__.py -> build/lib.linux-x86_64-3.10/curobo
copying src/curobo/util_file.py -> build/lib.linux-x86_64-3.10/curobo
creating build/lib.linux-x86_64-3.10/curobo/types
copying src/curobo/types/__init__.py -> build/lib.linux-x86_64-3.10/curobo/types
copying src/curobo/types/tensor.py -> build/lib.linux-x86_64-3.10/curobo/types
copying src/curobo/types/enum.py -> build/lib.linux-x86_64-3.10/curobo/types
copying src/curobo/types/camera.py -> build/lib.linux-x86_64-3.10/curobo/types
copying src/curobo/types/state.py -> build/lib.linux-x86_64-3.10/curobo/types
copying src/curobo/types/base.py -> build/lib.linux-x86_64-3.10/curobo/types
copying src/curobo/types/robot.py -> build/lib.linux-x86_64-3.10/curobo/types
copying src/curobo/types/math.py -> build/lib.linux-x86_64-3.10/curobo/types
creating build/lib.linux-x86_64-3.10/curobo/curobolib
copying src/curobo/curobolib/__init__.py -> build/lib.linux-x86_64-3.10/curobo/curobolib
copying src/curobo/curobolib/opt.py -> build/lib.linux-x86_64-3.10/curobo/curobolib
copying src/curobo/curobolib/tensor_step.py -> build/lib.linux-x86_64-3.10/curobo/curobolib
copying src/curobo/curobolib/kinematics.py -> build/lib.linux-x86_64-3.10/curobo/curobolib
copying src/curobo/curobolib/util_file.py -> build/lib.linux-x86_64-3.10/curobo/curobolib
copying src/curobo/curobolib/ls.py -> build/lib.linux-x86_64-3.10/curobo/curobolib
copying src/curobo/curobolib/geom.py -> build/lib.linux-x86_64-3.10/curobo/curobolib
creating build/lib.linux-x86_64-3.10/curobo/geom
copying src/curobo/geom/__init__.py -> build/lib.linux-x86_64-3.10/curobo/geom
copying src/curobo/geom/types.py -> build/lib.linux-x86_64-3.10/curobo/geom
copying src/curobo/geom/sphere_fit.py -> build/lib.linux-x86_64-3.10/curobo/geom
copying src/curobo/geom/transform.py -> build/lib.linux-x86_64-3.10/curobo/geom
package init file 'src/curobo/content/__init__.py' not found (or not a regular file)
creating build/lib.linux-x86_64-3.10/curobo/wrap
copying src/curobo/wrap/__init__.py -> build/lib.linux-x86_64-3.10/curobo/wrap
copying src/curobo/wrap/wrap_base.py -> build/lib.linux-x86_64-3.10/curobo/wrap
copying src/curobo/wrap/wrap_mpc.py -> build/lib.linux-x86_64-3.10/curobo/wrap
creating build/lib.linux-x86_64-3.10/curobo/graph
copying src/curobo/graph/__init__.py -> build/lib.linux-x86_64-3.10/curobo/graph
copying src/curobo/graph/graph_nx.py -> build/lib.linux-x86_64-3.10/curobo/graph
copying src/curobo/graph/prm.py -> build/lib.linux-x86_64-3.10/curobo/graph
copying src/curobo/graph/graph_base.py -> build/lib.linux-x86_64-3.10/curobo/graph
creating build/lib.linux-x86_64-3.10/curobo/opt
copying src/curobo/opt/__init__.py -> build/lib.linux-x86_64-3.10/curobo/opt
copying src/curobo/opt/opt_base.py -> build/lib.linux-x86_64-3.10/curobo/opt
creating build/lib.linux-x86_64-3.10/curobo/cuda_robot_model
copying src/curobo/cuda_robot_model/usd_kinematics_parser.py -> build/lib.linux-x86_64-3.10/curobo/cuda_robot_model
copying src/curobo/cuda_robot_model/__init__.py -> build/lib.linux-x86_64-3.10/curobo/cuda_robot_model
copying src/curobo/cuda_robot_model/types.py -> build/lib.linux-x86_64-3.10/curobo/cuda_robot_model
copying src/curobo/cuda_robot_model/cuda_robot_model.py -> build/lib.linux-x86_64-3.10/curobo/cuda_robot_model
copying src/curobo/cuda_robot_model/kinematics_parser.py -> build/lib.linux-x86_64-3.10/curobo/cuda_robot_model
copying src/curobo/cuda_robot_model/cuda_robot_generator.py -> build/lib.linux-x86_64-3.10/curobo/cuda_robot_model
copying src/curobo/cuda_robot_model/urdf_kinematics_parser.py -> build/lib.linux-x86_64-3.10/curobo/cuda_robot_model
creating build/lib.linux-x86_64-3.10/curobo/rollout
copying src/curobo/rollout/arm_base.py -> build/lib.linux-x86_64-3.10/curobo/rollout
copying src/curobo/rollout/__init__.py -> build/lib.linux-x86_64-3.10/curobo/rollout
copying src/curobo/rollout/rollout_base.py -> build/lib.linux-x86_64-3.10/curobo/rollout
copying src/curobo/rollout/arm_reacher.py -> build/lib.linux-x86_64-3.10/curobo/rollout
creating build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/logger.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/warp.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/__init__.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/torch_utils.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/error_metrics.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/tensor_util.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/trajectory.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/warp_interpolation.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/state_filter.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/usd_helper.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/sample_lib.py -> build/lib.linux-x86_64-3.10/curobo/util
copying src/curobo/util/helpers.py -> build/lib.linux-x86_64-3.10/curobo/util
package init file 'src/curobo/curobolib/cpp/__init__.py' not found (or not a regular file)
creating build/lib.linux-x86_64-3.10/curobo/geom/sdf
copying src/curobo/geom/sdf/warp_primitives.py -> build/lib.linux-x86_64-3.10/curobo/geom/sdf
copying src/curobo/geom/sdf/__init__.py -> build/lib.linux-x86_64-3.10/curobo/geom/sdf
copying src/curobo/geom/sdf/sdf_grid.py -> build/lib.linux-x86_64-3.10/curobo/geom/sdf
copying src/curobo/geom/sdf/world_mesh.py -> build/lib.linux-x86_64-3.10/curobo/geom/sdf
copying src/curobo/geom/sdf/world.py -> build/lib.linux-x86_64-3.10/curobo/geom/sdf
copying src/curobo/geom/sdf/world_blox.py -> build/lib.linux-x86_64-3.10/curobo/geom/sdf
copying src/curobo/geom/sdf/utils.py -> build/lib.linux-x86_64-3.10/curobo/geom/sdf
package init file 'src/curobo/content/assets/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/configs/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/scene/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/franka_description/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/jaco/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/ur_description/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/iiwa_allegro_description/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/arms/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/grippers/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/franka_description/meshes/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/franka_description/meshes/visual/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/franka_description/meshes/collision/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/tm_description/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/tm_description/urdf/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/tm_description/meshes/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/jaco/meshes/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/ur_description/meshes/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/ur_description/meshes/ur5e/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/ur_description/meshes/ur10e/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/ur_description/meshes/ur5e/visual/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/ur_description/meshes/ur5e/collision/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/ur_description/meshes/ur10e/visual/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/ur_description/meshes/ur10e/collision/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/iiwa_allegro_description/meshes/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/iiwa_allegro_description/meshes/mounts/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/assets/scene/nvblox/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/configs/task/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/configs/robot/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/configs/world/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/configs/robot/spheres/__init__.py' not found (or not a regular file)
package init file 'src/curobo/content/configs/robot/isaac_sim_description/__init__.py' not found (or not a regular file)
creating build/lib.linux-x86_64-3.10/curobo/wrap/reacher
copying src/curobo/wrap/reacher/__init__.py -> build/lib.linux-x86_64-3.10/curobo/wrap/reacher
copying src/curobo/wrap/reacher/evaluator.py -> build/lib.linux-x86_64-3.10/curobo/wrap/reacher
copying src/curobo/wrap/reacher/types.py -> build/lib.linux-x86_64-3.10/curobo/wrap/reacher
copying src/curobo/wrap/reacher/trajopt.py -> build/lib.linux-x86_64-3.10/curobo/wrap/reacher
copying src/curobo/wrap/reacher/mpc.py -> build/lib.linux-x86_64-3.10/curobo/wrap/reacher
copying src/curobo/wrap/reacher/ik_solver.py -> build/lib.linux-x86_64-3.10/curobo/wrap/reacher
copying src/curobo/wrap/reacher/motion_gen.py -> build/lib.linux-x86_64-3.10/curobo/wrap/reacher
creating build/lib.linux-x86_64-3.10/curobo/wrap/model
copying src/curobo/wrap/model/robot_world.py -> build/lib.linux-x86_64-3.10/curobo/wrap/model
copying src/curobo/wrap/model/__init__.py -> build/lib.linux-x86_64-3.10/curobo/wrap/model
copying src/curobo/wrap/model/curobo_robot_world.py -> build/lib.linux-x86_64-3.10/curobo/wrap/model
creating build/lib.linux-x86_64-3.10/curobo/opt/particle
copying src/curobo/opt/particle/__init__.py -> build/lib.linux-x86_64-3.10/curobo/opt/particle
copying src/curobo/opt/particle/parallel_es.py -> build/lib.linux-x86_64-3.10/curobo/opt/particle
copying src/curobo/opt/particle/parallel_mppi.py -> build/lib.linux-x86_64-3.10/curobo/opt/particle
copying src/curobo/opt/particle/particle_opt_base.py -> build/lib.linux-x86_64-3.10/curobo/opt/particle
copying src/curobo/opt/particle/particle_opt_utils.py -> build/lib.linux-x86_64-3.10/curobo/opt/particle
creating build/lib.linux-x86_64-3.10/curobo/opt/newton
copying src/curobo/opt/newton/newton_base.py -> build/lib.linux-x86_64-3.10/curobo/opt/newton
copying src/curobo/opt/newton/__init__.py -> build/lib.linux-x86_64-3.10/curobo/opt/newton
copying src/curobo/opt/newton/lbfgs.py -> build/lib.linux-x86_64-3.10/curobo/opt/newton
creating build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/self_collision_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/projected_dist_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/__init__.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/bound_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/straight_line_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/zero_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/cost_base.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/dist_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/manipulability_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/primitive_collision_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/pose_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
copying src/curobo/rollout/cost/stop_cost.py -> build/lib.linux-x86_64-3.10/curobo/rollout/cost
creating build/lib.linux-x86_64-3.10/curobo/rollout/dynamics_model
copying src/curobo/rollout/dynamics_model/__init__.py -> build/lib.linux-x86_64-3.10/curobo/rollout/dynamics_model
copying src/curobo/rollout/dynamics_model/kinematic_model.py -> build/lib.linux-x86_64-3.10/curobo/rollout/dynamics_model
copying src/curobo/rollout/dynamics_model/tensor_step.py -> build/lib.linux-x86_64-3.10/curobo/rollout/dynamics_model
copying src/curobo/rollout/dynamics_model/model_base.py -> build/lib.linux-x86_64-3.10/curobo/rollout/dynamics_model
copying src/curobo/rollout/dynamics_model/integration_utils.py -> build/lib.linux-x86_64-3.10/curobo/rollout/dynamics_model
running egg_info
creating src/nvidia_curobo.egg-info
writing src/nvidia_curobo.egg-info/PKG-INFO
writing dependency_links to src/nvidia_curobo.egg-info/dependency_links.txt
writing requirements to src/nvidia_curobo.egg-info/requires.txt
writing top-level names to src/nvidia_curobo.egg-info/top_level.txt
writing manifest file 'src/nvidia_curobo.egg-info/SOURCES.txt'
reading manifest file 'src/nvidia_curobo.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE'
writing manifest file 'src/nvidia_curobo.egg-info/SOURCES.txt'
copying src/curobo/py.typed -> build/lib.linux-x86_64-3.10/curobo
creating build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/geom_cuda.cpp -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/kinematics_fused_cuda.cpp -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/kinematics_fused_kernel.cu -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/lbfgs_step_cuda.cpp -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/lbfgs_step_kernel.cu -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/line_search_cuda.cpp -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/line_search_kernel.cu -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/pose_distance_kernel.cu -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/self_collision_kernel.cu -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/sphere_obb_kernel.cu -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/tensor_step_cuda.cpp -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/tensor_step_kernel.cu -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
copying src/curobo/curobolib/cpp/update_best_kernel.cu -> build/lib.linux-x86_64-3.10/curobo/curobolib/cpp
creating build/lib.linux-x86_64-3.10/curobo/content
creating build/lib.linux-x86_64-3.10/curobo/content/assets
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova
copying src/curobo/content/assets/robot/kinova/README.md -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova
copying src/curobo/content/assets/robot/kinova/kinova_gen3_7dof.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/franka_panda.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/franka_panda_mobile.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/franka_panda_mobile_base.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/franka_panda_mobile_x.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/franka_panda_mobile_xy.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/franka_panda_mobile_xy_tz.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/franka_panda_no_gripper.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/franka_test.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/moving_gripper.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/panda.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/panda_grasp_gripper.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
copying src/curobo/content/assets/robot/franka_description/panda_gripper.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco
copying src/curobo/content/assets/robot/jaco/jaco_7n.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco
copying src/curobo/content/assets/robot/jaco/jaco_7s.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description
copying src/curobo/content/assets/robot/ur_description/dual_ur10e.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description
copying src/curobo/content/assets/robot/ur_description/quad_ur10e.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description
copying src/curobo/content/assets/robot/ur_description/tri_ur10e.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description
copying src/curobo/content/assets/robot/ur_description/ur10e.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description
copying src/curobo/content/assets/robot/ur_description/ur5e.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description
copying src/curobo/content/assets/robot/iiwa_allegro_description/allegro.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description
copying src/curobo/content/assets/robot/iiwa_allegro_description/iiwa.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description
copying src/curobo/content/assets/robot/iiwa_allegro_description/iiwa_allegro.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/base_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/bracelet_no_vision_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/bracelet_with_vision_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/end_effector_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/forearm_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/half_arm_1_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/half_arm_2_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/shoulder_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/spherical_wrist_1_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
copying src/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes/spherical_wrist_2_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/arms/gen3/7dof/meshes
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/LICENSE -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/README.md -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual/robotiq_arg2f_85_base_link.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual/robotiq_arg2f_85_inner_finger.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual/robotiq_arg2f_85_inner_knuckle.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual/robotiq_arg2f_85_outer_finger.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual/robotiq_arg2f_85_outer_knuckle.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual/robotiq_arg2f_85_pad.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual/robotiq_gripper_coupling.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/visual
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision/robotiq_arg2f_85_base_link.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision/robotiq_arg2f_85_inner_finger.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision/robotiq_arg2f_85_inner_knuckle.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision/robotiq_arg2f_85_outer_finger.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision/robotiq_arg2f_85_outer_knuckle.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision
copying src/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision/robotiq_arg2f_base_link.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/kinova/kortex_description/grippers/robotiq_2f_85/meshes/collision
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/finger.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/finger.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/finger.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/graspnet_panda_mesh.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/hand.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/hand.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/hand.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/hand_ee_link.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/hand_gripper.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/hand_gripper.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link0.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link0.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link0.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link0.obj.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link1.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link1.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link1.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link1.obj.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link2.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link2.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link2.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link2.obj.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link3.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link3.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link3.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link3.obj.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link4.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link4.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link4.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link4.obj.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link5.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link5.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link5.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link5.obj.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link6.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link6.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link6.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link6.obj.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link7.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link7.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link7.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/link7.obj.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
copying src/curobo/content/assets/robot/franka_description/meshes/visual/train_gripper.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/visual
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/finger.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/finger.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/hand.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/hand.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/hand_flipped.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/hand_gripper.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/hand_gripper.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/hand_gripper_flipped.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link0.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link0.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link1.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link1.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link2.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link2.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link3.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link3.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link4.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link4.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link5.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link5.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link6.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link6.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link7.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
copying src/curobo/content/assets/robot/franka_description/meshes/collision/link7.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/franka_description/meshes/collision
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/urdf
copying src/curobo/content/assets/robot/techman/tm_description/urdf/tm12-nominal.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/urdf
copying src/curobo/content/assets/robot/techman/tm_description/urdf/tm12x-nominal.urdf -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/urdf
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tm12-arm1.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tm12-arm1.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tm12-arm1.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tm12-arm2.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tm12-arm2.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tm12-arm2.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tm12-base.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tm12-base.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tm12-base.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tmr_750w_01.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tmr_750w_01.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual/tmr_750w_01.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/visual
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision/tm12-arm1_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision/tm12-arm2_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision/tm12-base_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision/tmr_750w_01_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm12/collision
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tm5-900_arm1.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tm5-900_arm1.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tm5-900_arm1.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tm5-900_arm2.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tm5-900_arm2.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tm5-900_arm2.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tm5-base.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tm5-base.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tm5-base.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_100w_01.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_100w_01.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_100w_01.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_100w_02.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_100w_02.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_100w_02.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_400w_01.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_400w_01.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_400w_01.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_ee.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_ee.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_ee.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_iox.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_iox.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual/tmr_iox.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/visual
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision/tm5-900_arm1_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision/tm5-900_arm2_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision/tm5-base_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision/tmr_100w_01_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision/tmr_100w_02_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision/tmr_400w_01_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision/tmr_ee_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision
copying src/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision/tmr_iox_c.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/techman/tm_description/meshes/tm5-900/collision
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/arm.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/arm_half_1.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/arm_half_2.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/arm_mico.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/base.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/finger_distal.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/finger_proximal.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/forearm.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/forearm_mico.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/hand_2finger.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/hand_3finger.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/ring_big.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/ring_small.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/shoulder.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/wrist.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/wrist_spherical_1.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
copying src/curobo/content/assets/robot/jaco/meshes/wrist_spherical_2.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/jaco/meshes
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/visual/base.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/visual/forearm.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/visual/shoulder.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/visual/upperarm.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/visual/wrist1.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/visual/wrist2.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/visual/wrist3.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/visual
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/collision/base.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/collision/forearm.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/collision/shoulder.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/collision/upperarm.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/collision/wrist1.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/collision/wrist2.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur5e/collision/wrist3.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur5e/collision
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/visual/base.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/visual/forearm.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/visual/shoulder.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/visual/upperarm.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/visual/wrist1.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/visual/wrist2.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/visual
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/visual/wrist3.dae -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/visual
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/collision/base.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/collision/forearm.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/collision/shoulder.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/collision/upperarm.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/collision/wrist1.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/collision/wrist2.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/collision
copying src/curobo/content/assets/robot/ur_description/meshes/ur10e/collision/wrist3.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/ur_description/meshes/ur10e/collision
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/mounts
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/mounts/allegro_mount.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/mounts
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/mounts/allegro_mount.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/mounts
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac/biotac_sensor.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac/biotac_sensor.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac/biotac_sensor_thumb.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac/biotac_sensor_thumb.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/biotac
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/base_link.STL -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/base_link.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/primary_base.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/primary_base.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/primary_medial.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/primary_medial.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/primary_proximal.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/primary_proximal.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/thumb_base.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/thumb_base.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/thumb_medial.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/thumb_medial.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/thumb_proximal.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro/thumb_proximal.stl -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/allegro
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual/link_0.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual/link_1.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual/link_2.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual/link_3.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual/link_4.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual/link_5.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual/link_6.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual/link_7.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/visual
creating build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision/link_0.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision/link_1.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision/link_2.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision/link_3.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision/link_4.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision/link_5.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision/link_6.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision
copying src/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision/link_7.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/robot/iiwa_allegro_description/meshes/iiwa7/collision
creating build/lib.linux-x86_64-3.10/curobo/content/assets/scene
creating build/lib.linux-x86_64-3.10/curobo/content/assets/scene/nvblox
copying src/curobo/content/assets/scene/nvblox/srl_ur10_bins.mtl -> build/lib.linux-x86_64-3.10/curobo/content/assets/scene/nvblox
copying src/curobo/content/assets/scene/nvblox/srl_ur10_bins.nvblx -> build/lib.linux-x86_64-3.10/curobo/content/assets/scene/nvblox
copying src/curobo/content/assets/scene/nvblox/srl_ur10_bins.obj -> build/lib.linux-x86_64-3.10/curobo/content/assets/scene/nvblox
copying src/curobo/content/assets/scene/nvblox/srl_ur10_bins_color.png -> build/lib.linux-x86_64-3.10/curobo/content/assets/scene/nvblox
creating build/lib.linux-x86_64-3.10/curobo/content/configs
creating build/lib.linux-x86_64-3.10/curobo/content/configs/task
copying src/curobo/content/configs/task/base_cfg.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/task
copying src/curobo/content/configs/task/finetune_trajopt.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/task
copying src/curobo/content/configs/task/gradient_ik.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/task
copying src/curobo/content/configs/task/gradient_mpc.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/task
copying src/curobo/content/configs/task/gradient_trajopt.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/task
copying src/curobo/content/configs/task/graph.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/task
copying src/curobo/content/configs/task/particle_ik.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/task
copying src/curobo/content/configs/task/particle_mpc.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/task
copying src/curobo/content/configs/task/particle_trajopt.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/task
creating build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/dual_ur10e.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/franka.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/franka_mobile.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/iiwa.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/iiwa_allegro.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/jaco7.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/kinova_gen3.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/quad_ur10e.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/template.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/tm12.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/tri_ur10e.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/ur10e.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
copying src/curobo/content/configs/robot/ur5e.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot
creating build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_base.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_cage.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_cubby.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_floor_plan.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_handover.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_mesh_scene.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_nvblox.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_nvblox_online.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_nvblox_ur10.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_pillar_wall.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_primitives_3d.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_table.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_test.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_thin_walls.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
copying src/curobo/content/configs/world/collision_wall.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/world
creating build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/dual_ur10e.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/franka.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/franka_collision_mesh.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/franka_mesh.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/franka_mesh_inside.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/franka_mesh_mb.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/franka_real_robot.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/iiwa_allegro.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/kinova_gen3.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/quad_ur10e.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/single.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
copying src/curobo/content/configs/robot/spheres/ur10e.yml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/spheres
creating build/lib.linux-x86_64-3.10/curobo/content/configs/robot/isaac_sim_description
copying src/curobo/content/configs/robot/isaac_sim_description/jaco_7s.yaml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/isaac_sim_description
copying src/curobo/content/configs/robot/isaac_sim_description/tm12.yaml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/isaac_sim_description
copying src/curobo/content/configs/robot/isaac_sim_description/ur5e.yaml -> build/lib.linux-x86_64-3.10/curobo/content/configs/robot/isaac_sim_description
running build_ext
INFO: Disabling color, you really want to install colorlog.
Disabling color, you really want to install colorlog.
Emitting ninja build file /pkgs/curobo/build/temp.linux-x86_64-3.10/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
[1/2] c++ -MMD -MF /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/lbfgs_step_cuda.o.d -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.10/dist-packages/torch/include -I/usr/local/lib/python3.10/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.10/dist-packages/torch/include/TH -I/usr/local/lib/python3.10/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.10 -c -c /pkgs/curobo/src/curobo/curobolib/cpp/lbfgs_step_cuda.cpp -o /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/lbfgs_step_cuda.o -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1016"' -DTORCH_EXTENSION_NAME=lbfgs_step_cu -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17
[2/2] /usr/local/cuda/bin/nvcc  -I/usr/local/lib/python3.10/dist-packages/torch/include -I/usr/local/lib/python3.10/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.10/dist-packages/torch/include/TH -I/usr/local/lib/python3.10/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.10 -c -c /pkgs/curobo/src/curobo/curobolib/cpp/lbfgs_step_kernel.cu -o /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/lbfgs_step_kernel.o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options ''"'"'-fPIC'"'"'' --threads=8 -O3 --ftz=true --fmad=true --prec-div=false --prec-sqrt=false -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1016"' -DTORCH_EXTENSION_NAME=lbfgs_step_cu -D_GLIBCXX_USE_CXX11_ABI=1 -gencode=arch=compute_70,code=compute_70 -gencode=arch=compute_70,code=sm_70 -std=c++17
/pkgs/curobo/src/curobo/curobolib/cpp/lbfgs_step_kernel.cu(620): warning #1886-D: specified alignment (4) is different from alignment (8) specified on a previous declaration
extern __attribute__((shared)) __attribute__((aligned(sizeof(scalar_t)))) unsigned char my_smem[];
^
detected during instantiation of "void Curobo::Optimization::lbfgs_update_buffer_and_step<scalar_t,psum_t,rolled_ys>(scalar_t *, scalar_t *, scalar_t *, scalar_t *, scalar_t *, scalar_t *, scalar_t *, const scalar_t *, float, int, int, int, __nv_bool) [with scalar_t=float, psum_t=float, rolled_ys=false]" at line 808

Remark: The warnings can be suppressed with "-diag-suppress <warning-number>"

/pkgs/curobo/src/curobo/curobolib/cpp/lbfgs_step_kernel.cu(459): warning #1886-D: specified alignment (4) is different from alignment (8) specified on a previous declaration
extern __attribute__((shared)) __attribute__((aligned(sizeof(scalar_t)))) unsigned char my_smem[];
^
detected during instantiation of "void Curobo::Optimization::lbfgs_update_buffer_and_step_v1<scalar_t,psum_t,rolled_ys>(scalar_t *, scalar_t *, scalar_t *, scalar_t *, scalar_t *, scalar_t *, scalar_t *, const scalar_t *, float, int, int, int, __nv_bool) [with scalar_t=float, psum_t=float, rolled_ys=false]" at line 823

Emitting ninja build file /pkgs/curobo/build/temp.linux-x86_64-3.10/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
[1/2] c++ -MMD -MF /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/kinematics_fused_cuda.o.d -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.10/dist-packages/torch/include -I/usr/local/lib/python3.10/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.10/dist-packages/torch/include/TH -I/usr/local/lib/python3.10/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.10 -c -c /pkgs/curobo/src/curobo/curobolib/cpp/kinematics_fused_cuda.cpp -o /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/kinematics_fused_cuda.o -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1016"' -DTORCH_EXTENSION_NAME=kinematics_fused_cu -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17
[2/2] /usr/local/cuda/bin/nvcc  -I/usr/local/lib/python3.10/dist-packages/torch/include -I/usr/local/lib/python3.10/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.10/dist-packages/torch/include/TH -I/usr/local/lib/python3.10/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.10 -c -c /pkgs/curobo/src/curobo/curobolib/cpp/kinematics_fused_kernel.cu -o /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/kinematics_fused_kernel.o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options ''"'"'-fPIC'"'"'' --threads=8 -O3 --ftz=true --fmad=true --prec-div=false --prec-sqrt=false -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1016"' -DTORCH_EXTENSION_NAME=kinematics_fused_cu -D_GLIBCXX_USE_CXX11_ABI=1 -gencode=arch=compute_70,code=compute_70 -gencode=arch=compute_70,code=sm_70 -std=c++17
Emitting ninja build file /pkgs/curobo/build/temp.linux-x86_64-3.10/build.ninja...
Compiling objects...
Allowing ninja to set a default number of workers... (overridable by setting the environment variable MAX_JOBS=N)
[1/4] c++ -MMD -MF /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/geom_cuda.o.d -Wno-unused-result -Wsign-compare -DNDEBUG -g -fwrapv -O2 -Wall -g -fstack-protector-strong -Wformat -Werror=format-security -g -fwrapv -O2 -g -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -I/usr/local/lib/python3.10/dist-packages/torch/include -I/usr/local/lib/python3.10/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.10/dist-packages/torch/include/TH -I/usr/local/lib/python3.10/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.10 -c -c /pkgs/curobo/src/curobo/curobolib/cpp/geom_cuda.cpp -o /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/geom_cuda.o -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1016"' -DTORCH_EXTENSION_NAME=geom_cu -D_GLIBCXX_USE_CXX11_ABI=1 -std=c++17
[2/4] /usr/local/cuda/bin/nvcc  -I/usr/local/lib/python3.10/dist-packages/torch/include -I/usr/local/lib/python3.10/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.10/dist-packages/torch/include/TH -I/usr/local/lib/python3.10/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.10 -c -c /pkgs/curobo/src/curobo/curobolib/cpp/self_collision_kernel.cu -o /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/self_collision_kernel.o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options ''"'"'-fPIC'"'"'' --threads=8 -O3 --ftz=true --fmad=true --prec-div=false --prec-sqrt=false -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1016"' -DTORCH_EXTENSION_NAME=geom_cu -D_GLIBCXX_USE_CXX11_ABI=1 -gencode=arch=compute_70,code=compute_70 -gencode=arch=compute_70,code=sm_70 -std=c++17
FAILED: /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/self_collision_kernel.o
/usr/local/cuda/bin/nvcc  -I/usr/local/lib/python3.10/dist-packages/torch/include -I/usr/local/lib/python3.10/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.10/dist-packages/torch/include/TH -I/usr/local/lib/python3.10/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.10 -c -c /pkgs/curobo/src/curobo/curobolib/cpp/self_collision_kernel.cu -o /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/self_collision_kernel.o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options ''"'"'-fPIC'"'"'' --threads=8 -O3 --ftz=true --fmad=true --prec-div=false --prec-sqrt=false -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1016"' -DTORCH_EXTENSION_NAME=geom_cu -D_GLIBCXX_USE_CXX11_ABI=1 -gencode=arch=compute_70,code=compute_70 -gencode=arch=compute_70,code=sm_70 -std=c++17
/bin/bash: line 1:   516 Killed                  cicc --c++17 --gnu_version=110400 --display_error_number --orig_src_file_name "/pkgs/curobo/src/curobo/curobolib/cpp/self_collision_kernel.cu" --orig_src_path_name "/pkgs/curobo/src/curobo/curobolib/cpp/self_collision_kernel.cu" --allow_managed --relaxed_constexpr -arch compute_70 -m64 --no-version-ident -ftz=1 -prec_div=0 -prec_sqrt=0 -fmad=1 --include_file_name "tmpxft_00000164_00000000-3_self_collision_kernel.fatbin.c" -tused --module_id_file_name "/tmp/tmpxft_00000164_00000000-4_self_collision_kernel.module_id" --gen_c_file_name "/tmp/tmpxft_00000164_00000000-6_self_collision_kernel.cudafe1.c" --stub_file_name "/tmp/tmpxft_00000164_00000000-6_self_collision_kernel.cudafe1.stub.c" --gen_device_file_name "/tmp/tmpxft_00000164_00000000-6_self_collision_kernel.cudafe1.gpu" "/tmp/tmpxft_00000164_00000000-7_self_collision_kernel.cpp1.ii" -o "/tmp/tmpxft_00000164_00000000-6_self_collision_kernel.ptx" > /tmp/tmpxft_00000164_00000000-10_2553ea0_stdout 2> /tmp/tmpxft_00000164_00000000-10_2553ea0_stderr
[3/4] /usr/local/cuda/bin/nvcc  -I/usr/local/lib/python3.10/dist-packages/torch/include -I/usr/local/lib/python3.10/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.10/dist-packages/torch/include/TH -I/usr/local/lib/python3.10/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.10 -c -c /pkgs/curobo/src/curobo/curobolib/cpp/pose_distance_kernel.cu -o /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/pose_distance_kernel.o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options ''"'"'-fPIC'"'"'' --threads=8 -O3 --ftz=true --fmad=true --prec-div=false --prec-sqrt=false -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1016"' -DTORCH_EXTENSION_NAME=geom_cu -D_GLIBCXX_USE_CXX11_ABI=1 -gencode=arch=compute_70,code=compute_70 -gencode=arch=compute_70,code=sm_70 -std=c++17
[4/4] /usr/local/cuda/bin/nvcc  -I/usr/local/lib/python3.10/dist-packages/torch/include -I/usr/local/lib/python3.10/dist-packages/torch/include/torch/csrc/api/include -I/usr/local/lib/python3.10/dist-packages/torch/include/TH -I/usr/local/lib/python3.10/dist-packages/torch/include/THC -I/usr/local/cuda/include -I/usr/include/python3.10 -c -c /pkgs/curobo/src/curobo/curobolib/cpp/sphere_obb_kernel.cu -o /pkgs/curobo/build/temp.linux-x86_64-3.10/src/curobo/curobolib/cpp/sphere_obb_kernel.o -D__CUDA_NO_HALF_OPERATORS__ -D__CUDA_NO_HALF_CONVERSIONS__ -D__CUDA_NO_BFLOAT16_CONVERSIONS__ -D__CUDA_NO_HALF2_OPERATORS__ --expt-relaxed-constexpr --compiler-options ''"'"'-fPIC'"'"'' --threads=8 -O3 --ftz=true --fmad=true --prec-div=false --prec-sqrt=false -DTORCH_API_INCLUDE_EXTENSION_H '-DPYBIND11_COMPILER_TYPE="_gcc"' '-DPYBIND11_STDLIB="_libstdcpp"' '-DPYBIND11_BUILD_ABI="_cxxabi1016"' -DTORCH_EXTENSION_NAME=geom_cu -D_GLIBCXX_USE_CXX11_ABI=1 -gencode=arch=compute_70,code=compute_70 -gencode=arch=compute_70,code=sm_70 -std=c++17
/pkgs/curobo/src/curobo/curobolib/cpp/sphere_obb_kernel.cu(716): warning #177-D: variable "fl_sw_steps" was declared but never referenced
const float fl_sw_steps = sw_steps;
^
detected during instantiation of "void Curobo::Geometry::swept_sphere_obb_distance_jump_batch_env_kernel<scalar_t,enable_speed_metric>(const scalar_t *, scalar_t *, scalar_t *, uint8_t *, const scalar_t *, const scalar_t *, const scalar_t *, const scalar_t *, const scalar_t *, const scalar_t *, const uint8_t *, const int32_t *, const int32_t *, int, int, int, int, int, __nv_bool) [with scalar_t=double, enable_speed_metric=true]" at line 1423

Remark: The warnings can be suppressed with "-diag-suppress <warning-number>"

ninja: build stopped: subcommand failed.
Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/torch/utils/cpp_extension.py", line 1916, in _run_ninja_build
subprocess.run(
File "/usr/lib/python3.10/subprocess.py", line 526, in run
raise CalledProcessError(retcode, process.args,
subprocess.CalledProcessError: Command '['ninja', '-v']' returned non-zero exit status 1.

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
File "/usr/local/lib/python3.10/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
main()
File "/usr/local/lib/python3.10/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
json_out['return_val'] = hook(**hook_input['kwargs'])
File "/usr/local/lib/python3.10/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
return _build_backend().build_wheel(wheel_directory, config_settings,
File "/usr/local/lib/python3.10/dist-packages/setuptools/build_meta.py", line 416, in build_wheel
return self._build_with_temp_dir(['bdist_wheel'], '.whl',
File "/usr/local/lib/python3.10/dist-packages/setuptools/build_meta.py", line 401, in _build_with_temp_dir
self.run_setup()
File "/usr/local/lib/python3.10/dist-packages/setuptools/build_meta.py", line 338, in run_setup
exec(code, locals())
File "<string>", line 87, in <module>
File "/usr/local/lib/python3.10/dist-packages/setuptools/__init__.py", line 107, in setup
return distutils.core.setup(**attrs)
File "/usr/lib/python3.10/distutils/core.py", line 148, in setup
dist.run_commands()
File "/usr/lib/python3.10/distutils/dist.py", line 966, in run_commands
self.run_command(cmd)
File "/usr/local/lib/python3.10/dist-packages/setuptools/dist.py", line 1234, in run_command
super().run_command(command)
File "/usr/lib/python3.10/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/usr/local/lib/python3.10/dist-packages/wheel/bdist_wheel.py", line 349, in run
self.run_command("build")
File "/usr/lib/python3.10/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/local/lib/python3.10/dist-packages/setuptools/dist.py", line 1234, in run_command
super().run_command(command)
File "/usr/lib/python3.10/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/usr/lib/python3.10/distutils/command/build.py", line 135, in run
self.run_command(cmd_name)
File "/usr/lib/python3.10/distutils/cmd.py", line 313, in run_command
self.distribution.run_command(command)
File "/usr/local/lib/python3.10/dist-packages/setuptools/dist.py", line 1234, in run_command
super().run_command(command)
File "/usr/lib/python3.10/distutils/dist.py", line 985, in run_command
cmd_obj.run()
File "/usr/local/lib/python3.10/dist-packages/setuptools/command/build_ext.py", line 84, in run
_build_ext.run(self)
File "/usr/lib/python3.10/distutils/command/build_ext.py", line 340, in run
self.build_extensions()
File "/usr/local/lib/python3.10/dist-packages/torch/utils/cpp_extension.py", line 864, in build_extensions
build_ext.build_extensions(self)
File "/usr/lib/python3.10/distutils/command/build_ext.py", line 449, in build_extensions
self._build_extensions_serial()
File "/usr/lib/python3.10/distutils/command/build_ext.py", line 474, in _build_extensions_serial
self.build_extension(ext)
File "/usr/local/lib/python3.10/dist-packages/setuptools/command/build_ext.py", line 246, in build_extension
_build_ext.build_extension(self, ext)
File "/usr/local/lib/python3.10/dist-packages/Cython/Distutils/build_ext.py", line 127, in build_extension
super(build_ext, self).build_extension(ext)
File "/usr/lib/python3.10/distutils/command/build_ext.py", line 529, in build_extension
objects = self.compiler.compile(sources,
File "/usr/local/lib/python3.10/dist-packages/torch/utils/cpp_extension.py", line 677, in unix_wrap_ninja_compile
_write_ninja_file_and_compile_objects(
File "/usr/local/lib/python3.10/dist-packages/torch/utils/cpp_extension.py", line 1589, in _write_ninja_file_and_compile_objects
_run_ninja_build(
File "/usr/local/lib/python3.10/dist-packages/torch/utils/cpp_extension.py", line 1932, in _run_ninja_build
raise RuntimeError(message) from e
RuntimeError: Error compiling objects for extension
[end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for nvidia-curobo
Failed to build nvidia-curobo
ERROR: Could not build wheels for nvidia-curobo, which is required to install pyproject.toml-based projects

[notice] A new release of pip is available: 23.2.1 -> 23.3.2
[notice] To update, run: python -m pip install --upgrade pip

Thanks in advance!

Using MotionGen.plan_batch() crashes

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): isaac sim
  2. python version: 3.10.13
  3. Isaac Sim version (if using): 2023.1.0

Issue Details

Running MotionGen.plan_single(cu_js, ik_goal, plan_cfg) works fine; however, MotionGen.plan_batch(cu_js_batch, ik_goal_batch, plan_cfg) crashes, where cu_js_batch and ik_goal_batch are simply the stacked versions of cu_js and ik_goal (e.g.: Pose consists of (5,3)-shaped positions and (5,4)-shaped quaternions instead of (3,) and (4,), respectively). The parameters used for instantiating MotionGen and plan_cfg are identical in both cases.

Is there an example use case in IsaacSim that I can compared / debug against? There's batch_motion_gen_reacher.py but that utilizes multiple environments. I have a single environment and would just like to evaluate multiple goal poses in parallel for that single world.

Huge thanks!

Question about the MotionGen

Hello, thanks for your great work.
When I try to use the MotionGen, I get some errors:

WARNING: Logging before InitGoogleLogging() is written to STDERR
I1105 20:22:12.898658 31063 layer_cake_impl.h:32] Adding Layer with type: N6nvblox15VoxelBlockLayerINS_9TsdfVoxelEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
I1105 20:22:12.898676 31063 layer_cake_impl.h:32] Adding Layer with type: N6nvblox15VoxelBlockLayerINS_10ColorVoxelEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
I1105 20:22:12.898679 31063 layer_cake_impl.h:32] Adding Layer with type: N6nvblox15VoxelBlockLayerINS_14OccupancyVoxelEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
I1105 20:22:12.898682 31063 layer_cake_impl.h:32] Adding Layer with type: N6nvblox15VoxelBlockLayerINS_9EsdfVoxelEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
I1105 20:22:12.898684 31063 layer_cake_impl.h:32] Adding Layer with type: N6nvblox10BlockLayerINS_9MeshBlockEEE, voxel_size: 0.03, and memory_type: kDevice to LayerCake.
[1]    31063 segmentation fault (core dumped)

The code is as following:

from curobo.types.base import TensorDeviceType
from curobo.geom.sdf.world import CollisionCheckerType
from curobo.wrap.reacher.motion_gen import MotionGen, MotionGenConfig

def main():

    robot_config = "franka.yml"
    tensor_args = TensorDeviceType()
    interpolation_dt = 0.001
    world_model = {
        "blox": {
            "world": {
                "pose": [0, 0, 0, 1, 0, 0, 0],
                "integrator_type": "occupancy",
                "voxel_size": 0.03,
            }   
        },
    }
    motion_gen_cfg = MotionGenConfig.load_from_robot_config(
        robot_config,
        world_model,
        tensor_args,
        collision_checker_type=CollisionCheckerType.BLOX,
        interpolation_dt=interpolation_dt,
        collision_activation_distance=0.4,
    )
    motion_gen = MotionGen(motion_gen_cfg)
    motion_gen.warmup(warmup_js_trajopt=False)

if __name__ == "__main__":
    main()

I try to get a full traceback, the problem lies in L501

motion_gen_reacher.py return with "Opt Fail"

  1. cuRobo installation mode: isaac sim
  2. python version: 3.10
  3. Isaac Sim version (if using): 2022.2.1

I tried motion_gen_reacher.py omni_python examples/isaac_sim/motion_gen_reacher.py --robot /path/to/kinova_gen3.yml --visualize_spheres

            result = motion_gen.plan_single(cu_js.unsqueeze(0), ik_goal, plan_config)
            
            succ = result.success.item()
            print(result.status, result.success.item())

and always got "Opt Fail" by print(result.status, result.success.item())

I don't know how to solve this error,

Issue Details

Thanks

warning in isaac sim 2023

2023-12-11 23-46-44 的屏幕截图
when I run curobo with isaac sim 2023, I do not know what the warning meanings, does this meaning curobo is not correctly installed, and what is the jit ?
my env is
python 3.10 in conda, cuda version is 11.7.1, pytorch version is 2.0.1

the warning is :
2023-12-11 15:40:41 [9,417ms] [Warning] [curobo] geom_cu binary not found, jit compiling...
2023-12-11 15:40:41 [9,784ms] [Warning] [curobo] kinematics_fused_cu not found, JIT compiling...
2023-12-11 15:40:41 [9,801ms] [Warning] [curobo] torchtyping could not be imported, falling back to basic types
2023-12-11 15:40:42 [10,227ms] [Warning] [curobo] tensor_step_cu not found, jit compiling...
2023-12-11 15:40:42 [10,469ms] [Warning] [curobo] lbfgs_step_cu not found, JIT compiling...
2023-12-11 15:40:42 [10,476ms] [Warning] [curobo] line_search_cu not found, JIT compiling...

and I also what to know what is the usage of those files, geom_cu binary, kinematics_fused_cu, and where should they be, thank you!

plan_config's clone() function will let plan_single to crush and leaving no error trace or clue

It took me entire day to finally find out it was the clone() function of motion_gen.plan_single that caused the entire script to shut done completely without returning any backtrace or error message. This left me clueless for most of day and wanted to give up several times..... But luckily I found it

The same error can be reproduced in shipped script examples/isaac_sim/motion_gen_reacher.py by simplely changing

result = motion_gen.plan_single(cu_js.unsqueeze(0), ik_goal, plan_config) ->
result = motion_gen.plan_single(cu_js.unsqueeze(0), ik_goal, plan_config.clone())

I have also tested this for plan_batch_env, it seems like for plan_batch_env, either self.plan_config or self.plan_config.clone() is fine.

CUDA graph Error after adding spheres

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): docker isaac sim
  2. python version: 3.7
  3. Isaac Sim version (if using): 2022.1.0

Issue Details

Hi guys, I'm using MotionGeneration's plan_single function. When I try to add some spheres, some spheres will cause CUDA Error. I want to know how to avoid this error?

Specifically, I encountered errors in the following two scenarios:

  1. There is a protruding camera on the head of my robotic arm, and I specially set up several sphere balls for it.
  2. I used attach_spheres_to_robot() to add a cube sphere.
    It seems the error will occur when spheres not fit the robot well?
Traceback (most recent call last):
  File "src/planner.py", line 241, in plan
    result = self.motion_gen.plan_single(joint_state.unsqueeze(0), ik_goal, self.plan_config)
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/wrap/reacher/motion_gen.py", line 1229, in plan_single
    link_poses=link_poses,
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/wrap/reacher/motion_gen.py", line 1048, in _plan_attempts
    link_poses,
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/wrap/reacher/motion_gen.py", line 1529, in _plan_from_solve_state
    return_all_solutions=plan_config.parallel_finetune,
  File "/isaac-sim/kit/python/lib/python3.7/contextlib.py", line 74, in inner
    return func(*args, **kwds)
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/wrap/reacher/motion_gen.py", line 920, in _solve_trajopt_from_solve_state
    newton_iters=newton_iters,
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/wrap/reacher/trajopt.py", line 498, in solve_any
    newton_iters=newton_iters,
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/wrap/reacher/trajopt.py", line 620, in solve_single
    newton_iters=newton_iters,
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/wrap/reacher/trajopt.py", line 579, in solve_from_solve_state
    result = self.solver.solve(goal_buffer, seed_traj)
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/wrap/wrap_base.py", line 141, in solve
    act_seq = self.optimize(seed, shift_steps=0)
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/wrap/wrap_base.py", line 71, in optimize
    act_seq = opt.optimize(act_seq, shift_steps)
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/opt/opt_base.py", line 96, in optimize
    out = self._optimize(opt_tensor, shift_steps, n_iters)
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/opt/newton/newton_base.py", line 144, in _optimize
    best_q, best_cost, q, grad_q = self._call_opt_iters_graph(q, grad_q)
  File "/isaac-sim/kit/python/lib/python3.7/site-packages/curobo/opt/newton/newton_base.py", line 513, in _call_opt_iters_graph
    self.cu_opt_graph.replay()
  File "/isaac-sim/extscache/omni.pip.torch-1_13_1-0.1.4+104.2.lx64/torch-1-13-1/torch/cuda/graphs.py", line 87, in replay
    super(CUDAGraph, self).replay()
RuntimeError: false INTERNAL ASSERT FAILED at "../c10/cuda/CUDAGraphsC10Utils.h":73, please report a bug to PyTorch. Unknown CUDA graph CaptureStatus32558

cannot run issac sim example

Hi, thank you for the package. The standalone example works well. But the issac sim examples fail to run on 2023 version. Can you support issac sim 2023?

Invalid requirements: '.[dev,' when running build_docker.sh for isaac_sim_2022.2.1

Installation

Docker Isaac Sim

Python version

[Did not change the default provided by isaac_sim.dockerfile]

Isaac Sim Version

2022.2.1


Issue Details

From /docker/, I ran the command bash build_docker.sh isaac_sim_2022.2.1. Here is the terminal output

Building Isaac Sim docker
isaac_sim.dockerfile
[+] Building 1.4s (23/35)                                       docker:default
 => [internal] load .dockerignore                                         0.0s
 => => transferring context: 60B                                          0.0s
 => [internal] load build definition from isaac_sim.dockerfile            0.0s
 => => transferring dockerfile: 8.50kB                                    0.0s
 => [internal] load metadata for [nvcr.io/nvidia/cudagl:11.4.2-devel-ubun](http://nvcr.io/nvidia/cudagl:11.4.2-devel-ubun)  0.5s
 => [internal] load metadata for [nvcr.io/nvidia/isaac-sim:2022.2.1](http://nvcr.io/nvidia/isaac-sim:2022.2.1)        0.5s
 => [auth] nvidia/cudagl:pull,push token for [nvcr.io](http://nvcr.io/)                      0.0s
 => [auth] nvidia/isaac-sim:pull,push token for [nvcr.io](http://nvcr.io/)                   0.0s
 => [stage-1  1/28] FROM [nvcr.io/nvidia/cudagl:11.4.2-devel-ubuntu20.04@](http://nvcr.io/nvidia/cudagl:11.4.2-devel-ubuntu20.04@)  0.0s
 => [isaac-sim 1/1] FROM [nvcr.io/nvidia/isaac-sim:2022.2.1@sha256:48ccef](http://nvcr.io/nvidia/isaac-sim:2022.2.1@sha256:48ccef)  0.0s
 => CACHED [stage-1  2/28] RUN echo 'debconf debconf/frontend select Non  0.0s
 => CACHED [stage-1  3/28] RUN apt-get update && apt-get install -y   tz  0.0s
 => CACHED [stage-1  4/28] RUN apt-get update && apt-get install -y --no  0.0s
 => CACHED [stage-1  5/28] RUN wget -q --show-progress     --progress=ba  0.0s
 => CACHED [stage-1  6/28] COPY --from=isaac-sim /isaac-sim /isaac-sim    0.0s
 => CACHED [stage-1  7/28] RUN mkdir -p /root/.nvidia-omniverse/config    0.0s
 => CACHED [stage-1  8/28] COPY --from=isaac-sim /root/.nvidia-omniverse  0.0s
 => CACHED [stage-1  9/28] COPY --from=isaac-sim /etc/vulkan/icd.d/nvidi  0.0s
 => CACHED [stage-1 10/28] COPY --from=isaac-sim /etc/vulkan/icd.d/nvidi  0.0s
 => CACHED [stage-1 11/28] WORKDIR /isaac-sim                             0.0s
 => CACHED [stage-1 12/28] RUN echo "alias omni_python='/isaac-sim/pytho  0.0s
 => CACHED [stage-1 13/28] RUN /isaac-sim/python.sh -m pip install "robo  0.0s
 => CACHED [stage-1 14/28] RUN mkdir /pkgs && cd /pkgs && git clone http  0.0s
 => CACHED [stage-1 15/28] RUN /isaac-sim/python.sh -m pip install ninja  0.0s
 => ERROR [stage-1 16/28] RUN cd /pkgs/curobo && /isaac-sim/python.sh -m  0.8s
------
 > [stage-1 16/28] RUN cd /pkgs/curobo && /isaac-sim/python.sh -m pip install .[dev, isaac_sim] --no-build-isolation:
0.765 ERROR: Invalid requirement: '.[dev,'
0.769 WARNING: You are using pip version 21.2.1+nv1; however, version 23.3.1 is available.
0.769 You should consider upgrading via the '/isaac-sim/kit/python/bin/python3 -m pip install --upgrade pip' command.
0.831 There was an error running python
------
isaac_sim.dockerfile:174
--------------------
 172 |
 173 |
 174 | >>> RUN cd /pkgs/curobo && $omni_python -m pip install .[dev, isaac_sim] --no-build-isolation
 175 |
 176 |     # Optionally install nvblox:
--------------------
ERROR: failed to solve: process "/bin/sh -c cd /pkgs/curobo && $omni_python -m pip install .[dev, isaac_sim] --no-build-isolation" did not complete successfully: exit code: 1

As you can see it's failing on this line of isaac_sim.dockerfile.

nvrtc: error: invalid value for --gpu-architecture (-arch)

If it’s not a bug, please use discussions: https://github.com/NVlabs/curobo/discussions

Please provide the below information in addition to your issue:

  1. cuRobo installation mode (choose from [python, isaac sim, docker python, docker isaac sim]): python
  2. python version: 3.8.10
  3. Isaac Sim version (if using): N/A
  4. Ubuntu version: 20.04
  5. GPU: NVIDIA GeForce RTX 4090
  6. Driver Version: 525.125.06
  7. CUDA version: 11.7

Hello Balakumar @balakumar-s ,

Thanks for your contributions to this library. I am getting an error when trying to install cuRobo (Python version without Isaac Sim). Following is the installation details. Only a few example can be executed normally, and the pytest cannot pass normally.

My setup is

conda create -n curobo-env python=3.8.10
conda activate curobo-env
conda install pytorch==1.13.0 torchvision==0.14.0 torchaudio==0.13.0 pytorch-cuda=11.7 -c pytorch -c nvidia
conda install pip
mkdir -p /home/pren/Space/GitHub-Codes/curobo_ws/curobo
cd /home/pren/Space/GitHub-Codes/curobo_ws/curobo
git clone https://github.com/NVlabs/curobo.git
cd curobo
git lfs pull
pip install -e . --no-build-isolation
python examples/collision_check_example.py  # Passed
python examples/ik_example.py  # Error

pip install pluggy
python3 -m pytest .  # 2 skipped, 5 warnings, 2 errors

Issue Details

(base) ➜  ~ conda create -n curobo-env python=3.8.10
Collecting package metadata (current_repodata.json): done
Solving environment: unsuccessful attempt using repodata from current_repodata.json, retrying with next repodata source.
Collecting package metadata (repodata.json): done
Solving environment: done


==> WARNING: A newer version of conda exists. <==
  current version: 23.7.4
  latest version: 23.11.0

Please update conda by running

    $ conda update -n base -c defaults conda

Or to minimize the number of packages updated during conda update use

     conda install conda=23.11.0



## Package Plan ##

  environment location: /home/pren/anaconda3/envs/curobo-env

  added / updated specs:
    - python=3.8.10


The following NEW packages will be INSTALLED:

  _libgcc_mutex      pkgs/main/linux-64::_libgcc_mutex-0.1-main 
  _openmp_mutex      pkgs/main/linux-64::_openmp_mutex-5.1-1_gnu 
  ca-certificates    pkgs/main/linux-64::ca-certificates-2023.12.12-h06a4308_0 
  ld_impl_linux-64   pkgs/main/linux-64::ld_impl_linux-64-2.38-h1181459_1 
  libffi             pkgs/main/linux-64::libffi-3.3-he6710b0_2 
  libgcc-ng          pkgs/main/linux-64::libgcc-ng-11.2.0-h1234567_1 
  libgomp            pkgs/main/linux-64::libgomp-11.2.0-h1234567_1 
  libstdcxx-ng       pkgs/main/linux-64::libstdcxx-ng-11.2.0-h1234567_1 
  ncurses            pkgs/main/linux-64::ncurses-6.4-h6a678d5_0 
  openssl            pkgs/main/linux-64::openssl-1.1.1w-h7f8727e_0 
  pip                pkgs/main/linux-64::pip-23.3.1-py38h06a4308_0 
  python             pkgs/main/linux-64::python-3.8.10-h12debd9_8 
  readline           pkgs/main/linux-64::readline-8.2-h5eee18b_0 
  setuptools         pkgs/main/linux-64::setuptools-68.2.2-py38h06a4308_0 
  sqlite             pkgs/main/linux-64::sqlite-3.41.2-h5eee18b_0 
  tk                 pkgs/main/linux-64::tk-8.6.12-h1ccaba5_0 
  wheel              pkgs/main/linux-64::wheel-0.41.2-py38h06a4308_0 
  xz                 pkgs/main/linux-64::xz-5.4.5-h5eee18b_0 
  zlib               pkgs/main/linux-64::zlib-1.2.13-h5eee18b_0 


Proceed ([y]/n)? Y


Downloading and Extracting Packages

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
#
# To activate this environment, use
#
#     $ conda activate curobo-env
#
# To deactivate an active environment, use
#
#     $ conda deactivate

(base) ➜  ~ conda activate curobo-env
(curobo-env) ➜  ~ conda install pytorch==1.13.0 torchvision==0.14.0 torchaudio==0.13.0 pytorch-cuda=11.7 -c pytorch -c nvidia
Collecting package metadata (current_repodata.json): done
Solving environment: unsuccessful initial attempt using frozen solve. Retrying with flexible solve.
Collecting package metadata (repodata.json): done
Solving environment: done


==> WARNING: A newer version of conda exists. <==
  current version: 23.7.4
  latest version: 23.11.0

Please update conda by running

    $ conda update -n base -c defaults conda

Or to minimize the number of packages updated during conda update use

     conda install conda=23.11.0



## Package Plan ##

  environment location: /home/pren/anaconda3/envs/curobo-env

  added / updated specs:
    - pytorch-cuda=11.7
    - pytorch==1.13.0
    - torchaudio==0.13.0
    - torchvision==0.14.0


The following NEW packages will be INSTALLED:

  blas               pkgs/main/linux-64::blas-1.0-mkl 
  brotli-python      pkgs/main/linux-64::brotli-python-1.0.9-py38h6a678d5_7 
  bzip2              pkgs/main/linux-64::bzip2-1.0.8-h7b6447c_0 
  certifi            pkgs/main/linux-64::certifi-2023.11.17-py38h06a4308_0 
  cffi               pkgs/main/linux-64::cffi-1.15.1-py38h74dc2b5_0 
  charset-normalizer pkgs/main/noarch::charset-normalizer-2.0.4-pyhd3eb1b0_0 
  cryptography       pkgs/main/linux-64::cryptography-41.0.3-py38h130f0dd_0 
  cuda-cudart        nvidia/linux-64::cuda-cudart-11.7.99-0 
  cuda-cupti         nvidia/linux-64::cuda-cupti-11.7.101-0 
  cuda-libraries     nvidia/linux-64::cuda-libraries-11.7.1-0 
  cuda-nvrtc         nvidia/linux-64::cuda-nvrtc-11.7.99-0 
  cuda-nvtx          nvidia/linux-64::cuda-nvtx-11.7.91-0 
  cuda-runtime       nvidia/linux-64::cuda-runtime-11.7.1-0 
  ffmpeg             pytorch/linux-64::ffmpeg-4.3-hf484d3e_0 
  freetype           pkgs/main/linux-64::freetype-2.12.1-h4a9f257_0 
  giflib             pkgs/main/linux-64::giflib-5.2.1-h5eee18b_3 
  gmp                pkgs/main/linux-64::gmp-6.2.1-h295c915_3 
  gnutls             pkgs/main/linux-64::gnutls-3.6.15-he1e5248_0 
  idna               pkgs/main/linux-64::idna-3.4-py38h06a4308_0 
  intel-openmp       pkgs/main/linux-64::intel-openmp-2021.4.0-h06a4308_3561 
  jpeg               pkgs/main/linux-64::jpeg-9e-h5eee18b_1 
  lame               pkgs/main/linux-64::lame-3.100-h7b6447c_0 
  lcms2              pkgs/main/linux-64::lcms2-2.12-h3be6417_0 
  lerc               pkgs/main/linux-64::lerc-3.0-h295c915_0 
  libcublas          nvidia/linux-64::libcublas-11.10.3.66-0 
  libcufft           nvidia/linux-64::libcufft-10.7.2.124-h4fbf590_0 
  libcufile          nvidia/linux-64::libcufile-1.8.1.2-0 
  libcurand          nvidia/linux-64::libcurand-10.3.4.101-0 
  libcusolver        nvidia/linux-64::libcusolver-11.4.0.1-0 
  libcusparse        nvidia/linux-64::libcusparse-11.7.4.91-0 
  libdeflate         pkgs/main/linux-64::libdeflate-1.17-h5eee18b_1 
  libiconv           pkgs/main/linux-64::libiconv-1.16-h7f8727e_2 
  libidn2            pkgs/main/linux-64::libidn2-2.3.4-h5eee18b_0 
  libnpp             nvidia/linux-64::libnpp-11.7.4.75-0 
  libnvjpeg          nvidia/linux-64::libnvjpeg-11.8.0.2-0 
  libpng             pkgs/main/linux-64::libpng-1.6.39-h5eee18b_0 
  libtasn1           pkgs/main/linux-64::libtasn1-4.19.0-h5eee18b_0 
  libtiff            pkgs/main/linux-64::libtiff-4.5.1-h6a678d5_0 
  libunistring       pkgs/main/linux-64::libunistring-0.9.10-h27cfd23_0 
  libwebp            pkgs/main/linux-64::libwebp-1.3.2-h11a3e52_0 
  libwebp-base       pkgs/main/linux-64::libwebp-base-1.3.2-h5eee18b_0 
  lz4-c              pkgs/main/linux-64::lz4-c-1.9.4-h6a678d5_0 
  mkl                pkgs/main/linux-64::mkl-2021.4.0-h06a4308_640 
  mkl-service        pkgs/main/linux-64::mkl-service-2.4.0-py38h7f8727e_0 
  mkl_fft            pkgs/main/linux-64::mkl_fft-1.3.1-py38hd3c417c_0 
  mkl_random         pkgs/main/linux-64::mkl_random-1.2.2-py38h51133e4_0 
  nettle             pkgs/main/linux-64::nettle-3.7.3-hbbd107a_1 
  numpy              pkgs/main/linux-64::numpy-1.24.3-py38h14f4228_0 
  numpy-base         pkgs/main/linux-64::numpy-base-1.24.3-py38h31eccc5_0 
  openh264           pkgs/main/linux-64::openh264-2.1.1-h4ff587b_0 
  openjpeg           pkgs/main/linux-64::openjpeg-2.4.0-h3ad879b_0 
  pillow             pkgs/main/linux-64::pillow-10.0.1-py38ha6cbd5a_0 
  pycparser          pkgs/main/noarch::pycparser-2.21-pyhd3eb1b0_0 
  pyopenssl          pkgs/main/linux-64::pyopenssl-23.2.0-py38h06a4308_0 
  pysocks            pkgs/main/linux-64::pysocks-1.7.1-py38h06a4308_0 
  pytorch            pytorch/linux-64::pytorch-1.13.0-py3.8_cuda11.7_cudnn8.5.0_0 
  pytorch-cuda       pytorch/linux-64::pytorch-cuda-11.7-h778d358_5 
  pytorch-mutex      pytorch/noarch::pytorch-mutex-1.0-cuda 
  requests           pkgs/main/linux-64::requests-2.31.0-py38h06a4308_0 
  six                pkgs/main/noarch::six-1.16.0-pyhd3eb1b0_1 
  torchaudio         pytorch/linux-64::torchaudio-0.13.0-py38_cu117 
  torchvision        pytorch/linux-64::torchvision-0.14.0-py38_cu117 
  typing_extensions  pkgs/main/linux-64::typing_extensions-4.7.1-py38h06a4308_0 
  urllib3            pkgs/main/linux-64::urllib3-1.26.18-py38h06a4308_0 
  zstd               pkgs/main/linux-64::zstd-1.5.5-hc292b87_0 


Proceed ([y]/n)? Y


Downloading and Extracting Packages

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
(curobo-env) ➜  ~ conda install pip
Collecting package metadata (current_repodata.json): done
Solving environment: done


==> WARNING: A newer version of conda exists. <==
  current version: 23.7.4
  latest version: 23.11.0

Please update conda by running

    $ conda update -n base -c defaults conda

Or to minimize the number of packages updated during conda update use

     conda install conda=23.11.0



# All requested packages already installed.

(curobo-env) ➜  ~ mkdir -p /home/pren/Space/GitHub-Codes/curobo_ws/curobo
(curobo-env) ➜  ~ cd /home/pren/Space/GitHub-Codes/curobo_ws/curobo
(curobo-env) ➜  curobo git clone https://github.com/NVlabs/curobo.git
Cloning into 'curobo'...
remote: Enumerating objects: 854, done.
remote: Counting objects: 100% (74/74), done.
remote: Compressing objects: 100% (37/37), done.
remote: Total 854 (delta 52), reused 43 (delta 36), pack-reused 780
Receiving objects: 100% (854/854), 2.68 MiB | 156.00 KiB/s, done.
Resolving deltas: 100% (316/316), done.
Filtering content: 100% (214/214), 238.55 MiB | 1.11 MiB/s, done.
(curobo-env) ➜  curobo cd curobo
(curobo-env) ➜  curobo git:(main) git lfs pull
(curobo-env) ➜  curobo git:(main) pip install -e . --no-build-isolation
Looking in indexes: https://mirrors.bfsu.edu.cn/pypi/web/simple/
Obtaining file:///home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo
  Checking if build backend supports build_editable ... done
  Preparing editable metadata (pyproject.toml) ... done
Requirement already satisfied: networkx in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (3.1)
Requirement already satisfied: numpy in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (1.22.0)
Requirement already satisfied: numpy-quaternion in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (2022.4.3)
Requirement already satisfied: pyyaml in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (6.0.1)
Requirement already satisfied: setuptools-scm>=6.2 in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (8.0.4)
Requirement already satisfied: torchtyping in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (0.1.4)
Requirement already satisfied: torch>=1.10 in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (1.12.1+cu113)
Requirement already satisfied: trimesh in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (3.15.5)
Requirement already satisfied: yourdfpy>=0.0.53 in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (0.0.53)
Requirement already satisfied: warp-lang>=0.9.0 in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (0.10.1)
Requirement already satisfied: scipy>=1.7.0 in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (1.10.1)
Requirement already satisfied: tqdm in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (4.66.1)
Requirement already satisfied: wheel in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (0.41.2)
Requirement already satisfied: importlib-resources in /home/pren/.local/lib/python3.8/site-packages (from nvidia-curobo==0.6.2.post1.dev3) (6.1.0)
Requirement already satisfied: packaging>=20 in /home/pren/.local/lib/python3.8/site-packages (from setuptools-scm>=6.2->nvidia-curobo==0.6.2.post1.dev3) (23.2)
Requirement already satisfied: setuptools in /home/pren/.local/lib/python3.8/site-packages (from setuptools-scm>=6.2->nvidia-curobo==0.6.2.post1.dev3) (65.7.0)
Requirement already satisfied: typing-extensions in /home/pren/.local/lib/python3.8/site-packages (from setuptools-scm>=6.2->nvidia-curobo==0.6.2.post1.dev3) (4.8.0)
Requirement already satisfied: tomli>=1 in /home/pren/.local/lib/python3.8/site-packages (from setuptools-scm>=6.2->nvidia-curobo==0.6.2.post1.dev3) (2.0.1)
Collecting lxml (from yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3)
  Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/c3/4c/556867cb2193b323728678f239ce24463ae71b8636aba7d6e55a72e3650e/lxml-4.9.4-cp38-cp38-manylinux_2_28_x86_64.whl (8.0 MB)
Requirement already satisfied: six in /home/pren/anaconda3/envs/curobo-env/lib/python3.8/site-packages (from yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (1.16.0)
Requirement already satisfied: zipp>=3.1.0 in /home/pren/.local/lib/python3.8/site-packages (from importlib-resources->nvidia-curobo==0.6.2.post1.dev3) (3.17.0)
Requirement already satisfied: typeguard>=2.11.1 in /home/pren/.local/lib/python3.8/site-packages (from torchtyping->nvidia-curobo==0.6.2.post1.dev3) (4.1.5)
Requirement already satisfied: pillow in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (10.1.0)
Requirement already satisfied: requests in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (2.31.0)
Collecting chardet (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3)
  Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/38/6f/f5fbc992a329ee4e0f288c1fe0e2ad9485ed064cac731ed2fe47dcc38cbf/chardet-5.2.0-py3-none-any.whl (199 kB)
Requirement already satisfied: msgpack in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (1.0.7)
Requirement already satisfied: xxhash in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (3.4.1)
Requirement already satisfied: shapely in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (2.0.2)
Requirement already satisfied: sympy in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (1.12)
Requirement already satisfied: jsonschema in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (4.19.1)
Requirement already satisfied: mapbox-earcut in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (1.0.1)
Requirement already satisfied: pyglet in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (1.5.27)
Requirement already satisfied: rtree in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (1.1.0)
Requirement already satisfied: pycollada in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (0.7.2)
Requirement already satisfied: colorlog in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (6.7.0)
Requirement already satisfied: svg.path in /home/pren/.local/lib/python3.8/site-packages (from trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (6.3)
Requirement already satisfied: importlib-metadata>=3.6 in /home/pren/.local/lib/python3.8/site-packages (from typeguard>=2.11.1->torchtyping->nvidia-curobo==0.6.2.post1.dev3) (6.8.0)
Requirement already satisfied: attrs>=22.2.0 in /home/pren/.local/lib/python3.8/site-packages (from jsonschema->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (23.1.0)
Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /home/pren/.local/lib/python3.8/site-packages (from jsonschema->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (2023.7.1)
Requirement already satisfied: pkgutil-resolve-name>=1.3.10 in /home/pren/.local/lib/python3.8/site-packages (from jsonschema->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (1.3.10)
Requirement already satisfied: referencing>=0.28.4 in /home/pren/.local/lib/python3.8/site-packages (from jsonschema->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (0.30.2)
Requirement already satisfied: rpds-py>=0.7.1 in /home/pren/.local/lib/python3.8/site-packages (from jsonschema->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (0.10.6)
Requirement already satisfied: python-dateutil>=2.2 in /home/pren/.local/lib/python3.8/site-packages (from pycollada->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (2.8.2)
Requirement already satisfied: charset-normalizer<4,>=2 in /home/pren/.local/lib/python3.8/site-packages (from requests->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (3.3.0)
Requirement already satisfied: idna<4,>=2.5 in /home/pren/anaconda3/envs/curobo-env/lib/python3.8/site-packages (from requests->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (3.4)
Requirement already satisfied: urllib3<3,>=1.21.1 in /home/pren/.local/lib/python3.8/site-packages (from requests->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (2.0.7)
Requirement already satisfied: certifi>=2017.4.17 in /home/pren/anaconda3/envs/curobo-env/lib/python3.8/site-packages (from requests->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (2023.11.17)
Requirement already satisfied: mpmath>=0.19 in /home/pren/.local/lib/python3.8/site-packages (from sympy->trimesh[easy]>=3.11.2->yourdfpy>=0.0.53->nvidia-curobo==0.6.2.post1.dev3) (1.3.0)
Building wheels for collected packages: nvidia-curobo
  Building editable for nvidia-curobo (pyproject.toml) ... done
  Created wheel for nvidia-curobo: filename=nvidia_curobo-0.6.2.post1.dev3-0.editable-cp38-cp38-linux_x86_64.whl size=5627 sha256=08dfec994a0ee252ed2896f380cb0afa115d1af0c42b13d253b09afbf99066fe
  Stored in directory: /tmp/pip-ephem-wheel-cache-3v4y00ct/wheels/ac/e5/36/52e2c21d4f654260867554ec1f86a8445280b02c7854b2a741
Successfully built nvidia-curobo
Installing collected packages: lxml, chardet, nvidia-curobo
Successfully installed chardet-5.2.0 lxml-4.9.4 nvidia-curobo-0.6.2.post1.dev3

[notice] A new release of pip is available: 23.3.1 -> 23.3.2
[notice] To update, run: pip install --upgrade pip
(curobo-env) ➜  curobo git:(main) python examples/collision_check_example.py
/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/types/math.py:83: UserWarning: FALLBACK path has been taken inside: runCudaFusionGroup. This is an indication that codegen Failed for some reason.
To debug try disable codegen fallback path via setting the env variable `export PYTORCH_NVFUSER_DISABLE=fallback`
 (Triggered internally at  ../torch/csrc/jit/codegen/cuda/manager.cpp:329.)
  self.quaternion = normalize_quaternion(self.quaternion)
tensor([[0.2441],
        [0.0000],
        [0.0000],
        [0.0000],
        [0.0000],
        [0.0000],
        [0.0000],
        [0.1431],
        [0.0000],
        [0.0230]], device='cuda:0')
Collision Distance:
World: tensor([0.0000, 0.0000, 0.0000, 0.0000, 1.8775], device='cuda:0')
Self: tensor([0., 0., 0., 0., 0.], device='cuda:0')
(curobo-env) ➜  curobo git:(main) python examples/ik_example.py
Traceback (most recent call last):
  File "examples/ik_example.py", line 232, in <module>
    demo_basic_ik()
  File "examples/ik_example.py", line 42, in demo_basic_ik
    ik_config = IKSolverConfig.load_from_robot_config(
  File "/home/pren/anaconda3/envs/curobo-env/lib/python3.8/contextlib.py", line 75, in inner
    return func(*args, **kwds)
  File "/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/wrap/reacher/ik_solver.py", line 203, in load_from_robot_config
    parallel_mppi = ParallelMPPI(mppi_cfg)
  File "/home/pren/anaconda3/envs/curobo-env/lib/python3.8/contextlib.py", line 75, in inner
    return func(*args, **kwds)
  File "/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/opt/particle/parallel_mppi.py", line 156, in __init__
    self.update_samples()
  File "/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/opt/particle/parallel_mppi.py", line 528, in update_samples
    self.sample_lib.get_samples(
  File "/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/util/sample_lib.py", line 378, in get_samples
    samples = self.sample_fns[k](sample_shape=s_shape)
  File "/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/util/sample_lib.py", line 125, in get_samples
    self.samples = self.halton_generator.get_gaussian_samples(sample_shape[0])
  File "/home/pren/anaconda3/envs/curobo-env/lib/python3.8/contextlib.py", line 75, in inner
    return func(*args, **kwds)
  File "/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/util/sample_lib.py", line 503, in get_gaussian_samples
    gaussian_halton_samples = gaussian_transform(
RuntimeError: The following operation failed in the TorchScript interpreter.
Traceback of TorchScript (most recent call last):
  File "/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/util/sample_lib.py", line 527, in gaussian_transform
    # these values.
    changed_samples = 1.99 * uniform_samples - 0.99
    gaussian_halton_samples = proj_mat * torch.erfinv(changed_samples)
                                         ~~~~~~~~~~~~ <--- HERE
    i_mat = i_mat * variance
    gaussian_halton_samples = torch.matmul(gaussian_halton_samples, i_mat)
RuntimeError: 
  #define POS_INFINITY __int_as_float(0x7f800000)
  #define INFINITY POS_INFINITY
  #define NEG_INFINITY __int_as_float(0xff800000)
  #define NAN __int_as_float(0x7fffffff)

  typedef long long int int64_t;
  typedef unsigned int uint32_t;
  typedef signed char int8_t;
  typedef unsigned char uint8_t;  // NOTE: this MUST be "unsigned char"! "char" is equivalent to "signed char"
  typedef short int16_t;
  static_assert(sizeof(int64_t) == 8, "expected size does not match");
  static_assert(sizeof(uint32_t) == 4, "expected size does not match");
  static_assert(sizeof(int8_t) == 1, "expected size does not match");
  constexpr int num_threads = 128;
  constexpr int thread_work_size = 4; // TODO: make template substitution once we decide where those vars live
  constexpr int block_work_size = thread_work_size * num_threads;
  //TODO use _assert_fail, because assert is disabled in non-debug builds
  #define ERROR_UNSUPPORTED_CAST assert(false);

  
  
  
  namespace std {
  
  using ::signbit;
  using ::isfinite;
  using ::isinf;
  using ::isnan;
  
  using ::abs;
  
  using ::acos;
  using ::acosf;
  using ::asin;
  using ::asinf;
  using ::atan;
  using ::atanf;
  using ::atan2;
  using ::atan2f;
  using ::ceil;
  using ::ceilf;
  using ::cos;
  using ::cosf;
  using ::cosh;
  using ::coshf;
  
  using ::exp;
  using ::expf;
  
  using ::fabs;
  using ::fabsf;
  using ::floor;
  using ::floorf;
  
  using ::fmod;
  using ::fmodf;
  
  using ::frexp;
  using ::frexpf;
  using ::ldexp;
  using ::ldexpf;
  
  using ::log;
  using ::logf;
  
  using ::log10;
  using ::log10f;
  using ::modf;
  using ::modff;
  
  using ::pow;
  using ::powf;
  
  using ::sin;
  using ::sinf;
  using ::sinh;
  using ::sinhf;
  
  using ::sqrt;
  using ::sqrtf;
  using ::tan;
  using ::tanf;
  
  using ::tanh;
  using ::tanhf;
  
  using ::acosh;
  using ::acoshf;
  using ::asinh;
  using ::asinhf;
  using ::atanh;
  using ::atanhf;
  using ::cbrt;
  using ::cbrtf;
  
  using ::copysign;
  using ::copysignf;
  
  using ::erf;
  using ::erff;
  using ::erfc;
  using ::erfcf;
  using ::exp2;
  using ::exp2f;
  using ::expm1;
  using ::expm1f;
  using ::fdim;
  using ::fdimf;
  using ::fmaf;
  using ::fma;
  using ::fmax;
  using ::fmaxf;
  using ::fmin;
  using ::fminf;
  using ::hypot;
  using ::hypotf;
  using ::ilogb;
  using ::ilogbf;
  using ::lgamma;
  using ::lgammaf;
  using ::llrint;
  using ::llrintf;
  using ::llround;
  using ::llroundf;
  using ::log1p;
  using ::log1pf;
  using ::log2;
  using ::log2f;
  using ::logb;
  using ::logbf;
  using ::lrint;
  using ::lrintf;
  using ::lround;
  using ::lroundf;
  
  using ::nan;
  using ::nanf;
  
  using ::nearbyint;
  using ::nearbyintf;
  using ::nextafter;
  using ::nextafterf;
  using ::remainder;
  using ::remainderf;
  using ::remquo;
  using ::remquof;
  using ::rint;
  using ::rintf;
  using ::round;
  using ::roundf;
  using ::scalbln;
  using ::scalblnf;
  using ::scalbn;
  using ::scalbnf;
  using ::tgamma;
  using ::tgammaf;
  using ::trunc;
  using ::truncf;
  
  } // namespace std
  
  

  // NB: Order matters for this macro; it is relied upon in
  // _promoteTypesLookup and the serialization format.
  // Note, some types have ctype as void because we don't support them in codegen
  #define AT_FORALL_SCALAR_TYPES_WITH_COMPLEX(_) \
  _(uint8_t, Byte) /* 0 */                               \
  _(int8_t, Char) /* 1 */                                \
  _(int16_t, Short) /* 2 */                              \
  _(int, Int) /* 3 */                                    \
  _(int64_t, Long) /* 4 */                               \
  _(at::Half, Half) /* 5 */                                  \
  _(float, Float) /* 6 */                                \
  _(double, Double) /* 7 */                              \
  _(std::complex<at::Half>, ComplexHalf) /* 8 */        \
  _(std::complex<float>, ComplexFloat) /* 9 */                          \
  _(std::complex<double>, ComplexDouble) /* 10 */                         \
  _(bool, Bool) /* 11 */                                 \
  _(void, QInt8) /* 12 */                          \
  _(void, QUInt8) /* 13 */                        \
  _(void, QInt32) /* 14 */                        \
  _(at::BFloat16, BFloat16) /* 15 */                             \

  #define AT_FORALL_SCALAR_TYPES_WITH_COMPLEX_EXCEPT_QINT(_)       \
  _(uint8_t, Byte)                                                 \
  _(int8_t, Char)                                                  \
  _(int16_t, Short)                                                \
  _(int, Int)                                                      \
  _(int64_t, Long)                                                 \
  _(at::Half, Half)                                                \
  _(float, Float)                                                  \
  _(double, Double)                                                \
  _(std::complex<at::Half>, ComplexHalf)                           \
  _(std::complex<float>, ComplexFloat)                             \
  _(std::complex<double>, ComplexDouble)                           \
  _(bool, Bool)                                                    \
  _(at::BFloat16, BFloat16)


  enum class ScalarType : int8_t {
  #define DEFINE_ENUM(_1, n) n,
  AT_FORALL_SCALAR_TYPES_WITH_COMPLEX(DEFINE_ENUM)
  #undef DEFINE_ENUM
      Undefined,
  NumOptions
  };

  template <typename T, int size>
  struct Array {
  T data[size];

  __device__ T operator[](int i) const {
      return data[i];
  }
  __device__ T& operator[](int i) {
      return data[i];
  }
  Array() = default;
  Array(const Array&) = default;
  Array& operator=(const Array&) = default;
  __device__ Array(T x) {
    for (int i = 0; i < size; i++) {
      data[i] = x;
    }
  }
  };

  
  
  
  
  




  template <typename scalar_t>
  __device__ __inline__ scalar_t load(char* base_ptr, uint32_t offset) {
      return *(reinterpret_cast<scalar_t*>(base_ptr) + offset);
  }

  template<typename scalar_t>
  __device__ __inline__ void store(scalar_t value, char *base_ptr, uint32_t offset) {
      *(reinterpret_cast<scalar_t *>(base_ptr) + offset) = value;
  }

  // aligned vector generates vectorized load/store on CUDA
  template<typename scalar_t, int vec_size>
  struct alignas(sizeof(scalar_t) * vec_size) aligned_vector {
    scalar_t val[vec_size];
  };

  template <typename T> T erfinv_kernel(T a) { return erfinv(a); }

  // TODO: setup grid-stride loop

  extern "C" __global__
  void erfinv_kernel_vectorized4_kernel(
      const int N,
      Array<char*, 1+1> data,
      float scalar_val) //[1+1],
      {
      constexpr int vec_size = 4;
      int remaining = N - block_work_size * blockIdx.x;
      auto thread_idx = threadIdx.x;
      int idx = blockIdx.x;
      float arg0[4];
      
      float out0[4];
      

      if (remaining < block_work_size) {
        #pragma unroll
        for (int j = 0; j < thread_work_size; j++){
          if (thread_idx >= remaining) {
            break;
          }
          int linear_idx = thread_idx + block_work_size * idx;
          arg0[j] = load<float>(data[1], linear_idx);
          
          thread_idx += num_threads;
        }
        #pragma unroll
        for (int j = 0; j < thread_work_size; j++) {
          if ((threadIdx.x  + j*num_threads) < remaining) {
            out0[j] = erfinv_kernel<float>(arg0[j] );
          }
        }
        thread_idx = threadIdx.x;
        #pragma unroll
        for (int j = 0; j < thread_work_size; j++) {
          if (thread_idx >= remaining) {
              break;
          }
          int linear_idx = thread_idx + block_work_size * idx;
          store<float>(out0[j], data[0], linear_idx);
          
          thread_idx += num_threads;
        }
      } else {
        static constexpr int loop_size = thread_work_size / vec_size;
  //actual loading
        using vec_t_input = aligned_vector<float, vec_size>;
        vec_t_input * vec0 = reinterpret_cast<vec_t_input *>(data[0+1]) + block_work_size / vec_size * idx;
        
        #pragma unroll
        for (int i = 0; i<loop_size; i++){
          vec_t_input v;
          v = vec0[thread_idx];
          #pragma unroll
          for (int j=0; j < vec_size; j++){
            arg0[vec_size * i + j] = v.val[j];
          }
          
          thread_idx += num_threads;
        }

        #pragma unroll
        for (int j = 0; j < thread_work_size; j++) {
          out0[j] = erfinv_kernel<float>(arg0[j] );
        }

        using vec_t_output = aligned_vector<float, vec_size>;
        vec_t_output* to_0 = reinterpret_cast<vec_t_output*>(data[0]) + block_work_size / vec_size * idx;
        
        int thread_idx = threadIdx.x;
        #pragma unroll
        for (int i = 0; i<loop_size; i++){
          vec_t_output v;
          #pragma unroll
          for (int j=0; j<vec_size; j++){
          v.val[j] = out0[vec_size * i + j];
          }
          to_0[thread_idx] = v;
          
          thread_idx += num_threads;
        }
      }
  }
nvrtc: error: invalid value for --gpu-architecture (-arch)


(curobo-env) ➜  curobo git:(main) python3 -m pytest .
Traceback (most recent call last):
  File "/home/pren/anaconda3/envs/curobo-env/lib/python3.8/runpy.py", line 185, in _run_module_as_main
    mod_name, mod_spec, code = _get_module_details(mod_name, _Error)
  File "/home/pren/anaconda3/envs/curobo-env/lib/python3.8/runpy.py", line 144, in _get_module_details
    return _get_module_details(pkg_main_name, error)
  File "/home/pren/anaconda3/envs/curobo-env/lib/python3.8/runpy.py", line 111, in _get_module_details
    __import__(pkg_name)
  File "/home/pren/.local/lib/python3.8/site-packages/pytest/__init__.py", line 5, in <module>
    from _pytest._code import ExceptionInfo
  File "/home/pren/.local/lib/python3.8/site-packages/_pytest/_code/__init__.py", line 2, in <module>
    from .code import Code
  File "/home/pren/.local/lib/python3.8/site-packages/_pytest/_code/code.py", line 36, in <module>
    import pluggy
ModuleNotFoundError: No module named 'pluggy'
(curobo-env) ➜  curobo git:(main) pip install pluggy
Looking in indexes: https://mirrors.bfsu.edu.cn/pypi/web/simple/
Collecting pluggy
  Using cached https://mirrors.bfsu.edu.cn/pypi/web/packages/05/b8/42ed91898d4784546c5f06c60506400548db3f7a4b3fb441cba4e5c17952/pluggy-1.3.0-py3-none-any.whl (18 kB)
Installing collected packages: pluggy
Successfully installed pluggy-1.3.0

[notice] A new release of pip is available: 23.3.1 -> 23.3.2
[notice] To update, run: pip install --upgrade pip
(curobo-env) ➜  curobo git:(main) python3 -m pytest .
============================= test session starts ==============================
platform linux -- Python 3.8.10, pytest-7.1.1, pluggy-1.3.0
rootdir: /home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo, configfile: pyproject.toml
plugins: anyio-4.0.0, torchtyping-0.1.4, typeguard-4.1.5, cov-3.0.0, hydra-core-1.3.2
collected 129 items / 2 errors / 2 skipped                                     

==================================== ERRORS ====================================
___________________ ERROR collecting tests/ik_config_test.py ___________________
tests/ik_config_test.py:134: in <module>
    (ik_base_config(), True),
tests/ik_config_test.py:39: in ik_base_config
    ik_config = IKSolverConfig.load_from_robot_config(
/home/pren/anaconda3/envs/curobo-env/lib/python3.8/contextlib.py:75: in inner
    return func(*args, **kwds)
src/curobo/wrap/reacher/ik_solver.py:203: in load_from_robot_config
    parallel_mppi = ParallelMPPI(mppi_cfg)
/home/pren/anaconda3/envs/curobo-env/lib/python3.8/contextlib.py:75: in inner
    return func(*args, **kwds)
src/curobo/opt/particle/parallel_mppi.py:156: in __init__
    self.update_samples()
src/curobo/opt/particle/parallel_mppi.py:528: in update_samples
    self.sample_lib.get_samples(
src/curobo/util/sample_lib.py:378: in get_samples
    samples = self.sample_fns[k](sample_shape=s_shape)
src/curobo/util/sample_lib.py:125: in get_samples
    self.samples = self.halton_generator.get_gaussian_samples(sample_shape[0])
/home/pren/anaconda3/envs/curobo-env/lib/python3.8/contextlib.py:75: in inner
    return func(*args, **kwds)
src/curobo/util/sample_lib.py:503: in get_gaussian_samples
    gaussian_halton_samples = gaussian_transform(
E   RuntimeError: The following operation failed in the TorchScript interpreter.
E   Traceback of TorchScript (most recent call last):
E     File "/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/util/sample_lib.py", line 527, in gaussian_transform
E       # these values.
E       changed_samples = 1.99 * uniform_samples - 0.99
E       gaussian_halton_samples = proj_mat * torch.erfinv(changed_samples)
E                                            ~~~~~~~~~~~~ <--- HERE
E       i_mat = i_mat * variance
E       gaussian_halton_samples = torch.matmul(gaussian_halton_samples, i_mat)
E   RuntimeError: 
E     #define POS_INFINITY __int_as_float(0x7f800000)
E     #define INFINITY POS_INFINITY
E     #define NEG_INFINITY __int_as_float(0xff800000)
E     #define NAN __int_as_float(0x7fffffff)
E   
E     typedef long long int int64_t;
E     typedef unsigned int uint32_t;
E     typedef signed char int8_t;
E     typedef unsigned char uint8_t;  // NOTE: this MUST be "unsigned char"! "char" is equivalent to "signed char"
E     typedef short int16_t;
E     static_assert(sizeof(int64_t) == 8, "expected size does not match");
E     static_assert(sizeof(uint32_t) == 4, "expected size does not match");
E     static_assert(sizeof(int8_t) == 1, "expected size does not match");
E     constexpr int num_threads = 128;
E     constexpr int thread_work_size = 4; // TODO: make template substitution once we decide where those vars live
E     constexpr int block_work_size = thread_work_size * num_threads;
E     //TODO use _assert_fail, because assert is disabled in non-debug builds
E     #define ERROR_UNSUPPORTED_CAST assert(false);
E   
E     
E     
E     
E     namespace std {
E     
E     using ::signbit;
E     using ::isfinite;
E     using ::isinf;
E     using ::isnan;
E     
E     using ::abs;
E     
E     using ::acos;
E     using ::acosf;
E     using ::asin;
E     using ::asinf;
E     using ::atan;
E     using ::atanf;
E     using ::atan2;
E     using ::atan2f;
E     using ::ceil;
E     using ::ceilf;
E     using ::cos;
E     using ::cosf;
E     using ::cosh;
E     using ::coshf;
E     
E     using ::exp;
E     using ::expf;
E     
E     using ::fabs;
E     using ::fabsf;
E     using ::floor;
E     using ::floorf;
E     
E     using ::fmod;
E     using ::fmodf;
E     
E     using ::frexp;
E     using ::frexpf;
E     using ::ldexp;
E     using ::ldexpf;
E     
E     using ::log;
E     using ::logf;
E     
E     using ::log10;
E     using ::log10f;
E     using ::modf;
E     using ::modff;
E     
E     using ::pow;
E     using ::powf;
E     
E     using ::sin;
E     using ::sinf;
E     using ::sinh;
E     using ::sinhf;
E     
E     using ::sqrt;
E     using ::sqrtf;
E     using ::tan;
E     using ::tanf;
E     
E     using ::tanh;
E     using ::tanhf;
E     
E     using ::acosh;
E     using ::acoshf;
E     using ::asinh;
E     using ::asinhf;
E     using ::atanh;
E     using ::atanhf;
E     using ::cbrt;
E     using ::cbrtf;
E     
E     using ::copysign;
E     using ::copysignf;
E     
E     using ::erf;
E     using ::erff;
E     using ::erfc;
E     using ::erfcf;
E     using ::exp2;
E     using ::exp2f;
E     using ::expm1;
E     using ::expm1f;
E     using ::fdim;
E     using ::fdimf;
E     using ::fmaf;
E     using ::fma;
E     using ::fmax;
E     using ::fmaxf;
E     using ::fmin;
E     using ::fminf;
E     using ::hypot;
E     using ::hypotf;
E     using ::ilogb;
E     using ::ilogbf;
E     using ::lgamma;
E     using ::lgammaf;
E     using ::llrint;
E     using ::llrintf;
E     using ::llround;
E     using ::llroundf;
E     using ::log1p;
E     using ::log1pf;
E     using ::log2;
E     using ::log2f;
E     using ::logb;
E     using ::logbf;
E     using ::lrint;
E     using ::lrintf;
E     using ::lround;
E     using ::lroundf;
E     
E     using ::nan;
E     using ::nanf;
E     
E     using ::nearbyint;
E     using ::nearbyintf;
E     using ::nextafter;
E     using ::nextafterf;
E     using ::remainder;
E     using ::remainderf;
E     using ::remquo;
E     using ::remquof;
E     using ::rint;
E     using ::rintf;
E     using ::round;
E     using ::roundf;
E     using ::scalbln;
E     using ::scalblnf;
E     using ::scalbn;
E     using ::scalbnf;
E     using ::tgamma;
E     using ::tgammaf;
E     using ::trunc;
E     using ::truncf;
E     
E     } // namespace std
E     
E     
E   
E     // NB: Order matters for this macro; it is relied upon in
E     // _promoteTypesLookup and the serialization format.
E     // Note, some types have ctype as void because we don't support them in codegen
E     #define AT_FORALL_SCALAR_TYPES_WITH_COMPLEX(_) \
E     _(uint8_t, Byte) /* 0 */                               \
E     _(int8_t, Char) /* 1 */                                \
E     _(int16_t, Short) /* 2 */                              \
E     _(int, Int) /* 3 */                                    \
E     _(int64_t, Long) /* 4 */                               \
E     _(at::Half, Half) /* 5 */                                  \
E     _(float, Float) /* 6 */                                \
E     _(double, Double) /* 7 */                              \
E     _(std::complex<at::Half>, ComplexHalf) /* 8 */        \
E     _(std::complex<float>, ComplexFloat) /* 9 */                          \
E     _(std::complex<double>, ComplexDouble) /* 10 */                         \
E     _(bool, Bool) /* 11 */                                 \
E     _(void, QInt8) /* 12 */                          \
E     _(void, QUInt8) /* 13 */                        \
E     _(void, QInt32) /* 14 */                        \
E     _(at::BFloat16, BFloat16) /* 15 */                             \
E   
E     #define AT_FORALL_SCALAR_TYPES_WITH_COMPLEX_EXCEPT_QINT(_)       \
E     _(uint8_t, Byte)                                                 \
E     _(int8_t, Char)                                                  \
E     _(int16_t, Short)                                                \
E     _(int, Int)                                                      \
E     _(int64_t, Long)                                                 \
E     _(at::Half, Half)                                                \
E     _(float, Float)                                                  \
E     _(double, Double)                                                \
E     _(std::complex<at::Half>, ComplexHalf)                           \
E     _(std::complex<float>, ComplexFloat)                             \
E     _(std::complex<double>, ComplexDouble)                           \
E     _(bool, Bool)                                                    \
E     _(at::BFloat16, BFloat16)
E   
E   
E     enum class ScalarType : int8_t {
E     #define DEFINE_ENUM(_1, n) n,
E     AT_FORALL_SCALAR_TYPES_WITH_COMPLEX(DEFINE_ENUM)
E     #undef DEFINE_ENUM
E         Undefined,
E     NumOptions
E     };
E   
E     template <typename T, int size>
E     struct Array {
E     T data[size];
E   
E     __device__ T operator[](int i) const {
E         return data[i];
E     }
E     __device__ T& operator[](int i) {
E         return data[i];
E     }
E     Array() = default;
E     Array(const Array&) = default;
E     Array& operator=(const Array&) = default;
E     __device__ Array(T x) {
E       for (int i = 0; i < size; i++) {
E         data[i] = x;
E       }
E     }
E     };
E   
E     
E     
E     
E     
E     
E   
E   
E   
E   
E     template <typename scalar_t>
E     __device__ __inline__ scalar_t load(char* base_ptr, uint32_t offset) {
E         return *(reinterpret_cast<scalar_t*>(base_ptr) + offset);
E     }
E   
E     template<typename scalar_t>
E     __device__ __inline__ void store(scalar_t value, char *base_ptr, uint32_t offset) {
E         *(reinterpret_cast<scalar_t *>(base_ptr) + offset) = value;
E     }
E   
E     // aligned vector generates vectorized load/store on CUDA
E     template<typename scalar_t, int vec_size>
E     struct alignas(sizeof(scalar_t) * vec_size) aligned_vector {
E       scalar_t val[vec_size];
E     };
E   
E     template <typename T> T erfinv_kernel(T a) { return erfinv(a); }
E   
E     // TODO: setup grid-stride loop
E   
E     extern "C" __global__
E     void erfinv_kernel_vectorized4_kernel(
E         const int N,
E         Array<char*, 1+1> data,
E         float scalar_val) //[1+1],
E         {
E         constexpr int vec_size = 4;
E         int remaining = N - block_work_size * blockIdx.x;
E         auto thread_idx = threadIdx.x;
E         int idx = blockIdx.x;
E         float arg0[4];
E         
E         float out0[4];
E         
E   
E         if (remaining < block_work_size) {
E           #pragma unroll
E           for (int j = 0; j < thread_work_size; j++){
E             if (thread_idx >= remaining) {
E               break;
E             }
E             int linear_idx = thread_idx + block_work_size * idx;
E             arg0[j] = load<float>(data[1], linear_idx);
E             
E             thread_idx += num_threads;
E           }
E           #pragma unroll
E           for (int j = 0; j < thread_work_size; j++) {
E             if ((threadIdx.x  + j*num_threads) < remaining) {
E               out0[j] = erfinv_kernel<float>(arg0[j] );
E             }
E           }
E           thread_idx = threadIdx.x;
E           #pragma unroll
E           for (int j = 0; j < thread_work_size; j++) {
E             if (thread_idx >= remaining) {
E                 break;
E             }
E             int linear_idx = thread_idx + block_work_size * idx;
E             store<float>(out0[j], data[0], linear_idx);
E             
E             thread_idx += num_threads;
E           }
E         } else {
E           static constexpr int loop_size = thread_work_size / vec_size;
E     //actual loading
E           using vec_t_input = aligned_vector<float, vec_size>;
E           vec_t_input * vec0 = reinterpret_cast<vec_t_input *>(data[0+1]) + block_work_size / vec_size * idx;
E           
E           #pragma unroll
E           for (int i = 0; i<loop_size; i++){
E             vec_t_input v;
E             v = vec0[thread_idx];
E             #pragma unroll
E             for (int j=0; j < vec_size; j++){
E               arg0[vec_size * i + j] = v.val[j];
E             }
E             
E             thread_idx += num_threads;
E           }
E   
E           #pragma unroll
E           for (int j = 0; j < thread_work_size; j++) {
E             out0[j] = erfinv_kernel<float>(arg0[j] );
E           }
E   
E           using vec_t_output = aligned_vector<float, vec_size>;
E           vec_t_output* to_0 = reinterpret_cast<vec_t_output*>(data[0]) + block_work_size / vec_size * idx;
E           
E           int thread_idx = threadIdx.x;
E           #pragma unroll
E           for (int i = 0; i<loop_size; i++){
E             vec_t_output v;
E             #pragma unroll
E             for (int j=0; j<vec_size; j++){
E             v.val[j] = out0[vec_size * i + j];
E             }
E             to_0[thread_idx] = v;
E             
E             thread_idx += num_threads;
E           }
E         }
E     }
E   nvrtc: error: invalid value for --gpu-architecture (-arch)
________________ ERROR collecting tests/trajopt_config_test.py _________________
tests/trajopt_config_test.py:115: in <module>
    (trajopt_base_config(), True),
tests/trajopt_config_test.py:35: in trajopt_base_config
    trajopt_config = TrajOptSolverConfig.load_from_robot_config(
/home/pren/anaconda3/envs/curobo-env/lib/python3.8/contextlib.py:75: in inner
    return func(*args, **kwds)
src/curobo/wrap/reacher/trajopt.py:284: in load_from_robot_config
    parallel_mppi = ParallelMPPI(mppi_cfg)
/home/pren/anaconda3/envs/curobo-env/lib/python3.8/contextlib.py:75: in inner
    return func(*args, **kwds)
src/curobo/opt/particle/parallel_mppi.py:155: in __init__
    self.reset_distribution()
src/curobo/opt/particle/parallel_mppi.py:171: in reset_distribution
    self.reset_mean()
src/curobo/opt/particle/parallel_mppi.py:356: in reset_mean
    mean = self.mean_lib.get_samples([self.n_envs])
src/curobo/util/sample_lib.py:125: in get_samples
    self.samples = self.halton_generator.get_gaussian_samples(sample_shape[0])
/home/pren/anaconda3/envs/curobo-env/lib/python3.8/contextlib.py:75: in inner
    return func(*args, **kwds)
src/curobo/util/sample_lib.py:503: in get_gaussian_samples
    gaussian_halton_samples = gaussian_transform(
E   RuntimeError: The following operation failed in the TorchScript interpreter.
E   Traceback of TorchScript (most recent call last):
E     File "/home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/util/sample_lib.py", line 527, in gaussian_transform
E       # these values.
E       changed_samples = 1.99 * uniform_samples - 0.99
E       gaussian_halton_samples = proj_mat * torch.erfinv(changed_samples)
E                                            ~~~~~~~~~~~~ <--- HERE
E       i_mat = i_mat * variance
E       gaussian_halton_samples = torch.matmul(gaussian_halton_samples, i_mat)
E   RuntimeError: 
E     #define POS_INFINITY __int_as_float(0x7f800000)
E     #define INFINITY POS_INFINITY
E     #define NEG_INFINITY __int_as_float(0xff800000)
E     #define NAN __int_as_float(0x7fffffff)
E   
E     typedef long long int int64_t;
E     typedef unsigned int uint32_t;
E     typedef signed char int8_t;
E     typedef unsigned char uint8_t;  // NOTE: this MUST be "unsigned char"! "char" is equivalent to "signed char"
E     typedef short int16_t;
E     static_assert(sizeof(int64_t) == 8, "expected size does not match");
E     static_assert(sizeof(uint32_t) == 4, "expected size does not match");
E     static_assert(sizeof(int8_t) == 1, "expected size does not match");
E     constexpr int num_threads = 128;
E     constexpr int thread_work_size = 4; // TODO: make template substitution once we decide where those vars live
E     constexpr int block_work_size = thread_work_size * num_threads;
E     //TODO use _assert_fail, because assert is disabled in non-debug builds
E     #define ERROR_UNSUPPORTED_CAST assert(false);
E   
E     
E     
E     
E     namespace std {
E     
E     using ::signbit;
E     using ::isfinite;
E     using ::isinf;
E     using ::isnan;
E     
E     using ::abs;
E     
E     using ::acos;
E     using ::acosf;
E     using ::asin;
E     using ::asinf;
E     using ::atan;
E     using ::atanf;
E     using ::atan2;
E     using ::atan2f;
E     using ::ceil;
E     using ::ceilf;
E     using ::cos;
E     using ::cosf;
E     using ::cosh;
E     using ::coshf;
E     
E     using ::exp;
E     using ::expf;
E     
E     using ::fabs;
E     using ::fabsf;
E     using ::floor;
E     using ::floorf;
E     
E     using ::fmod;
E     using ::fmodf;
E     
E     using ::frexp;
E     using ::frexpf;
E     using ::ldexp;
E     using ::ldexpf;
E     
E     using ::log;
E     using ::logf;
E     
E     using ::log10;
E     using ::log10f;
E     using ::modf;
E     using ::modff;
E     
E     using ::pow;
E     using ::powf;
E     
E     using ::sin;
E     using ::sinf;
E     using ::sinh;
E     using ::sinhf;
E     
E     using ::sqrt;
E     using ::sqrtf;
E     using ::tan;
E     using ::tanf;
E     
E     using ::tanh;
E     using ::tanhf;
E     
E     using ::acosh;
E     using ::acoshf;
E     using ::asinh;
E     using ::asinhf;
E     using ::atanh;
E     using ::atanhf;
E     using ::cbrt;
E     using ::cbrtf;
E     
E     using ::copysign;
E     using ::copysignf;
E     
E     using ::erf;
E     using ::erff;
E     using ::erfc;
E     using ::erfcf;
E     using ::exp2;
E     using ::exp2f;
E     using ::expm1;
E     using ::expm1f;
E     using ::fdim;
E     using ::fdimf;
E     using ::fmaf;
E     using ::fma;
E     using ::fmax;
E     using ::fmaxf;
E     using ::fmin;
E     using ::fminf;
E     using ::hypot;
E     using ::hypotf;
E     using ::ilogb;
E     using ::ilogbf;
E     using ::lgamma;
E     using ::lgammaf;
E     using ::llrint;
E     using ::llrintf;
E     using ::llround;
E     using ::llroundf;
E     using ::log1p;
E     using ::log1pf;
E     using ::log2;
E     using ::log2f;
E     using ::logb;
E     using ::logbf;
E     using ::lrint;
E     using ::lrintf;
E     using ::lround;
E     using ::lroundf;
E     
E     using ::nan;
E     using ::nanf;
E     
E     using ::nearbyint;
E     using ::nearbyintf;
E     using ::nextafter;
E     using ::nextafterf;
E     using ::remainder;
E     using ::remainderf;
E     using ::remquo;
E     using ::remquof;
E     using ::rint;
E     using ::rintf;
E     using ::round;
E     using ::roundf;
E     using ::scalbln;
E     using ::scalblnf;
E     using ::scalbn;
E     using ::scalbnf;
E     using ::tgamma;
E     using ::tgammaf;
E     using ::trunc;
E     using ::truncf;
E     
E     } // namespace std
E     
E     
E   
E     // NB: Order matters for this macro; it is relied upon in
E     // _promoteTypesLookup and the serialization format.
E     // Note, some types have ctype as void because we don't support them in codegen
E     #define AT_FORALL_SCALAR_TYPES_WITH_COMPLEX(_) \
E     _(uint8_t, Byte) /* 0 */                               \
E     _(int8_t, Char) /* 1 */                                \
E     _(int16_t, Short) /* 2 */                              \
E     _(int, Int) /* 3 */                                    \
E     _(int64_t, Long) /* 4 */                               \
E     _(at::Half, Half) /* 5 */                                  \
E     _(float, Float) /* 6 */                                \
E     _(double, Double) /* 7 */                              \
E     _(std::complex<at::Half>, ComplexHalf) /* 8 */        \
E     _(std::complex<float>, ComplexFloat) /* 9 */                          \
E     _(std::complex<double>, ComplexDouble) /* 10 */                         \
E     _(bool, Bool) /* 11 */                                 \
E     _(void, QInt8) /* 12 */                          \
E     _(void, QUInt8) /* 13 */                        \
E     _(void, QInt32) /* 14 */                        \
E     _(at::BFloat16, BFloat16) /* 15 */                             \
E   
E     #define AT_FORALL_SCALAR_TYPES_WITH_COMPLEX_EXCEPT_QINT(_)       \
E     _(uint8_t, Byte)                                                 \
E     _(int8_t, Char)                                                  \
E     _(int16_t, Short)                                                \
E     _(int, Int)                                                      \
E     _(int64_t, Long)                                                 \
E     _(at::Half, Half)                                                \
E     _(float, Float)                                                  \
E     _(double, Double)                                                \
E     _(std::complex<at::Half>, ComplexHalf)                           \
E     _(std::complex<float>, ComplexFloat)                             \
E     _(std::complex<double>, ComplexDouble)                           \
E     _(bool, Bool)                                                    \
E     _(at::BFloat16, BFloat16)
E   
E   
E     enum class ScalarType : int8_t {
E     #define DEFINE_ENUM(_1, n) n,
E     AT_FORALL_SCALAR_TYPES_WITH_COMPLEX(DEFINE_ENUM)
E     #undef DEFINE_ENUM
E         Undefined,
E     NumOptions
E     };
E   
E     template <typename T, int size>
E     struct Array {
E     T data[size];
E   
E     __device__ T operator[](int i) const {
E         return data[i];
E     }
E     __device__ T& operator[](int i) {
E         return data[i];
E     }
E     Array() = default;
E     Array(const Array&) = default;
E     Array& operator=(const Array&) = default;
E     __device__ Array(T x) {
E       for (int i = 0; i < size; i++) {
E         data[i] = x;
E       }
E     }
E     };
E   
E     
E     
E     
E     
E     
E   
E   
E   
E   
E     template <typename scalar_t>
E     __device__ __inline__ scalar_t load(char* base_ptr, uint32_t offset) {
E         return *(reinterpret_cast<scalar_t*>(base_ptr) + offset);
E     }
E   
E     template<typename scalar_t>
E     __device__ __inline__ void store(scalar_t value, char *base_ptr, uint32_t offset) {
E         *(reinterpret_cast<scalar_t *>(base_ptr) + offset) = value;
E     }
E   
E     // aligned vector generates vectorized load/store on CUDA
E     template<typename scalar_t, int vec_size>
E     struct alignas(sizeof(scalar_t) * vec_size) aligned_vector {
E       scalar_t val[vec_size];
E     };
E   
E     template <typename T> T erfinv_kernel(T a) { return erfinv(a); }
E   
E     // TODO: setup grid-stride loop
E   
E     extern "C" __global__
E     void erfinv_kernel_vectorized4_kernel(
E         const int N,
E         Array<char*, 1+1> data,
E         float scalar_val) //[1+1],
E         {
E         constexpr int vec_size = 4;
E         int remaining = N - block_work_size * blockIdx.x;
E         auto thread_idx = threadIdx.x;
E         int idx = blockIdx.x;
E         float arg0[4];
E         
E         float out0[4];
E         
E   
E         if (remaining < block_work_size) {
E           #pragma unroll
E           for (int j = 0; j < thread_work_size; j++){
E             if (thread_idx >= remaining) {
E               break;
E             }
E             int linear_idx = thread_idx + block_work_size * idx;
E             arg0[j] = load<float>(data[1], linear_idx);
E             
E             thread_idx += num_threads;
E           }
E           #pragma unroll
E           for (int j = 0; j < thread_work_size; j++) {
E             if ((threadIdx.x  + j*num_threads) < remaining) {
E               out0[j] = erfinv_kernel<float>(arg0[j] );
E             }
E           }
E           thread_idx = threadIdx.x;
E           #pragma unroll
E           for (int j = 0; j < thread_work_size; j++) {
E             if (thread_idx >= remaining) {
E                 break;
E             }
E             int linear_idx = thread_idx + block_work_size * idx;
E             store<float>(out0[j], data[0], linear_idx);
E             
E             thread_idx += num_threads;
E           }
E         } else {
E           static constexpr int loop_size = thread_work_size / vec_size;
E     //actual loading
E           using vec_t_input = aligned_vector<float, vec_size>;
E           vec_t_input * vec0 = reinterpret_cast<vec_t_input *>(data[0+1]) + block_work_size / vec_size * idx;
E           
E           #pragma unroll
E           for (int i = 0; i<loop_size; i++){
E             vec_t_input v;
E             v = vec0[thread_idx];
E             #pragma unroll
E             for (int j=0; j < vec_size; j++){
E               arg0[vec_size * i + j] = v.val[j];
E             }
E             
E             thread_idx += num_threads;
E           }
E   
E           #pragma unroll
E           for (int j = 0; j < thread_work_size; j++) {
E             out0[j] = erfinv_kernel<float>(arg0[j] );
E           }
E   
E           using vec_t_output = aligned_vector<float, vec_size>;
E           vec_t_output* to_0 = reinterpret_cast<vec_t_output*>(data[0]) + block_work_size / vec_size * idx;
E           
E           int thread_idx = threadIdx.x;
E           #pragma unroll
E           for (int i = 0; i<loop_size; i++){
E             vec_t_output v;
E             #pragma unroll
E             for (int j=0; j<vec_size; j++){
E             v.val[j] = out0[vec_size * i + j];
E             }
E             to_0[thread_idx] = v;
E             
E             thread_idx += num_threads;
E           }
E         }
E     }
E   nvrtc: error: invalid value for --gpu-architecture (-arch)
=============================== warnings summary ===============================
<unknown>:3
  <unknown>:3: DeprecationWarning: invalid escape sequence \p

tests/ik_config_test.py:149
  /home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/tests/ik_config_test.py:149: SyntaxWarning: "is not" with a literal. Did you mean "!="?
    if expected is not -100:

src/curobo/types/math.py:83
src/curobo/types/math.py:83
  /home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/types/math.py:83: UserWarning: FALLBACK path has been taken inside: runCudaFusionGroup. This is an indication that codegen Failed for some reason.
  To debug try disable codegen fallback path via setting the env variable `export PYTORCH_NVFUSER_DISABLE=fallback`
   (Triggered internally at  ../torch/csrc/jit/codegen/cuda/manager.cpp:329.)
    self.quaternion = normalize_quaternion(self.quaternion)

src/curobo/opt/particle/particle_opt_utils.py:67
  /home/pren/Space/GitHub-Codes/curobo_ws/curobo/curobo/src/curobo/opt/particle/particle_opt_utils.py:67: UserWarning: FALLBACK path has been taken inside: runCudaFusionGroup. This is an indication that codegen Failed for some reason.
  To debug try disable codegen fallback path via setting the env variable `export PYTORCH_NVFUSER_DISABLE=fallback`
   (Triggered internally at  ../torch/csrc/jit/codegen/cuda/manager.cpp:329.)
    cov, scale_tril, scaled_M = get_stomp_cov_jit(

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
=========================== short test summary info ============================
ERROR tests/ik_config_test.py - RuntimeError: The following operation failed ...
ERROR tests/trajopt_config_test.py - RuntimeError: The following operation fa...
!!!!!!!!!!!!!!!!!!! Interrupted: 2 errors during collection !!!!!!!!!!!!!!!!!!!!
=================== 2 skipped, 5 warnings, 2 errors in 3.51s ===================
(curobo-env) ➜  curobo git:(main)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.