Perlで日本語全文検索できるCPANモジュール作りました

Perlで全文検索を手軽にできるようにするCPANモジュール,Search::Fulltext をリリースしました.
これ単品だと英語での全文検索ができるのですが,これまた拙作の Search::Fulltext::Tokenizer::MeCab と組み合わせて使うと 日本語全文検索 ができるようになります.

ここでは日本語全文検索をするためのインストール方法と簡単な使い方などについて記述します.
尚,この記事を書いている時点での最新版は Search::Fulltext-1.02, Search::Fulltext::Tokenizer::MeCab-1.04 です.
最新の情報についてはperldocで確認するようにしてください.

続きを読む


MySQL 5.6 で動くストレージエンジン・テンプレート

MySQL 5.6 で動く Skeleton Engine, Yet Another Skeleton Engine を Github で公開してます.
https://github.com/laysakura/mysql-YetAnotherSkeletonEngine

Skeleton Engine は MySQL のストレージエンジンを作成するためのテンプレートです.
オリジナルのものは
http://www.sourcefiles.org/Databases/Utilities/
の skeleton_engine-0.7.tar.gz でダウンロード可能でした(2013/02/10 現在)が,古いバージョンの MySQL を前提としており,MySQL 5.6 にオリジナルのままの Skeleton Engine を組込むことはできません.
オリジナルのものが MySQL 5.6 で使えない理由は最後の節に記載します.

そこで Yet Another Skeleton Engine と名付けまして,MySQL 5.6 で動くストレージエンジンのテンプレートを公開しました.
本エントリでは,まず Yet Another Skeleton Engine の使い方を記し,次にメモ程度にリポジトリ作成作業のログを記します.

続きを読む


真・SSEを使って8flops/clockを実現する

カーネル/VM Advent Calendar の34日目として書きます.
記事の内容自体はこのイベントと関係ありませんので,どなたでもお楽しみ下さいませ.

今回は 自分の前回の記事 で見つけた誤りを訂正しつつ,
Intelの一部CPUがサポートするSSE(Streaming SIMD Extensions)命令により1clockで8個の単精度浮動小数点演算を行なう方法を紹介します.

なるべく前回の記事とは独立した記述を心がけます.

続きを読む



perf stat でパフォーマンスカウンタの値を直接指定し表示

perfについて少し

最近のLinuxでは,perfという便利なパフォーマンス解析ツールが使えます.
aptやyumなどのパッケージ管理ツールで入れられると思いますが(Debian系だとlinux-tools*って名前のパッケージのはず),詳しい使い方はここでは解説しません.

さて,このperfには色々な使い方がありますが,中でもperf statはプログラム実行中に起こるハードウェア的なイベントを取得できるものです.
使用例はこんな感じ.

続きを読む


Linux のスケジューリング調査と超低優先度プロセスの実装

恩師田浦健次朗先生の講義、「オペレーティングシステム」で試験を受ける代わりにカーネルハックする課題をやりました。

目覚ましい成果とは言えない結果でしたが、調査や実装の記録を書いた発表スライドを残しておきます。

講義資料として上がってるPDF (なぜかはてブがいっぱいついてる)

上記のはいつ研究室のサーバから消されてもおかしくないので、ここでも配信しておきます。

元PDF