コンテンツにスキップ

メモリ消費量

共有アリーナベースアロケータ

Section titled “共有アリーナベースアロケータ”

共有アリーナベース割り当てを設定することで、複数のセッション間でメモリ消費量を削減できます。C API ドキュメントの「セッション間でアロケータを共有する」セクションを参照してください。

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 メカニズムを使用することが推奨されます。