Skip to content

MjWarp dependency upgrade#735

Merged
adenzler-nvidia merged 3 commits into
newton-physics:mainfrom
adenzler-nvidia:dev/adenzler/another-package-upgrade
Sep 4, 2025
Merged

MjWarp dependency upgrade#735
adenzler-nvidia merged 3 commits into
newton-physics:mainfrom
adenzler-nvidia:dev/adenzler/another-package-upgrade

Conversation

@adenzler-nvidia

@adenzler-nvidia adenzler-nvidia commented Sep 4, 2025

Copy link
Copy Markdown
Member

fixes bug in convex-plane collision that was crashing the benchmarks.

Newton Migration Guide

Please ensure the migration guide for warp.sim users is up-to-date with the changes made in this PR.

  • The migration guide in docs/migration.rst is up-to date

Before your PR is "Ready for review"

  • Necessary tests have been added and new examples are tested (see newton/tests/test_examples.py)
  • Documentation is up-to-date
  • Code passes formatting and linting checks with pre-commit run -a

Summary by CodeRabbit

  • Chores
    • Updated benchmarking configuration to use a newer Mujoco Warp dependency, aligning performance measurements with upstream changes.
    • Refreshed setup steps for the benchmarking environment to improve reliability and consistency across runs.
  • Tests
    • Adjusted ASV benchmark installation process to ensure stable, reproducible test execution.

No user-facing changes. Functionality remains unchanged and no action is required from end-users.

Signed-off-by: Alain Denzler <adenzler@nvidia.com>
@coderabbitai

coderabbitai Bot commented Sep 4, 2025

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

ASV configuration updated to pin the mujoco_warp dependency to a new Git commit in the install_command. No other configuration entries or logic were changed.

Changes

Cohort / File(s) Summary
ASV config update
asv.conf.json
Updated mujoco_warp install_command to use commit 64bb938f87b6aaf840753ef9ddc198db655020c0 instead of ca6e29285b856cc06bd39127aafadbf4dd56f944.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related PRs

Suggested reviewers

  • preist-nvidia
  • shi-eric
✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore or @coderabbit ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Signed-off-by: Alain Denzler <adenzler@nvidia.com>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 0

🧹 Nitpick comments (2)
asv.conf.json (2)

22-22: Freeze transitive deps for reproducibility: add --no-deps to the VCS install.

Reduces benchmark drift from upstream dependency changes; explicit upper-level pins here already cover the main stack.

Apply this diff:

-    "python -m pip install git+https://github.com/google-deepmind/mujoco_warp@64bb938f87b6aaf840753ef9ddc198db655020c0",
+    "python -m pip install --no-deps git+https://github.com/google-deepmind/mujoco_warp.git@64bb938f87b6aaf840753ef9ddc198db655020c0",

17-24: Optional: add a constraints file to lock transitive versions across all installs.

Prevents subtle perf deltas from indirect upgrades during ASV runs.

Example approach (one-time, not a hard requirement):

  • Maintain asv/constraints.txt checked into the repo.
  • Prefix install steps with PIP_CONSTRAINT=asv/constraints.txt, e.g.:
    • 'PIP_CONSTRAINT=asv/constraints.txt python -m pip install -U numpy'
    • Repeat for each pip install entry.
📜 Review details

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between 7d171db and d4636ef.

⛔ Files ignored due to path filters (1)
  • uv.lock is excluded by !**/*.lock
📒 Files selected for processing (1)
  • asv.conf.json (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📓 Common learnings
Learnt from: shi-eric
PR: newton-physics/newton#521
File: newton/examples/example_cloth_hanging.py:36-36
Timestamp: 2025-08-12T05:17:34.423Z
Learning: The Newton migration guide (docs/migration.rst) is specifically for documenting how to migrate existing warp.sim functionality to Newton equivalents. New Newton-only features that didn't exist in warp.sim do not need migration documentation.
Learnt from: nvlukasz
PR: newton-physics/newton#519
File: newton/_src/solvers/featherstone/kernels.py:75-75
Timestamp: 2025-08-12T18:04:06.577Z
Learning: The Newton physics framework requires nightly Warp builds, which means compatibility concerns with older stable Warp versions (like missing functions such as wp.spatial_adjoint) are not relevant for this project.
🔇 Additional comments (3)
asv.conf.json (3)

22-22: LGTM on pinning mujoco_warp to a specific commit for reproducible ASV runs.

This should help stabilize benchmark environments.


19-22: Double-check runner compatibility with CUDA 12.8.

The pinned torch 2.7.1+cu128 wheel requires CUDA 12.8-capable runners; otherwise installs will fail.

Confirm CI/ASV machines expose CUDA 12.8, or gate this to a CUDA-enabled job and provide a CPU fallback if needed.


22-22: No changes required.

@adenzler-nvidia adenzler-nvidia merged commit 969154f into newton-physics:main Sep 4, 2025
12 checks passed
This was referenced Sep 29, 2025
@coderabbitai coderabbitai Bot mentioned this pull request Dec 11, 2025
eric-heiden pushed a commit to eric-heiden/newton that referenced this pull request Jan 28, 2026
Signed-off-by: Alain Denzler <adenzler@nvidia.com>
mmacklin pushed a commit to mmacklin/newton that referenced this pull request Apr 7, 2026
Signed-off-by: Alain Denzler <adenzler@nvidia.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants