メモリ消費量
メモリ消費量の削減
Section titled “メモリ消費量の削減”共有アリーナベースアロケータ
Section titled “共有アリーナベースアロケータ”共有アリーナベース割り当てを設定することで、複数のセッション間でメモリ消費量を削減できます。C API ドキュメントの「セッション間でアロケータを共有する」セクションを参照してください。
mimalloc アロケータの使用
Section titled “mimalloc アロケータの使用”ONNX Runtime は、高速で汎用的なアロケータである mimalloc を使用してメモリ割り当てをオーバーライドすることをサポートしています。
モデルと使用方法によっては、パフォーマンスの一桁または二桁の改善を実現できます。GitHub の README ページでは、パフォーマンスチューニングに mimalloc を活用する方法について様々なシナリオが説明されています。
mimalloc は ONNX Runtime ソースツリーのサブモジュールです。Windows では、--use_mimalloc ビルドフラグを使用することができ、これにより mimalloc の静的バージョンがビルドされ、ONNX Runtime にリンクされます。これにより、ONNX Runtime アロケータとすべての new/delete 呼び出しが mimalloc にリダイレクトされます。
現在、Linux で mimalloc を使用するための特別な仕組みはありません。別途ビルド/取得できる mimalloc のプリビルドバイナリを使用して LD_PRELOAD メカニズムを使用することが推奨されます。