タグ

アーキテクチャに関するt_takataのブックマーク (2)

  • ネットワークプログラムのI/O戦略 - sdyuki-devel

    図解求む。 以下「プロトコル処理」と「メッセージ処理」を分けて扱っているが、この差が顕著に出るのは全文検索エンジンや非同期ジョブサーバーなど、小さなメッセージで重い処理をするタイプ。ストリーム指向のプロトコルの場合は「プロトコル処理」を「ストリーム処理」に置き換えるといいかもしれない。 シングルスレッド・イベント駆動 コネクションN:スレッド1。epoll/kqueue/select を1つ使ってイベントループを作る。 マルチコアCPUでスケールしないので、サーバーでは今時このモデルは流行らない。 クライアントで非同期なメッセージングをやりたい場合はこのモデルを使える: サーバーにメッセージを送信 イベントハンドラを登録;このときイベントハンドラのポインタを取っておく イベントハンドラ->フラグ がONになるまでイベントループを回す イベントハンドラ->結果 を返す 1コネクション1スレッ

    ネットワークプログラムのI/O戦略 - sdyuki-devel
  • 【コラム】コンピュータアーキテクチャの話 (101) 浮動小数点除算器と平方根演算器 | エンタープライズ | マイコミジャーナル

    浮動小数点除算器 浮動小数点の乗算の場合は、仮数部の掛け算と指数部の足し算を行ったが、浮動小数点の割り算は、仮数部の割り算と指数部の引き算を行えば良い。仮数部の割り算は、このコラムの84回から説明した整数の割り算とほぼ同様であるが、最上位の"1"の位置が揃っているのでゼロスキップの必要が無い点と、整数の割り算の場合は、1の桁までの商を求めれば終わりであるが、浮動小数点の割り算の場合は、小数点以下の商をガードビットやラウンドビットを含めた有効数字の最下位の桁まで求める必要がある点が異なる。しかし、これは割り算のループの終点が異なるだけであり、回路としては整数の場合と同じ構造で計算できる。 割り算のオペランドの仮数部は1.0以上、2.0未満の範囲であるので、仮数部の割り算の結果は0.5より大きく、2.0未満となる。このため、仮数部の割り算結果が1.0未満となった場合は、1ビット左シフトを行い、

  • 1