リブメム

libumemは、メモリ割り当てを管理するために使用されるメモリアロケータユーザ空間ライブラリです。[ 1 ] [ 2 ]また、アプリケーションのメモリ管理バグの検出にも使用できます。これはSlabアロケータの概念に基づいています。libumemは、Solaris 9 Update 3以降、 Solarisの標準機能として利用可能です。

機能

このライブラリの関数は、マルチスレッドアプリケーションをサポートし、高速でスケーラブルなオブジェクトキャッシュメモリ割り当てを提供します。標準のmalloc(3C)ファミリ関数と、より柔軟なumem_alloc(3MALLOC)ファミリ関数に加えて、libumemはumem_cache_create(3MALLOC)で説明されている強力なオブジェクトキャッシュサービスを提供します。[ 3 ]

libumem を使い始めるのは簡単です。LD_PRELOAD を "libumem.so" に設定するだけで、実行されるすべてのプログラムは libumem の malloc(3C) と free(3C)(または new と delete)を使用します。[ 4 ] このスラブアロケータは、多数のスレッドと多数の CPU を持つシステム向けに設計されています。単純なアロケータによるメモリ割り当ては、深刻なボトルネックになる可能性があります。

参照

出典

  1. ^ 「2001年USENIX年次技術会議議事録」 (PDF) USENIX協会、2001年。
  2. ^ "github / omniti-labs / portableumem" . github.com. 2010年6月27日. 2020年8月4日閲覧
  3. ^ 「libumemによるメモリリーク検出」 。 2013年10月23日時点のオリジナルよりアーカイブ2013年10月22日閲覧。
  4. ^ 「Adam Leventhal's Weblog」 。2017年3月25日時点のオリジナルよりアーカイブ