タグ

ブックマーク / kuenishi.hatenadiary.jp (4)

  • あなたの知らない time(1) の世界 - kuenishi's blog

    自分が書いたプログラムのメモリ使用量を測定したいことがある。プログラムがOOM Killerによってお亡くなりになった場合や、ページフォルトをなくして高速化したい場合などだ。定常的に起動するサーバーのプログラムなら、sarや meminfo など(今なら Datadog とかだろうか)を使ってじーっと見つめるわけだ。もっとモダンにやるなら perf や DTrace を使ってもよいかもしれない。しかしこれらのツールは基的にプロセスIDを渡してサンプリングして外から覗く方法だ。 わたしのユースケースはデーモンプロセスではなく、 main から入って必要な計算をして、それが終わったら main を抜けるバッチジョブ(単にコンソールから実行して終わるまで待つ、いわゆる "Hello world!" 的なやつ)だ。これだと、プログラムが起動して終わるまでそこそこの時間で終わってしまって、外部プロ

    あなたの知らない time(1) の世界 - kuenishi's blog
    shomah4a
    shomah4a 2016/11/02
    time べんりだ
  • メモリリークとは何か - kuenishi's blog

    メモリリークに悩まされている技術者は多いだろう。メモリリークが嫌でGCという技術が開発されたといっても過言ではないし、歴史的にはC++からJavaへシフトが起きた大きな理由のひとつといっていい。Unix系の簡単な定義でいえば、ヒープ領域を指すポインタ(アドレス)をロストしてしまえばそのメモリはもう漏れたといってよい。たとえばこういったコードだ。 struct { int i; char c; } spam; int main(){ void* p; int i; for(i=0; i<1024; ++i){ p = malloc(sizeof(struct spam)); } pause(); } このコードではpause(3)の時点で約5KBのメモリが漏れている。free(3)を使えばメモリをOSに返却できるが、アドレスが分からないので返却できない。 ところが、ここでいいたいのは、メモリ

    メモリリークとは何か - kuenishi's blog
  • zc.buildoutやろうとしてハマった話…もとい、ただのメモ - kuenishi's blog

    どうもみなさんこんばんは。なんとなくアドベントカレンダーに参加してみたところ、全然マークしていなかったid:mopemopeにいきなりキラーパスをもらってビックリして思わず社会の窓が開いてないかどうか確認してしまったkuenishiです。うーん、アルコール入ってないとなんかキレがないね。 日曜プログラマの僕がPythonネタで書くってーなると大したことはないのですが、最近docxbuilderとかFlaskとかいじってます。それを使い始める前にハマっていたのでその辺りのことです。 pipとかeasy_installとかpythonとか 私はPower Mac 8500とか言ってた頃からのマカーなのでMacOSを使っているのですが、MacOSにはプリインストールの/usr/bin/python(たいてい2.6系)と、MacPortsで入ってしまう/opt/local/bin/python(2

    zc.buildoutやろうとしてハマった話…もとい、ただのメモ - kuenishi's blog
  • node.js vs Erlang (ネタ) - kuenishi's blog

    ついぞ最近node.jsなんてのがでて、繁華街のあちこちでチヤホヤされてる。そんなときに、モヒカン族Erlang村(erlang-questions)に「node.jsってどうなの?」的燃料が投下されたわけですよ。これは炎上しそうだ…と追いかけてたら、ネタどころか案外真面目なハナシばっかりだったのですが。まずは真面目に問いかけをする純朴な成年(想像)。 「Erlang好きだし使ってるんだけど、Erlangとnode.jsてそれぞれどういうジャンルがすごいの?RabbitMQとかejabberdみたいなのつくろうとしたらどうなるの?簡単なチャットサーバーつくるくらうならnode.jsのが断然簡単だよね?分散システムで使うなら断然違うとか? Ulf Wigerによると、ブロックする関数の問題を簡単に解決してくれるとか書いてあるみたいだけど (link)」 おっお。素直な質問。これはみんな釣られ

    node.js vs Erlang (ネタ) - kuenishi's blog
    shomah4a
    shomah4a 2010/11/30
    node.js == twisted って認識は大体合っているのかな
  • 1