XS利用でPerl高速化 その2
前回は、XSモジュールを使うと処理が高速になる可能性があるという紹介をしました。
ただしXSモジュールの導入にはデメリットもあります。
C言語で実装しているという関係上、
- モジュール変更のたびにリコンパイルが必要である
- メモリリークの危険性がある
- Perlの管理下にないメモリは自分で解放しなければなりません(詳細は後日)
- プラットフォーム間での互換性が保てない
- リコンパイルや修正が必要な場合が多い
- PerlのXSバージョンに左右される場合がある
- Perl単体のときと比べてデバッグが難しい
などなど、クリアすべき点があります。
というわけで使いどころとしては、
というような場合に、XSで処理を書いてみて、ベンチマークをとってみるという形が良いと思います。
なおXSについての情報は書籍であれば
- 作者: スリラムスリニバサン,Sriram Srinivasan,須田隆久
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 1998/11
- メディア: 単行本
- 購入: 1人 クリック: 21回
- この商品を含むブログ (10件) を見る
の18章あたりを参考にすると良いでしょう。
なおXSの詳細を学べば、Cではなくてアセンブラでもコードを書けると思うのですが、それは悪ノリしすぎということで・・・