2010-01-01から1年間の記事一覧

sysdump meminfo の emulator間の違い

sysdump meminfo について、Froyo/Eclair(emu)で動作が異なることに気づいた。 Eclairでは、allocated が 16Mを超えると、OutOfMemoryになるが、 Froyoでは、allocated が 16Mを超えても、OutOfMemoryにはならない。 Froyoのvm.heap.sizeは16Mに設定されてい…

SoftReferenceとBitmapオブジェクト

SoftReferenceを使うと、OutOfMemoryが発生する前のGCによって オブジェクトを解放させることができる。*1ただし、SoftReferenceを利用しても、OutOfMemoryが発生することもあります。 Bitmapオブジェクトは、Naiveヒープに画像データを保存します。 このNat…

Max Heap サイズの変更

以前は、CUSTOM_RUNTIME_HEAP_MAX によって定義されていたようだが、 eclairでは、プロパティ「dalvik.vm.heapsize」で決まるようである。 strcpy(heapsizeOptsBuf, "-Xmx"); property_get("dalvik.vm.heapsize", heapsizeOptsBuf+4, "16m"); //LOGI("Heap s…

ヒープサイズ

ヒープは、Javaだけでなく、Nativeでも消費される。 たとえば、BitmapFactoryにより、Bitmapオブジェクトを生成した時、 画像データは、Nativeヒープが使われている。 (malloc()で確保されているようです)以下のdumpsysコマンドでjava/nativeそれぞれのメモ…

読みたいもの

http://stackoverflow.com/questions/1945142/bitmaps-in-android

気になること

Nativeのメモリ使用量・計測方法ddms sysinfothrow life さんのオブジェクト管理の話 http://www.adamrocker.com/blog/248/overview-of-the-dalviks-object-management.htmlDalvikVM 内部動作についてのまとめ http://togetter.com/li/13564プロセスのメモリ…

Gingerbreadのddms起動

Android-9へバージョンアップすると、 android-sdk-windows以下のファイル構成が変更される。その結果、ddms.batがadbを認識できす、エラーを吐く。環境変数Pathに、android-sdk-windows\platform-tools を追加すれば動く。

Eclipse(Helios) へのMemoryAnalyzerのインストール

メニューより、「ヘルプ」→「新規ソフトウェアのインストール」 インストールウィンドウより、「作業対象」=http://download.eclipse.org/releases/helios General Purpose Toolより、以下を選択 Memory Analyzer Memory Analyzer(Charts) [optional] 後は…