Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -256,6 +256,7 @@ jobs:
isaacsim-base-image: ${{ needs.config.outputs.isaacsim_image_name }}
isaacsim-version: ${{ needs.config.outputs.isaacsim_image_tag }}
filter-pattern: "isaaclab_tasks"
extra-pip-packages: "ovrtx"
Comment thread
huidongc marked this conversation as resolved.
shard-index: "0"
shard-count: "3"
container-name: isaac-lab-tasks-1-test
Expand All @@ -278,6 +279,7 @@ jobs:
isaacsim-base-image: ${{ needs.config.outputs.isaacsim_image_name }}
isaacsim-version: ${{ needs.config.outputs.isaacsim_image_tag }}
filter-pattern: "isaaclab_tasks"
extra-pip-packages: "ovrtx"
shard-index: "1"
shard-count: "3"
container-name: isaac-lab-tasks-2-test
Expand All @@ -300,6 +302,7 @@ jobs:
isaacsim-base-image: ${{ needs.config.outputs.isaacsim_image_name }}
isaacsim-version: ${{ needs.config.outputs.isaacsim_image_tag }}
filter-pattern: "isaaclab_tasks"
extra-pip-packages: "ovrtx"
shard-index: "2"
shard-count: "3"
container-name: isaac-lab-tasks-3-test
Expand Down
1 change: 1 addition & 0 deletions .github/workflows/daily-compatibility.yml
Original file line number Diff line number Diff line change
Expand Up @@ -111,6 +111,7 @@ jobs:
image-tag: ${{ env.DOCKER_IMAGE_TAG }}
pytest-options: ""
filter-pattern: "isaaclab_tasks"
extra-pip-packages: "ovrtx"

- name: Copy All Test Results from IsaacLab Tasks Container
run: |
Expand Down
2 changes: 0 additions & 2 deletions docs/source/setup/installation/kitless_installation.rst
Original file line number Diff line number Diff line change
Expand Up @@ -105,8 +105,6 @@ OVRTX provides GPU-accelerated rendering for vision tasks without Kit.

./isaaclab.sh -i ov[ovrtx]

export LD_PRELOAD=$(python -c "import ovrtx, pathlib; print(pathlib.Path(ovrtx.__file__).parent / 'bin/plugins/libcarb.so')")

./isaaclab.sh -p scripts/benchmarks/benchmark_rsl_rl.py \
--task Isaac-Repose-Cube-Shadow-Vision-Benchmark-Direct-v0 \
--headless --enable_cameras --num_envs 16 --max_iterations 10 \
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Fixed
^^^^^

* Set ``keep_system_alive=True`` on the internal OVRTX ``RendererConfig`` in
:class:`~isaaclab_ov.renderers.ovrtx_renderer.OVRTXRenderer` so the renderer
system is not torn down prematurely during pytest sessions.
1 change: 1 addition & 0 deletions source/isaaclab_ov/isaaclab_ov/renderers/ovrtx_renderer.py
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,7 @@ def initialize(self, spec: CameraRenderSpec):
log_file_path=self.cfg.log_file_path,
log_level=self.cfg.log_level,
read_gpu_transforms=_IS_OVRTX_0_3_0_OR_NEWER,
keep_system_alive=True,
)
self._renderer = Renderer(OVRTX_CONFIG)
assert self._renderer, "Renderer should be valid after creation"
Expand Down
Empty file.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
25 changes: 9 additions & 16 deletions source/isaaclab_tasks/test/rendering_test_utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -66,15 +66,8 @@
# Parametrization: (physics_backend, renderer, data_type)
# ---------------------------------------------------------------------------

# OVRTX kitless paths can segfault on CI runners; keep warp/Kit paths in CI.
_SKIP_ON_CI = any(os.environ.get(name) == "true" for name in ("CI", "GITHUB_ACTIONS", "GITLAB_CI"))
_SKIP_ON_CI_MARK = pytest.mark.skipif(
_SKIP_ON_CI,
reason="Skipped on CI runners until the test can run on CI runners.",
)

# Let's just accept the fact that low-resolution camera outputs from RTX renderers are not deterministic enough to pass
# golden image testing on every CI run.
# Low-resolution camera outputs from RTX renderers are not deterministic enough to pass golden image testing
# on every CI run. (NVBUG#6152566)
_FLAKY_MARK = pytest.mark.flaky(max_runs=3, min_passes=1)

PHYSICS_RENDERER_AOV_COMBINATIONS = [
Expand Down Expand Up @@ -200,49 +193,49 @@
"ovrtx_renderer",
"rgb",
id="newton-ovrtx-rgb",
marks=_SKIP_ON_CI_MARK,
marks=_FLAKY_MARK,
),
pytest.param(
"newton",
"ovrtx_renderer",
"albedo",
id="newton-ovrtx-albedo",
marks=_SKIP_ON_CI_MARK,
marks=_FLAKY_MARK,
),
pytest.param(
"newton",
"ovrtx_renderer",
"depth",
id="newton-ovrtx-depth",
marks=_SKIP_ON_CI_MARK,
marks=_FLAKY_MARK,
),
pytest.param(
"newton",
"ovrtx_renderer",
"simple_shading_constant_diffuse",
id="newton-ovrtx-simple_shading_constant_diffuse",
marks=_SKIP_ON_CI_MARK,
marks=_FLAKY_MARK,
),
pytest.param(
"newton",
"ovrtx_renderer",
"simple_shading_diffuse_mdl",
id="newton-ovrtx-simple_shading_diffuse_mdl",
marks=_SKIP_ON_CI_MARK,
marks=_FLAKY_MARK,
),
pytest.param(
"newton",
"ovrtx_renderer",
"simple_shading_full_mdl",
id="newton-ovrtx-simple_shading_full_mdl",
marks=_SKIP_ON_CI_MARK,
marks=_FLAKY_MARK,
),
pytest.param(
"newton",
"ovrtx_renderer",
"semantic_segmentation",
id="newton-ovrtx-semantic_segmentation",
marks=_SKIP_ON_CI_MARK,
marks=_FLAKY_MARK,
),
Comment thread
huidongc marked this conversation as resolved.
# newton + newton_renderer (warp)
pytest.param(
Expand Down
5 changes: 5 additions & 0 deletions tools/test_settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,11 @@
"test_shadow_hand_vision_presets.py": 5000,
"test_environments_newton.py": 5000,
"test_surface_gripper.py": 3000,
# For some reason kitless rendering tests take much longer on CI than local machines.
# After we pin OVRTX to 0.3 we need to test whether it is still reproducible.
"test_rendering_cartpole_kitless.py": 2000,
"test_rendering_dexsuite_kuka_kitless.py": 2000,
"test_rendering_shadow_hand_kitless.py": 2000,
}
"""A dictionary of tests and their timeouts in seconds.

Expand Down
Loading