155 :・良く分かるパイプライン :04/04/26 17:20 ID:B6tZVOSS 「おしっこをして手をあらってでてくる」。 トイレが一室しかないと混雑時は長蛇の列ができます。 1.おしっこをする 2.手を洗う。 二段のパイプにすると、手を洗ってる間に別の人が用を足せるようになります。 トイレ一室で二人が気持ちよくなれて、効率が倍になります。 もうすこし深くしてみましょう。 1.ジッパーを下げる 2.ちんちんとりだす 3.放尿する 4.しずくを切ってちんちんしまう。 5.ジッパーをあげる 6.手を洗う 7.紙を使って手をふく 7ステージに分解すると、なんと 7人が同時に処理できます。 これがパイプラインです。 156 :・良く分かるスーパスケーラ :04/04/26 17:21 ID:B6tZVOSS トイレの利用はおしっこだけではありません。 うんこもします。どういう手順でしょうか。 1.ジッパーを下げる 2.ズボンとパンツを下ろす 3.便器に座ってふんばる(出す) 4.汚れた尻を拭く 5.ズボンとパンツをあげる 6.ジッパーを上げる 7.手を洗う 8.紙を使って手を拭く 前半と後半は同じ処理ですが、途中がおしっことは別処理です。 ということは、小便器と大便器をわけると、途中は並列に処理ができそうです。 うんちとおしっこは処理時間が異なるので、手を洗ったりする所でどっちかが 待たされる事もありえますが、理想的には効率は倍になります。 これがスーパスケーラです。 157 :・良く分かるスーパパイプライン :04/04/26 17:22 ID:B6tZVOSS うんこする時間と、ズボンとパンツを脱ぐ時間は同じでしょうか。 いいえ、うんこする時間のほうが圧倒的に長いです。 ということは、前の人がうんこしてる間パンツを下ろす人は尻をだしたまま ぼ~とまっていなくてはいけません。かかる時間を考慮してみましょう。 括弧内は、実際に処理に必要な時間です。 1.ジッパーを下げる(5秒) 2.ズボンとパンツを下ろす(20秒) 3.便器に座ってふんばる(60秒) 4.汚れた尻を拭く(30秒) 5.ズボンとパンツをあげる(20秒) 6.ジッパーを上げる(5秒) 7.手を洗う(60秒) 8.紙を使って手を拭く(30秒) パイプラインは、一ステージ毎タイミングを合わせて処理をします。 一番時間がかかる処理は、例では60秒ですから、トイレにはいってから出てくる まで60秒x8回、480秒の時間がかかります。 158 :・スーパーパイプライン(続き) :04/04/26 17:23 ID:B6tZVOSS ちょっと発想を広げ、時間のかかる処理を分解してみましょう。 1.ジッパーを下げる(5秒) 2.ズボンとパンツを下ろす(20秒) 3.便器に座る(10秒) 4.一回目ふんばる(30秒) 5.二回目ふんばる(30秒) 6.汚れた尻を拭く(30秒) 7.ズボンとパンツをあげる(20秒) 8.ジッパーを上げる(5秒) 9.手に石鹸をつけて泡立てる(30秒) 10.泡を洗い流す(30秒) 11.紙を使って手を拭く(30秒) ステージ数は増えてしまいましたが、1ステージにかかる時間は30秒と半分に なりました。クロックでいうと倍のクロックに出来ることになります。 トータルでかかる時間はどうでしょう。30秒x11で 330秒ですね。 前より早く処理が完了しました。しかしクロックが倍になったけどトイレに かかる時間は半分にはなりません。 これが、スーパパイプラインです。 159 :・緊急事態発生 :04/04/26 17:24 ID:B6tZVOSS あなたは今、これから迎えるであろう至福の時を迎える為にパンツをおろし、 あとは出すだけという所です。しかし!あろうことか神の声が轟きます。 「なにをしている、ここは女子便所だぞ」 条件判断ミスです。あなたの後ろには、つられて入って来てしまった数人の男性が、 ジッパーをさげズボンを降ろし、尻をだしたまま待っています。 しかし、ここで用を足すわけにいきません。あなたは数名の男性と共に廊下に ほうりだされます。 あなたはもう一度、正しいトイレにいってジッパーを降ろす所から始めなくては いけません。 一方女子トイレはというと、あなた達がほうりだされた事により三つの席が 空いてしまいました。ステージは規則正しく順番に進みますから、この席は もう埋まりません。三つ分の埋まっていない席の為、女子トイレは利用される ことなく無駄な時間が経過するでしょう。 その分、女子トイレの利用率は下がります。 これがハザードです。 160 :・その他の危険 :04/04/26 17:25 ID:B6tZVOSS トイレの危険はまだまだいっぱいあります。 トイレットペーパーが無くなったらどうでしょうか。尻を拭くことが出来ず、 それ以降のステージは凍結してしまいます。 手拭きのペーパータオルが無くなる危険もあるし、汲み取り式のトイレだと 肥溜めがいっぱいになってしまう事もあるでしょう。 その度にあなたは、本来やりたかった放尿を一時中断し、紙をとってきたり 汲み取ったりしないといけません。 本来は放尿や脱糞だけできればどんなに気持ちの良いことか。 そこで、トイレ掃除の人を雇って紙の補充をしてもらったり、汲み取り業者 を雇って定期的に組み上げてもらいます。お金がかかりますが知っちゃこっちゃ ありません。それで本来の目的が気持ちよく遂行できるなら安いものです。 そう思うでしょう? 161 :・依存関係 :04/04/26 17:26 ID:B6tZVOSS トイレが汚いとあまり気持ち言いものじゃありません。 知った人が前にすましてたら、そのトイレがきれいかどうか聞いてみるといい ですね。でも、その人がトイレから出てくるまで聞けませんから、待ってる事に なります。 折角11ステージにも増えて、同時に11人処理できるトイレも、入って来て くれなければ利用率は下がります。 あなたと連れが二人います。 一人がトイレに行きました。あなたともう一人の連れは入りたいけど綺麗か 気になります。 この時、全体にあかる時間は 1.一人目の連れがトイレに入って出てくるまで 330秒。 2.トイレがきれいか確認してあなたが入って出てくるまで更に 330秒。 3.もう一人の連れは、あなたに続いて入れるので出てくるはあなたから30秒遅れ。 聞かずに入れば330+30+30で390秒で済む所が、トータルで690秒もかかって しまいました。 これが依存関係です。 162 :・リオーダ :04/04/26 17:27 ID:B6tZVOSS そこで、トイレがきれいか同か聞かなくてもいい人を先に通してみると どうでしょう。どうせあなたは10ステージ分経過するまでトイレには 入れないんです。 丁度バスツアーの観光バスがサービスエリアに到着しました。あなたと、もう 一人の連れとの間に並んでます。おばはんは男トイレでも気にしません。 処理時間はどれだけでしょうか。 1.一人目の連れがトイレに入って出てくるまで 330秒。 2.トイレがきれいか確認してあなたが入って出てくるまで更に 330秒。 3.あなたの後ろに並んでしまったおばはんが10人。入りきるで300秒。 4.もう一人の連れはその30秒後にトイレに入れるので、入れるのは あなたが入ってから330秒遅れ、さらに330秒の処理時間。 あなたのグループはトータル 990秒かかります。 おばはんは、あなたが入った後にしか入れませんから、330+30で360秒後に トイレにはいって、全員がでてくるのは330秒後ですから、690秒後です。 先におばはんをいれてみたらどうなるでしょう? 1.一人目の連れがトイレに入って出てくるまで 330秒。 2.一人目が入って30秒後におばはんが入り始めて10人入るのに300秒。 3.トイレがきれいか確認してあなたが入って出てくるまで更に 330秒。 4.もう一人の連れは、あなたにつづいて入れるので出てくるのはあなたから30秒遅れ。 あなたのグループは、トータル690秒で済みます。 おばはんは30秒後にははいってますから、なんと360秒後には全員でてきています。 処理を入れ換えてあげると、トイレの利用率はあがり全体の処理時間が短縮 されることがあります。これがリオーダです。 163 :・いろんな工夫 :04/04/26 17:28 ID:B6tZVOSS 大勢が素早く滞り無く気持ちよくなる工夫はいろいろあります。 トイレを二部屋用意するとか(Dualトイレ)、使用中のトイレに行列ができない ように振り分けて上げるとか(Threadコントロール)、トイレに待合室とかつくっ ておくと(Cache)、すれ違え無い程廊下が狭くてもまとめて入室させたり退室さ せれば(WriteBack)混乱は減りますね。 とここまで書いておいて、トイレを流すのを忘れていたことに気がつきました。 くさいです。ちゃんと流しましょう。
CPUのアーキテクチャをトイレに例えると | Hinemosu (via sskr31)














