タグ

memoryに関するamachangのブックマーク (5)

  • Firefox、leak-gauge、メモリリークを調べる - 実用

    Firefoxのメモリリーク解析ツール:leak-gauge 上記に書かれている通りです。普通のFirefoxリリースビルドで動作しているように見えました(ここにも書いてある)。 まず以下のバッチファイルからFirefoxを起動する。そして、普通のブラウジング操作をする。問題と思われる拡張を使ったりして。 set NSPR_LOG_MODULES=DOMLeak:5,DocumentLeak:5,nsDocShellLeak:5set NSPR_LOG_FILE=nspr.log "C:\Program Files\Mozilla Firefox\firefox.exe" Firefoxを終了すると、バッチファイルと同じディレクトリにnspr.logができてる。内容は、以下のようなもの。 0[2c4928]: DOCUMENT 1db9db0 created0[2c4928]: DOCUM

    amachang
    amachang 2007/11/08
    メモリリークの検出。環境変数 NSPR_LOG_MODULES NSPR_LOG_FILE によって nspr.log というログを取ることが出来る。
  • データ型のアラインメントとは何か,なぜ必要なのか?

    以前このサイトとブログに,何度かアラインメントに関する記事を書きました (サイト内関連ページ参照). そのせいか「アラインメント」で検索して来てくれる人が多いので, 過去の記事に加筆修正してこのページを新たに作成しました. 加筆した点は次のとおりです. アラインメントとメモリアクセス回数の関係をわかりやすくするため, (ほんの少し) 図を導入しました. 「データがアラインされていないとメモリアクセス回数が増える」 と言葉で説明しているサイトは多いのですが, 図で示しているところはまだ見たことありません. アラインされていないアドレスにデータを書き込む場合, 読み出しの場合以上にメモリアクセス回数がかかる可能性があることを追記しました. 以前は「複合データ型 (配列,構造体,共用体) のアラインメント」はほとんど自明のことだと思っていたので軽く流していましたが, 意外なことにこれを解説してい

    amachang
    amachang 2007/09/19
    何故アラインメントしなきゃダメか。→読み出しで2回分&書き込みで4回分メモリアクセスが必要になるから。CPUによっては不正アラインメント例外が発生する。
  • フリーソフトウェア徹底活用講座(8)

    ● コメントの形式 C++ではコメントを次のように記述します. #include <stdio.h> //typedef short t_id; //コメント行 int foo(t_id x); int main(void) もちろんオプションに-ansiまたは-traditionalを指定した場合には,C++方式のコメントは認識されません.ほかの多くのCの実装でもこのようなコメントを使うことができるので,ソースをANSIに限定しなくてよいのなら,このコメント形式を使って問題ないでしょう(リスト7). #include <stdio.h> //コメント typedef short t_id; int foo(t_id x); int main(void) { int result; t_id y; printf("start\n"); y = 2; result = foo(y); pri

    amachang
    amachang 2007/09/19
    __attribute__((aligned(x))) とするとアラインメントが揃う。リザーブとか使わなくてもいい。
  • 404 Blog Not Found:perl - In-Memory File

    2006年11月08日04:30 カテゴリLightweight Languages perl - In-Memory File Perl 5.8以降では、このような場合にin-memory fileが使えます。 【続】やはり Perl はメモリ喰いな言語。データ型の内部構造 :: Drk7jp DB上の全レコードをいったん perl 側の配列に格納して、その結果を返す。ってコードなのですが、当然ながらレコード数が多くなればメモリをうのは当たり前なのですが、以前の記事の内容を完全に忘却してました。ここには落とし穴があるのです。使い方は、簡単です。 my @array = (0x21..0x7e); my $memfile; open my $wfh, '>', \$memfile or die $!; print $wfh chr($_), "\n" for (@array); clos

    404 Blog Not Found:perl - In-Memory File
  • Mozilla Firefox Thunderbird の拡張あれこれ-MEMO Permanent Links(2006年10月その3)

    Mozilla Firefox Thunderbird の拡張あれこれ - MEMO Permanent Links(2006年10月-3) ■(10/22c) 拡張の対応バージョン もじかけら 「T-shirt Update and Firefox 2 Add-ons Compatibility」2006-10-21 の記事は Firefox 2.0 に拡張を対応させよという Mozilla からの通達を紹介しています.2.0 対応:530、1.5 まで:701、2.0 Beta まで:58、1.0 まで:442とのこと.530 + 701 + 58 + 442 = 1731 個の拡張が Mozilla Add-ons にはあるということですね.1.0 までにしか対応していないものは削除だそうです.そんなむごい、バージョンの問題だけで対応していないものもあるはずなのに. バージョンは

  • 1