偉大なる最初の一歩をあなたに。マルチコア時代のサーバ設計をする人へ

マルチコア時代のサーバ設計について(2) - Happy Hacking Diary



http://msdn.microsoft.com/ja-jp/library/cc429217.aspx

FileIOCompletionRoutine
ReadFileEx
WriteFileEx

まずWidows NT サーバー系(新しくはXPでも対応している)
の3つの関数をキャッチアップだ!!

いわゆるSelect Pollの代替なんだが、2000Server当たりから鬼速い。
あとはこれと、Winsockではない(ここ重要)NTネイティブのソケット関数を
探し出して呼ぶ!。NTネイティブのソケット関数の
送信関数はマニュアルにないので受信関数を探せ!
受信関数から送信関数を感で探せw

ちなみに
Windows NT 3.1 以降を使います。
とあるように、そんな古い時代から、もうカーネルは対応していますw

そもそも、セガサターンとか(w ゲーム機は昔から、マルチCPUだし、
サーバー機ははるかむかしから、マルチCPUなんだから。


この手の技術は実は、古典!!!だという事に気がついて。
古いドキュメントを発掘するって事をすれば、結構いろいろ転がってるよ。
市場に出回ってるドキュメントだけで書くから、遅くなるんであって
古典技術を発掘すれば速くなるよ。


今の時代は、富豪的プログラムという、単語に踊らされた、メタボリックプログラムが氾濫しているので、速度を犠牲にするアルゴリズムしかドキュメントがない。
昔のCPUがショボかった時代の方が、プログラマがCPUの遅さをカバーしていたので、速度方向に対するドキュメントがいっぱいある。

温故知新。

とにかく、がんばってくださいませ。みなさま。
見かけが熱い作品ではなく、中身が熱い作品を作って おいらを燃えさせてくださいませ。