Home > Archives > 2006-09

2006-09

liblog

  • 2006-09-18 (Mon)
  • Unix
  • hatena button
  • hatena count
  • save this page del.icio.us

Replay Debugging for Distributed Applications
Presentation
Dennis Geels
分散ソフトウェアを開発している時に一番頼りになるのは、というか唯一頼りになるのはログ。バグが起こったときには、それこそ行単位にログを吐かせまくって原因を特定する。ローカルに吐かせたものを見るのはどうしても面倒なので、中央にログサーバーを立てて集中的にログを見れるようにもしてみた。しかし台数が増えると色々なサーバーのログが入り混じってしまうので、結局見るのはローカルに吐かせたログになってしまう。
liblogはなんとログからその時の状況をreplayするという凄いハック。thread, signal, malloc, network等の状況も再現してくれる。thread対応には独自のスケジューラーを作ってみたり、gdbをインターフェースにしてみたりと色々ハッカーすぎる技術が詰まっている。しかし肝心のliblogのページが落ちてるのが悲しすぎる。
個人的にはlibcの関数をrecordしてくれるだけでも十分嬉しい。straceはログ吐き過ぎなので、10時間後に止まるバグなんかを突き止めるにはちょっと向いてない…。しかし今思い出して見ると、Jockeyも同じような事が出来るのか。こっちはソースが読めるのでちょっと見てみよう。
こういう事してるから課題が進まない。

QM法

  • 2006-09-16 (Sat)
  • IS
  • hatena button
  • hatena count
  • save this page del.icio.us

ふと学科wikiを見たら、ハードウェア課題の「ハードリミット」まで後4日。なんと。後3つ残ってるから1日1個片付けんと。周りの人がかなり苦しんでたハードウェア構成法課題第5回を片付ける。課題やるのは2ヶ月ぶりぐらいだ。
真理値表を入力とし、Quine - McClusky法によって回路を簡単化するプログラムを書く。
OCamlのプログラムを久々に書いてみると文法エラー & 型エラー出まくりで全然効率が上がらなかったので、C++で一からさくさく書いた。OCamlで書いてた人は上手く末尾再帰で書かないとスタックオーバーフローしたりしてたみたい。
C++だとそれは無かったので助かったけどやっぱ本質的に再帰なアルゴリズムの所とか超書きづらい。STLまみれになってしまって凄い読みづらいし。一応2時間ぐらいでプログラム仕上げて1時間ぐらいでレポート書いて提出。
明日明後日で1個ずつFPGA課題を仕上げる。最終課題は何を作ろうかねぇ。VHDL忘れてそう。
ちょっとQDBM触ってみた。APIの名前に全く統一性が無くて最初は困惑した。一体どのコンポーネントを使えば良いのか全然分からんかった。DepotとCuriaの違いは何やねん、とか。が、一度触ってみると結構使いやすい。HyperEstraierのAPIもよく出来てるしなぁ。これは良い。

Asynchronous IO

  • 2006-09-15 (Fri)
  • Unix
  • hatena button
  • hatena count
  • save this page del.icio.us

例の自前のライブラリに非同期I/Oを組み込もうとしてみたのだが、どうも上手く行かない。多少パフォーマンスはあがるのだけど、エラー処理どうするの?とか。
世界中でこいつを有効に使えているソフトウェアって有るんですかねぇ…。

Bigtable

  • 2006-09-15 (Fri)
  • Unix
  • hatena button
  • hatena count
  • save this page del.icio.us

Databaseにお熱。Bigtableとか見せつけられたら作りたくなるよなぁ。このGoogle特有の割り切り方が良い。そして競合してみたくなる。色々資料読んだり、nvacaさんの紹介でXerialの中の人のお話を聞かせて頂いたり。

地下クラスタ使って色々楽しいことしたいけど、結局ルート権が無いから結構不便…。I川研の人くれないかなぁ。ライブラリとか入れるのとか面倒す。

しかし複数台のマシンを使ったプログラミングというのは楽しすぎる。身辺が落ち着いたら & もうちょい調べたらちょっと簡単なのを実装してみる。負荷テストをクリアした超強力なネットワークライブラリとスレッドライブラリが手元に有るので本題から入れそう。

3~6ノードぐらいで最高性能が発揮できてwebのバックエンドに向いている奴を作ってみるというのが、手頃でしかも需要がありそうで良いかなぁ。とかまぁ妄想中。

Programming with POSIX threads

  • 2006-09-13 (Wed)
  • hatena button
  • hatena count
  • save this page del.icio.us

9月前半のテストが終了しました。まだ後半の方にも有るので、まだやっていない夏休みの課題をさささっと片付けてしまう事にしよう。それにしてもH木先生はいつテスト日程を決めてくれるのか(笑)
最近はpthreadを用いたthread pooling式のマルチスレッドサーバーアプリケーションと毎日のように格闘しています。pthreadを使うにあたり良い本は無いものかとある人に紹介して頂いたのがProgramming with POSIX threadsです。

Programming With Posix Threads (Addison-Wesley Professional Computing Series)

Programming With Posix Threads (Addison-Wesley Professional Computing Series)

  • David R. Butenhof
  • Addison-Wesley Pub (Sd)
  • 1997-05-06
  • ¥ 8,528

Continue reading

Home > Archives > 2006-09

お薦め本
広告
Archives
Categories

Return to page top