perl

大量データ処理、トークンカウント

引き続き効率測定。今度は文字の出現回数を調べる場合。 対象データは前回同様に300万行、600MB程度。 コードはループ内の該当箇所のみ記述。 正規表現 所要時間22.8sec $count = $_ =~ s/ / /g; index 所要時間25.7sec $count = 0; $pos = -1; while(($pos …

大量データの分割、切り出し処理

スクリプトで大量のデータ処理をしていてsplitが重いと感じたので 色々比較してみた。perlのsplitは正規表現での分割なので、そんなに早くは 無いだろうと思ったが、書き方によっても結構違うようだ。 対象データは300万行、600MB程度。 行単位で読み込んで…

プロファイラ DProf

人の書いたプログラムがボトルネックになっていたので解析に DProfを使ってみた。 以前使ったときはSEGVしてまともに動かなかったが、今回はperl5.8の 環境なので普通に動いた。 perl -d:DProf hoge.pl とかやると tmon.out が実行したディレクトリに出力さ…

perl で XMLRPC

仕事で使う機会があったので調べてみた。目的はクライアント用途だけ。 Frontier-RPC かなり古い。送信時はperlの内部表現を考慮していないため、perl5.8では データを渡す時点で、Encode::encodeを掛けた後のデータである必要がある。 受信時はXML::Parser…