2005-09-01から1ヶ月間の記事一覧
Perl 5.8.7 rm -f config.sh Policy.sh sh Configure -Dcc=gcc-3.4 -Dusethreads -Dprefix=/usr -Duseshrplib -Doptimize='-O3 -march=pentium4' LD_LIBRARY_PATH=`pwd`:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH make test make install libexpat1-devとli…
うひひ。僕はチャレンジャーかもしれない。 今日届いたDual Core Opteron x 2(つまり論理CPUは4)のサーバにDebianを突っ込んだ。で、出たばっかのMySQL 5.0.13-rcにMySQL 5.0.12-beta用のsennaのパッチを当てる。 Hunk出たけど問題なさそう。 でビルドする…
やっぱSUSE Pro 9.3 for AMD64やめ。Linux側はDebianで統一しちゃおう。 で、Debian-amd64(sarge)。初心者なので http://debian.fam.cx/index.php?install#content_1_10 ここを見てインストールしようと思うが、 いきなりlinux26が通らない。 で、調べてみる…
世の中にある小汚いHTMLを、 戸塚ヨットスクールばりに更生させてくれるTidyくんですが、 ちょっと複雑なHTMLを食わせただけでかなり時間がかかります。 それだけマトモな処理をしているということなんだろうけれども。で、僕の用途としては、 XML高校に編入…
で、PostgreSQLのMLに入ってみた。 どこのほにゃほにゃusers MLも初心者の扱いに困ってるみたいね。でも、僕がイライラするのは初心者の質問ではない。 あまり知識がなかったり、 実行環境がないような状況でコードを書いて送ったりして、 的外れなアドバイ…
いまさらながら、 MySQL5.0.12-betaとPostgreSQL 8.1betaを組み合わせて使いたくなってきた。 だが、用意されているDBサーバは1つ。 同じマシンに乗せてパフォーマンス上大丈夫なのかしら。で、検索かけてみても、 お互いの宗教論争っぽいのが多くて、 実際…
あ〜ん、Tidyクン遅いよ〜 どうにかならんかしら…
#!/usr/bin/perluse utf8; binmode STDIN => ":raw"; binmode STDOUT => ":raw"; binmode STDERR => ":raw";use Benchmark;Benchmark::timethese(300000, { 's_original' =>\&s_original, 's_new' => \&s_new, });sub s_original{ my $a = 'あれ'; my $b = '…
Perlで定数を使いたい。 変更を不可にするんじゃなくて、パフォーマンスをアップするために。 で、 http://eureka.prits.jp/resources/developer/perl_memo.html によると、定数関数というのを用いるとインライン展開してくれるらしい。 で、それを自動でや…
#!/usr/bin/perluse utf8; binmode STDIN => ":raw"; binmode STDOUT => ":raw"; binmode STDERR => ":raw";use Benchmark;Benchmark::timethese(150000, { 's_regex' =>\&s_regex, 's_substr' => \&s_substr, });sub s_regex{ my $a = 'オレオレ詐欺'; if($…
Perlソース中の正規表現の最適化をしています。 後方一致をsubstr使ってやったり、とか。詳説 正規表現を読んでいないのでアレですが、 すくなくとも文を前から読んでいく仮定のもとで 決定性オートマトンが容易に思いつかない正規表現は遅いような気がする…
知能システム科学専攻というものの博士課程まで行っておきながら、 ずーっと触ってなかったSVM。 まあ、使われているから調べないと。アルゴリズム本も買うかな。http://www.kernel-machines.org/index.html でちょこちょこ。
s/[^\p{Hiragana}\p{Katakana}\p{Han}]//sg; これでうまくいくかと思いきやうまくいかず。http://homepage1.nifty.com/ton_b/intro/regex03/ によると、 否定はpを大文字にして\P{Property}とするか、\p{^Property}と否定のメタ文字を入れます。 ということ…
http://www.pure.ne.jp/~learner/program/Perl_unicode.html ここを早めに読むべきだった。use utf8とuse encoding 'utf8'、どっち使えばええねん! ってわけでuse encoding 'utf8'をしていたわけですが、 それのせいでuseしただけでdecode_xsがいっぱい呼ば…
DB_Fileで読んでいるハッシュの件数をカウントしてみた。 それぞれ、 522779,158563,12848,1250,315603,27 そりゃ遅いわ。しかもキーも長め(日本語で20文字くらい)だし。 うーん、なんかいい方法ないのかしら…
このblogのeditページを見てみると、 1位がやねうらおさん、2位がnaoyaさんと漏らす布陣に。で、naoyaさんのblogを見てみると、 UTF-8 フラグと戦う人へ http://blog.livedoor.jp/nipotan/archives/50228106.html が紹介されていた。これまた漏らす。CPAN …
CabochaではUTF-8扱えないのかしら… ちゃんと追ってないけど、マニュアル見る限りUTF-8については言及してないな。あとは、-I1の入力、ChaSen方式じゃないとダメなのかしら? Mecab対応って、Mecabを-Ochasenで呼び出してるってことかしら?せっかくEUCからU…
新しいモジュールの移植に取り組む。使っているモジュールを洗い出すために、 モジュール群をuseしてみただけのスクリプトを動かす。 で、適宜CPANからインストールとか、 ファイルパスの依存性修正とか。で、なんとかコンパイルとおるようになったんだけど…
TinySVM 0.09、perlバインディングがうまくいきましぇん。http://www.nesugi.net/diary/20050612.html から。 TinySVMのVer. 0.09を解凍 TinySVMのVer. 0.04を解凍 0.09の方のperlディレクトリを削除して、 そこに0.04のperlディレクトリをコピーして持って…
#0 0x080df04b in Perl_sv_2cv (my_perl=0x816c008, sv=0x88c1174, st=0xbfffee90, gvp=0xbfffee94, lref=0) at sv.c:7273 #1 0x080c817e in Perl_pp_entersub (my_perl=0x816c008) at pp_hot.c:2651 #2 0x080ae789 in Perl_runops_debug (my_perl=0x816c008…
gdb上でperl動かすと、Perl_sv_2cvって関数で止まった。 sv.cっていうソース名からしても、おそらくSEGVをcatchするようなところなんだろう。 backtraceは #0 0xffffffff in Perl_sv_2cv at sv.c:7273 #1 0xffffffff in Perl_pp_entersub at pp_hot.c:2651 #…
Active Perlは実装が違いすぎて、 use encoding 'utf8'; の挙動がいろいろおかしいようです。むにょ〜!!!よってActive Perlの採用はやめ! gdb上でPerl動かしてやるぜ!へへへ… 覚悟決めましたよ。
Active Perl、Linux版なんて誰が使ってるんだろう、 と思っていたけど、 Perlで不可思議なSEGVが出る問題の回避のためにインストール。で、いろんなモジュールをppmやらperl -MCPANで突っ込んでいったわけだけど、 なんかコンパイルエラーが出る。 Scalar fo…
use diagnostics;を入れたらエラー無しで終了。 use diagnostics;を入れなかったら「不正な命令」といわれて異常終了。 なぜだー!
ホッツエンポロッツふたたびあらわる。 まあ、それはどうでもいいとして、 dprofpp -Sした結果をみたところ、 Omoi::Logic::Omosugiru x 1 18.36s = (0.41 + 17.95)s XML::Clean::clean x 1 5.29s = (4.28 + 1.01)s Encode::utf8::decode_xs x 2152 0.11s = …
DProfやりなおしたらCALL回数もあんまり変わってないでやんの。 use encoding 'utf8'を指定していると。 ソースコード自体を読むときに呼ばれるのかしら? 謎。
s/^.*?$val.*?$//o って式が重いらしく。 確かに重そうだ。これを全行やるっていうのは。$valが存在したら行全体消しまっせ、いひひ、 ってことでしょ。
なんか動かしてるプログラムのとある関数がやたら重い。 DProfセンセ〜イ!! %Time ExclSec CumulS #Calls sec/call Csec/c Name 59.3 36.62 38.237 1 36.621 38.236 Omokute::Tamaran::Function 19.6 12.10 15.161 15223 0.0008 0.0010 utf8::SWASHGET ぎ…
今、とあるプログラミングのパフォーマンス向上を目指している。 というわけで、ChaSen使っている部分をMeCab利用に変えてみよう。 -Ochasenで適当に変更。
MySQL 5.0.12-beta + sennna rev.49のpatchをsenna-devに投稿しようと思って diffを取った。diff -Nurで取ったんだけど、 ディレクトリを指定したらdiffの容量がおかしいほど大きくなる。 中身見るとほぼ全文+になっていたり。 でも、個々のファイルでdiffを…