Skip to content

v1.8.1

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 01 Aug 17:41
· 272 commits to main since this release
v1.8.1
ad1092b

This patch release primarily contains bug fixes as expected.

However, to support the adoption of Warp by the MuJoCo MJX physics engine, it also includes new features and deprecations limited to the jax_experimental module. We are flagging this deviation from our standard versioning practices to ensure clarity. Normal versioning practices will resume with the next release.

Full Changelog

Deprecated

  • This is the final release that will provide builds for or support the CUDA 11.x Toolkit and driver. Starting with v1.9.0, Warp will require CUDA 12.x or newer.
  • Deprecate the graph_compatible boolean flag in jax_callable() in favor of the new graph_mode argument with GraphMode enum (#848).

Added

  • Add documentation for creating and manipulating Warp structured arrays using NumPy (#852)
  • Add documentation for wp.indexedarray() (#468).
  • Support input-output aliasing in JAX FFI (#815).
  • Support capturing jax_callable() using Warp via the new graph_mode parameter (GraphMode.WARP), enabling capture of graphs with conditional nodes that cannot be used as subgraphs in a JAX capture (#848).

Fixed

  • Fix tape.zero() to correctly reset gradient arrays in nested structs (#807).
  • Fix incorrect adjoints for div(scalar, vec), div(scalar, mat), and div(scalar, quat), and other miscellaneous issues with adjoints (#831).
  • Fix a module-hashing issue for functions or kernels using static expressions that cannot be resolved at the time of declaration (#830).
  • Fix a bug in which changes to wp.config.mode were not being picked up after module initialization (#856).
  • Fix a bug where CUDA modules could get prematurely unloaded when conditional graph nodes are used.
  • Fix compile time regression for kernels using matmul, Cholesky, and FFT solvers by upgrading to libmathdx 0.2.2 (#809).
  • Fix potential uninitialized memory issues in wp.tile_sort() (#836).
  • Fix wp.tile_min() and wp.tile_argmin() to return correct values for large tiles with low occupancy (#725).
  • Fix codegen errors associated with adjoint of wp.tile_sum() when using shared tiles (#822).
  • Fix driver entry point error for cuDeviceGetUuid caused by using an incorrect version (#851).
  • Fix an issue that caused Warp to request PTX generation from NVRTC for architectures unsupported by the compiler (#858).
  • Fix a regression where wp.sparse.bsr_from_triplets() ignored the prune_numerical_zeros=False setting (#832).
  • Fix missing cloth-body contact in wp.sim.VBDIntegrator with handle_self_contact=False (#862).
  • Fix a bug causing potential infinite loops in the color balancing calculation (#816).
  • Fix box-box collision by computing the contact normal at the closest point of approach instead of at the center of the source box (#839).
  • Fix the OpenGL renderer not correctly displaying colors for box shapes (#810).
  • Fix a bug in OpenGLRenderer where meshes with different scale attributes were incorrectly instanced, causing them all to be rendered with the same scale OpenGLRenderer (#828).