タグ

performanceとperlに関するyokochieのブックマーク (9)

  • ロードアベレージを監視して任意のコマンドを実行するコマンド - blog.nomadscafe.jp

    とあるサーバでロードアベレージが上がったときに何が起きているか知りたくなったので書いてみました。他に似たツールがあれば教えて欲しいです cpan: https://metacpan.org/release/App-LoadWatcher github: https://github.com/kazeburo/App-LoadWatcher インストール インストールはcpanmを使います $ cpanm App::LoadWatcher cpanmが入っていないなら $ curl -L http://cpanmin.us/ | perl - App::LoadWatcher とすると楽です 使い方 ロードアベレージが「0.6」以上のときにuptimeを表示するには $ load_watcher -l 0.6 -- uptime こんな感じです。ハイフン2つ書いたあとにコマンドを書きます オ

  • ApacheBenchを使いたいけどApacheを入れるのがだるかったのでベンチマークツール書いた - 時計を壊せ

    なんでこんな事をしたんですか?*1 昨日、コンソール開いたんです。コンソール。 そしたらなんかabコマンド打ってもApacheBench使えないんです。 で、よく見たらなんかApacheが入ってなくて、"command not found: ab"とか書いてあるんです。 もうね、アホかと。馬鹿かと。 お前らな、ApacheBench如きで普段使ってないApache入れるかよ、ボケが。 Apacheだよ、Apache。 なんか沢山モジュールとかも付いてるし。1台何役だよ。おめでてーな。 よーしついでだからこれもこれも使うといいぞー、とか言って色々いれてくるの。もう見てらんない。 お前な、ApacheBenchだけよこしてさっさと消えろと。 サーバーってのはな、もっと殺伐としてるべきなんだよ。 ネットワーク越しのイカれた奴といつ喧嘩が始まってもおかしくない、 落ちるか落ちないか、そんな雰囲気が

    ApacheBenchを使いたいけどApacheを入れるのがだるかったのでベンチマークツール書いた - 時計を壊せ
  • each()は遅い上に微妙な問題も起きやすい - Islands in the byte stream (legacy)

    特別な条件がないかぎり、each()は使うべきではありません。代わりにkeys()/values()を使うべきです。その理由は2つあります。 each()は遅い each()でハッシュ全体をループするのは遅いです。これは、keys()/values()がその内部の値をそのまま参照する*1のに対し、each()は代入しないとその値を使えないからです。 ベンチマーク: #!perl use strict; use warnings; use Benchmark qw(cmpthese); my %hash = map { $_ => $_ } ( 1 .. 10000 ); cmpthese -1, { each_k => sub { while(my $key = each %hash) { } }, each_kv => sub { while(my($key, $value) = eac

    each()は遅い上に微妙な問題も起きやすい - Islands in the byte stream (legacy)
  • Perlでファイルの一括読込 - D-6 [相変わらず根無し]

    Perlでファイルの一括読込 2011年4月27日 01:19 D | ブログ記事のURL | コメント(0) | トラックバック(0) なんかtwitter見てたらこういうのを貼ってる人がいたので、一応書いておく。 Perlでファイルを一気に読み込むのは local $/; <$fh> が一番速い。 open my $fh, '<', "/path/to/file.txt" or die "failed to open file: $!"; my $content = do { local $/; <$fh> }; いずれにせよ大きいファイルを処理する場合はこういう風に一気に読み込むのは効率悪い。それを分かった上で、それでも1行ずつ改行コードが取り除かれた状態で配列に読み込みたいならこれをsplitするのが一番速い。 open my $fh, '<', "/path/to/file.

  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
  • encode/decode より find_encoding のが速いのは知ってたけどここまでか - だるろぐ

    今更ネタが続く。 くりかえしdecode()とencode()する場合には、OOインターフェースを使った方が高速です。なぜなら(de|en)codeが文字コード名を解決する手間がなくなるからです。 404 Blog Not Found:perl - Encode 入門 と言われているのは知ってたけど実際は毎回 decode('euc-jp', $str) とかしてて実際どんくらい違うのかなーとふと思って use strict; use warnings; use Benchmark qw/:all/; use Encode qw/find_encoding encode decode/; my $euc = find_encoding('euc-jp'); my $utf = find_encoding('utf-8'); open my $fh, "<", "euc.txt"; my @

    encode/decode より find_encoding のが速いのは知ってたけどここまでか - だるろぐ
  • Faster.pm の中身の話 - tokuhirom's blog

    mlehmann の Faster.pm という Perl 用 JIT があるのだが、これの仕組み。 op_entersub をフックするop_entersub にはいるタイミングで発動! op tree を C のコードに変換するcc するdynaloader でよみこむといった具合。基的には Shibuya.pm で発表済のだれでもしっているようなテクニックをつかっている。 これはだいたい 20% ぐらいはやくなるらしい。まあ妥当なかんじか。とはいえテストとおらないしまともにうごかないので、当かどうかはわからない。 結局 run_ops まわりの部分がインラインで最適化されるという点におけるメリットぐらいで、各 opcode の操作はそれぞれの中でやっているわけだから、納得できる数字かとおもう。ただ、実際にそのテストにつかったコードってのがないんで、なんともいえないけど。 実用とい

  • perl でシリアライズのベンチマークをとってみた

    Perl でシリアライズの方法が色々あるのでちょっとベンチマークをとってみた。 ちなみに試したのは Storable, FreezeThaw, Data::Dumper, XML::Dumper の4つ。 結果だけを先にいうと一番のおすすめは Data::Dumper でファイルに出力し、eval するのが一番よさげ。 ベンチマークをとったコード(シリアライズ) #!/usr/bin/perl use strict; use warnings; use Benchmark qw/cmpthese/; use Storable; use FreezeThaw; use Data::Dumper; use XML::Dumper; $| = 1; package Human; use base qw/Class::Accessor::Fast/; __PACKAGE__->mk_accesso

    perl でシリアライズのベンチマークをとってみた
  • LAMP vs. LAMP──mod_perlとmod_phpのパフォーマンス比較 | OSDN Magazine

    ダイナミックWebサイトの構築ではPerlPHPが広く使われている。なにしろ、LAMPスタック(Linux、Apache、MySQLPerl/PHP/Python)に含まれる「P」の3分の2なのだ。それでは、通常のWebプログラミングでは、mod_perlとmod_phpのパフォーマンスはどちらがよいのだろうか。ちょっとしたテストをしてみたので報告する。 テストは、一般にWebホストとして提供されていると思われる環境で行った。テストで使用したCompaq ProLiant DL380の仕様とソフトウェアは、次のとおり。 700MHz Pentium III 1GB RAM Red Hat Enterprise Linux 3 Apache 2.0.46 MySQL 3.23.58 Perl 5.8.0 PHP 4.3.2 テストに使ったPerlPHPのプログラムは、それぞれ、HTML

    LAMP vs. LAMP──mod_perlとmod_phpのパフォーマンス比較 | OSDN Magazine
  • 1