NVIDIA Warp
适用于 Python 的可微分空间计算
NVIDIA Warp 是一个开源开发者框架,用于在 Python 中构建和加速数据生成和空间计算。Warp 让程序员能够轻松编写用于仿真 AI、机器人和机器学习 (ML) 的 GPU 加速、基于内核的程序。借助 Warp,Python 开发者可以创建 GPU 加速的 3D 仿真工作流,从而在 PyTorch、JAX、PhysicsNeMo 和 NVIDIA Omniverse™。优势包括与原生 CUDA® 代码相当的模拟性能,以及 Python 的便利性和开发者的工作效率。
主要特性
了解 NVIDIA Warp 的实际应用
目前,许多 Python 开发者都在使用 Warp。在 Omniverse 中,团队将 Warp 用于数字人、物理模拟和程序动画。Warp 包含多个更高级别的数据结构,有助于更轻松地实现模拟和几何处理算法。
网格
三角形网格在仿真和计算机图形中随处可见。Warp 提供用于管理网格数据的内置类型,支持几何查询,例如最近点、光线投射和重叠检查。
稀疏卷
稀疏体积对于表示大型域上的网格数据非常有用,例如复杂对象的带符号距离场 (SDF) 或大规模流体流动的速度。Warp 支持使用 NanoVDB 标准定义的稀疏卷。
哈希网格
许多基于粒子的模拟方法,例如离散元素法 (DEM) 或平滑粒子流体动力学 (SPH) ,都涉及对空间近邻进行迭代,以计算力相互作用。哈希网格是一种成熟的数据结构,可加速这些最近邻点查询,特别适合 GPU。

机器人开发
在本示例中,Warp 用于使用 AirSim 空气动力学模型模拟四旋翼无人机的动力学。通过 Warp 的可微分模拟功能,用户可以编写基于模型的预测控制器 (MPC) ,通过考虑障碍物和目标的损失函数来优化无人机的轨迹。

仿真
在这里,您可以看到 Warp 用于为车辆周围的空气动力学模拟创建不可压缩的流求解器。Warp 通过 NanoVDB 为多维数组和稀疏碰撞场提供内置支持,以准确表示车辆的碰撞几何图形。

训练和优化
我们还可以使用 Warp 来解决初始值问题。得益于 Warp 的可微分内核,我们能够模拟球的轨迹并获得相对于初始速度的梯度。然后,可以在 PyTorch 或 JAX 中使用这些梯度来优化轨迹,并在几秒钟后击中目标。
加速 CAE 工具开发
Warp 使计算机辅助工程 (CAE) 行业开发者能够加速基于物理的 CAE 仿真,并使用支持 AI 的数字孪生进行实时交互式设计。Warp 让程序员能够轻松编写用于 CAE 和机器学习的基于内核的程序。Warp 支持 PyTorch、JAX、PhysicsNeMo 和 NVIDIA Omniverse。
隆重推出新一代开源物理模拟引擎 Newton
Newton 是 NVIDIA、Google DeepMind 和迪士尼研究团队合作开发新型开源物理引擎的成果。Newton 基于 NVIDIA Warp 构建,针对机器人技术进行了优化,并与 MuJoCo Playground 或 NVIDIA Isaac™ Lab 等学习框架兼容。
资源
访问 Github 下载最新版本的 NVIDIA Warp 软件。