タグ

mallocに関するgemini7のブックマーク (2)

  • Linux(x86)で使えるメモリサイズ

    Linux(x86)で使えるメモリサイズ x86 (386, 486, Pentium ...) の Linux では,最新のカーネルを使えば 64GB まで使える,などと聞かれたことがあるかも知れませんが,これはシステム全体として使えるメモリサイズで,1 プロセスではこんなに使えません。まず,32bit のアーキテクチャということで 4GB (2^32B) の壁があるのですが,実は更に制限があります。 簡単にまとめますと, 1回の malloc のサイズが 128kB 以下のものの合計: 約 1GB まで 1回の malloc のサイズが 128kB 以上のものの合計: 約 2GB まで となっています。要するに,大きなサイズで malloc してると 2GB まで, 細かく malloc してると 1GB までしかつかえない,ということです。 それぞれアドレス空間の別の部

  • Doug Lea の malloc (dlmalloc) - bkブログ

    Doug Lea の malloc (dlmalloc) 小さなオブジェクトを大量に new しまくるプログラムを C++ で書いたところ、処理時間の多くが malloc() に費やされていることがわかりました。このような場合、自前でメモリ管理を行って最適化するという方法がありますが、なかなか大変です。 そこで、安易に高速な malloc に置き換えてみようということで、 Doug Lea の malloc (通称 dlmalloc) の最新版を試してみました。 dlmalloc の使い方 dlmalloc は 1ファイルをダウンロードしてビルドすれば使えます。次のように実行すると共有ライブラリ libdlmalloc.so を作れます。現時点でのバージョンは 2.8.3 でした。 % wget ftp://g.oswego.edu/pub/misc/malloc.c % gcc -O2

  • 1