Nvidia-Newton物理仿真引擎记录
1. 前言
砚上三五笔,落墨鹧鸪啼
本文用于记录:Nvidia-新物理仿真引擎Newton。
笔者梦到哪里写到 哪里。。。😃
如有不对,欢迎评论区指正!
2. 正文
2.1 overview

2.2 Warp
-
Nvidia Warp
-
Cuda直接调用C,CPP接口,Warp提供了API for Cuda调用。
“Tile-based”是一个在游戏开发、图形学和地理信息系统等领域广泛使用的技术和设计理念。它的核心思想是:将一个大而连续的空间或图像,分割成许多个小的、规则排列的、可重复使用的单元,这些单元就叫做“Tile”(图块)。 -
standalone 自包含的,独立的,这种方法包含环境的全部(isaaclab里面的文件夹名称)
-
可修改底层的kernel实现更好的solver结构
-
Warp重新包装了PhyX的Cpp的形式。

2.3 pipeline

2.5 Contact solver
- 最早Phyx基于JAX,这种tensor-based的方法实现。
- warp基于kernel的GPU加速的计算模式。
@warp的装饰器
- tile-based的运算方法。
https://blog.csdn.net/weixin_43844521/article/details/133944040
CUDA的操作,矩阵分块,共享内存,快速执行
2.7 Newton Solvers
其实包含很多的solver,这是一个泛称。canonical的solver实现。是一个很ganeral的solvers,包含了很多的solver。
-
VBD solver。Vertex Block Descent Solver
将顶点分组成块去加速优化和仿真。 -
Implicit MPM Solver
高效的模拟连续介质的、流体与固体耦合等的场景。比如沙子,雪等。 -
Style3D Solver
布标仿真的solver,针对布料的仿真优化。 -
多solver的coupling的情况。
2.8 Isaac lab集成
- --headless --newton_visualizer
去调用,基于OPENGL的简化界面。
2.9 时间线
- 2025。9月,发布支持Mujoco Warp-GA的Release,Neural Solver
- 2026.3 发布Newton 1.0, 和Isaac Lab 3.0 Release,kamino求解器的实现。(Disney Research的贡献)。
3. 后记
Q&A
- 是不是只有仿真越真实,机器人的模型部署和真实的效果才会越来越好??
- DGX Spark的AI,是Arm版本的,Neural solver目前还没有完整的论文等的集成。NERD
- 和Phyx 的区别
只能说Physics X对大场景的集成,而Newton在GPU并行优化上有所提升,精细化操作也更好(他自己说的)。最早的集成会在Isaac Lab。
- kamino solver目前还没有开源。
- openGl的solver是没有RTX的依赖的,但是如果达到比较逼真得效果就还需要Ominverse得底层的一些库,如果任务需要一些渲染,就需要RTX core的显卡,不需要 渲染的话就不必使用。
- Newton的数据结构都是使用的Warp Array,这是里面的数据结构。Fabric一般指USD里面渲染的一些状态。
- Mujoco支持Tendon的支持。
- 软体接触可以仿真静摩擦力吗?可以。
- 未来sim2sim的验证,是不是有望在Newton上做,而不是在mujoco或者Gazebo上。
- 多面片的mesh的地形仿真。
- Newton支持肉体和流体的仿真吗?支持。
- 不同的物理建模,底层的偏微分方程的,通过数值迭代的方法区求解一些方程。所以不可避免得要实现偏微分方程的求解。
- 先和Isaac Lab进行集成后再进行isaac sim的集成。。。。。
- 如果Newton支持可微分,后面有可微分的solver的支持,比如碰撞的反传。有使用Warp 可微分的性质加快强化学习的policy的收敛????
- Mujoco是不支持可微分的?
- Warp和TensorRT有区别吗?
这是 TensorRT 最核心、最有效的优化手段。
问题:一个神经网络由许多细小的操作(层)组成,如卷积、激活函数(ReLU)、偏置加法等。如果每个操作都单独启动一个 GPU 内核,会产生大量的内核启动开销和内存读写操作。
解决方案:TensorRT 会分析计算图,将多个相邻的、可以合并的操作融合成一个单一的、更复杂的 GPU 内核。
下面是一些常见的实现的步骤:
步骤。导出模型:从你的训练框架(PyTorch, TensorFlow等)中将模型导出为一个中间格式,最常用的是 ONNX。
构建优化引擎:
使用 TensorRT 的 Builder 读取 ONNX 模型。
Builder 会执行上述的所有优化操作(图融合、精度校准等)。
最终生成一个高度优化的、序列化后的文件,称为 TensorRT 引擎(.engine 文件)。这个引擎是特定于你的目标 GPU 模型和 TensorRT 版本的。
部署推理:
在你的应用程序中,加载这个 .engine 文件。
创建一个 TensorRT Runtime 实例。
将输入数据送入引擎,执行推理,并获得输出结果。
不用tensorRT的话,模型的推理速度会更慢。
- kamino solver是针对铰链机器人的,以及支持一些并联结构的机器人仿真。(Disney Research的研究)。
- Newton主要在GPU加速上通过Warp框架的集成来提升性能。物理精度上有一些明显的提升。PhysX不支持多粒子的仿真,但是Newton支持。
- Newton的solver相比于mujoco的软体、布料等仿真,以及未来集成进来disney research的kamino solver的支持并联 结构的solver,但是mujoco的solver还是对铰链的结构仿真更好。
- 支持土壤参数吗?MPM solver的土壤的参数的模拟。
- 灵巧手的接触力的solver的 IPC solver 北京大学开源 的灵巧手接触力。
To be continued....

浙公网安备 33010602011771号