David A. Patterson, Carlo H. Sequin: RISC I: A Reduced Instruction Set VLSI Computer Proc. Int'l Symp. on Computer Architecture, pp. 443-457 (1981) 中島先生の小学4年生には適わないまでも,この論 文が発表された1981年,私は中学1年生でした.それ から10年弱,大学で本格的な勉強を始めたときには RISCという言葉は既に教科書に載っていました.学生 として過ごした90年代,身の周りにはRISC以外のプロ セッサはありませんでした.最近の学生にとってプロ セッサといえばPentiumであるように,私にとっての プロセッサとはSPARCであり,MIPSであるのです. そんな私ですから,本論を読んでなんら感銘を受け なかったとしても,驚くにはあたらないと思います. 一読して,教科書と同様のRISCの説明があるだけのよ うに見えたのです.逆に言えば,RISC IにしてRISCの 基本的な特徴をほとんどそのまま備えていた訳です. ところが,よくよく注意して読むとこの論文,か なりの問題論文なのです. RISCのメリットといえば,(1)コンパクトで作る のが簡単 というのももちろんですが,(2)定型的故 に乱れの少ない命令パイプラインによって低いCPIを 実現する,(3)比較的大容量のレジスタ・ファイル, ロード/ストア・アーキテクチャなどによって,メモ リ・アクセスの頻度が下がる,などなど.とにかく, 命令セットを簡単化,定型化するするということは, 性能向上の手段としてポジティブに捉えられています. ところがRISCの始祖たる本論文では,命令セットを 縮小することを,プロセッサ全体を1チップに収める ための代償としてかなりネガティブに捉えているので す.例えばイントロでは,RISC Iの特徴として,(1) 1命令1サイクル,(2)固定命令長,(3)ロード/ス トア・アーキテクチャ,(4)高級言語のサポート, の4点が挙げられています.これらの特徴を,本論文 では"constraints"だと述べています. 「制約」を課すのですから性能は低下して当然です. 他のRISCからRISC Iを区別するオーバーラッピング・ レジスタ・ウィンドウ(以下ORWと略)は,RISC化に よる性能低下を補うためのハードウェア・サポートと して導入されているのです. ところが実際評価してみると,当時最新のVAX 11/ 780に比べて,実行サイクル数で最大4倍ほども速いと いう,論文の流れを裏切る結果が出ます. それはラッキーなことですが,問題は,なぜ4倍も 速くなるのか説明できていないという点にあります. イントロで「ORWに負うところが大きい」と述べられ てはいますが,評価ではORWの効果は分離できていま せん(そして実際,ORWのせいではないでしょう). 結局のところこの論文は「1チップに収めようと思っ て簡単にしたらなんだか妙に速くなっちゃったけど, 理由はよく分かりません」という論文なのです.端的 に言って,この論文には「内容に信頼できる根拠が示 されていません」. でも,だからダメだと言いたいのではないのです. この例に限らず,重要な発見というのは往々にしてこ ういったセレンディピティによるものです.RISC Iは 1チップ化というニッチに対して前適応した段階にあっ て,RISCの本当のメリットは後になって「発見」され たのでしょう.この論文が採録されていてよかったこ とは,今にしてみれば明らかです. 私はむしろ,査読者が何を思ってこんな「怪しげ」 な論文を採録したのかに興味があります.今ならばな ぜそんな結果が出るのか理解できますが,CISC全盛の 当時なら,「信じられない」,「シミュレータがバグっ てるに違いない」と一蹴することも容易だったはずで す.単に「ORWのおかげ」で納得してしまっただけな のでしょうか? この論文を読んでRISCの本当の意味 を見抜いたのだとしたらそれはすごすぎます. 査読者はこの論文に,今通しておくべき何かを感じ 取ったのではないでしょうか.それは,査読者のセレ ンディピティと言えるかも知れません. 翻って見ると,自分を含め,今の会議,論文誌の査 読者にこんな論文を通す「能力」があるだろうかと思 い至ります.今の日本の社会に足りないものがあると すれば,それはこのような受信する側のセレンディピ ティなのかも知れません. 五島 正裕/京都大学 goshima@i.kyoto-u.ac.jp % Local Variables: % fill-column: 48 % End: % 24×36×2