要約
格子ボルツマン法 (LBM) は、計算のスケーラビリティに対するアルゴリズムの可能性により、流体力学問題を解決するための著名な手法として浮上しています。
JAX プラットフォームに基づく Python ベースの微分可能な LBM ライブラリである XLB ライブラリを紹介します。
XLB のアーキテクチャは、アクセシビリティ、拡張性、および計算パフォーマンスを確保することを前提としており、CPU、TPU、マルチ GPU、および分散マルチ GPU または TPU システム全体で効果的にスケーリングを可能にします。
このライブラリは、新しい境界条件、衝突モデル、またはマルチフィジックス シミュレーション機能を使用して簡単に拡張できます。
XLB の微分可能性とデータ構造は、広範な JAX ベースの機械学習エコシステムと互換性があり、物理ベースの機械学習、最適化、および逆問題に対処できるようになります。
XLB は、数十億セルのシミュレーションを処理できるようにスケールアップすることに成功し、1 秒あたりのギガスケールの格子更新を実現しています。
XLB は、寛容な Apache-2.0 ライセンスの下でリリースされており、GitHub (https://github.com/Autodesk/XLB) で入手できます。
要約(オリジナル)
The lattice Boltzmann method (LBM) has emerged as a prominent technique for solving fluid dynamics problems due to its algorithmic potential for computational scalability. We introduce XLB library, a Python-based differentiable LBM library based on the JAX platform. The architecture of XLB is predicated upon ensuring accessibility, extensibility, and computational performance, enabling scaling effectively across CPU, TPU, multi-GPU, and distributed multi-GPU or TPU systems. The library can be readily augmented with novel boundary conditions, collision models, or multi-physics simulation capabilities. XLB’s differentiability and data structure is compatible with the extensive JAX-based machine learning ecosystem, enabling it to address physics-based machine learning, optimization, and inverse problems. XLB has been successfully scaled to handle simulations with billions of cells, achieving giga-scale lattice updates per second. XLB is released under the permissive Apache-2.0 license and is available on GitHub at https://github.com/Autodesk/XLB.
arxiv情報
著者 | Mohammadmehdi Ataei,Hesam Salehipour |
発行日 | 2024-04-02 15:56:38+00:00 |
arxivサイト | arxiv_id(pdf) |
提供元, 利用サービス
arxiv.jp, Google