2005-09-01から1ヶ月間の記事一覧

AppServer設定

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…

MySQL 5.0.13-rc with senna(rev.50) compiled with gcc-3.4 On Debian-amd64(sarge)

うひひ。僕はチャレンジャーかもしれない。 今日届いた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が通らない。 で、調べてみる…

さようならTidy

世の中にある小汚いHTMLを、 戸塚ヨットスクールばりに更生させてくれるTidyくんですが、 ちょっと複雑なHTMLを食わせただけでかなり時間がかかります。 それだけマトモな処理をしているということなんだろうけれども。で、僕の用途としては、 XML高校に編入…

技術系MLほにゃほにゃ

で、PostgreSQLのMLに入ってみた。 どこのほにゃほにゃusers MLも初心者の扱いに困ってるみたいね。でも、僕がイライラするのは初心者の質問ではない。 あまり知識がなかったり、 実行環境がないような状況でコードを書いて送ったりして、 的外れなアドバイ…

ハイブリッドするする

いまさらながら、 MySQL5.0.12-betaとPostgreSQL 8.1betaを組み合わせて使いたくなってきた。 だが、用意されているDBサーバは1つ。 同じマシンに乗せてパフォーマンス上大丈夫なのかしら。で、検索かけてみても、 お互いの宗教論争っぽいのが多くて、 実際…

Tidyが遅い・・・

あ〜ん、Tidyクン遅いよ〜 どうにかならんかしら…

sprintfは速い

#!/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で定数

Perlで定数を使いたい。 変更を不可にするんじゃなくて、パフォーマンスをアップするために。 で、 http://eureka.prits.jp/resources/developer/perl_memo.html によると、定数関数というのを用いるとインライン展開してくれるらしい。 で、それを自動でや…

Perl様には負けます

#!/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ライブラリの調査

知能システム科学専攻というものの博士課程まで行っておきながら、 ずーっと触ってなかった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がいっぱい呼ば…

522,779

DB_Fileで読んでいるハッシュの件数をカウントしてみた。 それぞれ、 522779,158563,12848,1250,315603,27 そりゃ遅いわ。しかもキーも長め(日本語で20文字くらい)だし。 うーん、なんかいい方法ないのかしら…

UTF-8フラグと戦いまくっていますよ

このblogのeditページを見てみると、 1位がやねうらおさん、2位がnaoyaさんと漏らす布陣に。で、naoyaさんのblogを見てみると、 UTF-8 フラグと戦う人へ http://blog.livedoor.jp/nipotan/archives/50228106.html が紹介されていた。これまた漏らす。CPAN …

Cabocha

CabochaではUTF-8扱えないのかしら… ちゃんと追ってないけど、マニュアル見る限りUTF-8については言及してないな。あとは、-I1の入力、ChaSen方式じゃないとダメなのかしら? Mecab対応って、Mecabを-Ochasenで呼び出してるってことかしら?せっかくEUCからU…

おそい・・・

新しいモジュールの移植に取り組む。使っているモジュールを洗い出すために、 モジュール群をuseしてみただけのスクリプトを動かす。 で、適宜CPANからインストールとか、 ファイルパスの依存性修正とか。で、なんとかコンパイルとおるようになったんだけど…

TinySVMのperlバインディングがうまくいかない件

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ディレクトリをコピーして持って…

うーん、svはsegvのコトじゃないらしいぞ

#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…

Perl_sv_2cv

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 #…

Inactive Perl...

Active Perlは実装が違いすぎて、 use encoding 'utf8'; の挙動がいろいろおかしいようです。むにょ〜!!!よってActive Perlの採用はやめ! gdb上でPerl動かしてやるぜ!へへへ… 覚悟決めましたよ。

不可思議なSEGVを解決するために

Active Perl、Linux版なんて誰が使ってるんだろう、 と思っていたけど、 Perlで不可思議なSEGVが出る問題の回避のためにインストール。で、いろんなモジュールをppmやらperl -MCPANで突っ込んでいったわけだけど、 なんかコンパイルエラーが出る。 Scalar fo…

なんだろうなにかしら。

use diagnostics;を入れたらエラー無しで終了。 use diagnostics;を入れなかったら「不正な命令」といわれて異常終了。 なぜだー!

utf8::SWASHGET問題ふたたび解決?

ホッツエンポロッツふたたびあらわる。 まあ、それはどうでもいいとして、 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 = …

utf8::SWASHGET問題やっぱ未解決

DProfやりなおしたらCALL回数もあんまり変わってないでやんの。 use encoding 'utf8'を指定していると。 ソースコード自体を読むときに呼ばれるのかしら? 謎。

utf8::SWASHGET問題解決

s/^.*?$val.*?$//o って式が重いらしく。 確かに重そうだ。これを全行やるっていうのは。$valが存在したら行全体消しまっせ、いひひ、 ってことでしょ。

utf8::SWASHGETが重い

なんか動かしてるプログラムのとある関数がやたら重い。 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利用に変更

今、とあるプログラミングのパフォーマンス向上を目指している。 というわけで、ChaSen使っている部分をMeCab利用に変えてみよう。 -Ochasenで適当に変更。

謎diff

MySQL 5.0.12-beta + sennna rev.49のpatchをsenna-devに投稿しようと思って diffを取った。diff -Nurで取ったんだけど、 ディレクトリを指定したらdiffの容量がおかしいほど大きくなる。 中身見るとほぼ全文+になっていたり。 でも、個々のファイルでdiffを…