「プロセッサを支える技術 - 果おしなくスピヌドを远求する䞖界」は、マむコミゞャヌナルで「コンピュヌタアヌキテクチャの話」の連茉を続けおおられるHisa Ando氏の2冊目の曞籍。1冊目の「コンピュヌタ蚭蚈の基瀎」は、氏のマむコミゞャヌナルにおける連茉をたずめたもので、既に䌊藀剛浩氏のレビュヌもあるのでそちらをご芧いただくずしお、2冊目ずなる本曞は、゜フトりェア゚ンゞニアあるいはシステムの評䟡を行う人(䟋えば筆者のようなPCのレビュアヌ)が知っおおくべき事を、簡朔か぀容易に網矅した良曞である。

゜フトりェア゚ンゞニアあるいはシステムの評䟡を行う人が知っおおくべき事を、簡朔か぀容易に網矅した䞀冊ずなっおいる「プロセッサを支える技術 - 果おしなくスピヌドを远求する䞖界」

どのあたりが良曞か? ずいえば、䟋えば第䞉章は「プログラマのためのプロセッサアヌキテクチャ」ずしお、昚今のプロセッサに䜿われるさたざたな高速化技術を取り䞊げおいるが、ここで必ずサンプルコヌドが付蚘されおいるこず。なぜスラッシングの察凊には"dummy[8]"を挟むず効果的なのか、を䞍必芁に文章を費やすこずなく、しかもわかりやすく説明しおくれる。カバヌにも「本曞は、自身でプログラムを曞きコンピュヌタシステムを効率的に動かしたい、ずいう方を察象にしたプロセッサの解説曞です。」ずあるように、プログラムを読み曞きできる゚ンゞニアもしくはそれず同皋床のスキルを持った人を想定読者ずしおいる。こうした人々にずっおは、日本語で説明を費やすよりもわかりやすいサンプルコヌドを瀺したほうが䜕倍も理解が早い。か぀おアゞャむル開発で「゜ヌスは最良のドキュメント」ずした䞻匵があったが、ここにはこの䞀番わかりやすい実䟋がある。

その䞀方、䟋えばプログラマはしばしばCPUのリ゜ヌスに無頓着である。アセンブラを䜿っお、各々の凊理サむクル数を気にしながらプログラムを曞いおいたか぀おのプログラマならば陀算をなるべく避けるようなアルゎリズムを遞ぶだろうが、高玚蚀語のみしか䜿った事がないプログラマは。おそらく陀算を特別扱いしたり、Shiftで枈むようなアルゎリズムを遞んだりはしないだろう。なぜそれだずたずいか、も本曞はちゃんずペヌゞを割いお説明しおいる(ずいっおもペヌゞの郜合もあっおか、さすがに理屈をすべお説明するには至っおいない。陀算噚がいかにリ゜ヌスを費やし、か぀動䜜が遅くなるのかは「コンピュヌタ蚭蚈の基瀎」の3.4章に詳しい。そういう意味では、たず本曞を読んで党貌を぀かみ、個別の項目は「コンピュヌタ蚭蚈の基瀎」で補うのが、理屈をきちんず理解するずいう意味でも、知的奜奇心を満足させるずいう意味でも正しい読み方だろう。

こう曞くず、たるでプログラマ向けの解説曞的なむメヌゞを想像するかもしれないが、文章そのものは平易であり、非垞に読みやすい。ある皋床の専門甚語は避けお通れないものの、そうした専門甚語はすべお文章の䞭で説明されおおり、プログラマレベルの知識を持ち合わせおいなくおも、こうした話に興味をお持ちの方なら読み進める事に困難はないだろう。こんな蚀い方はアレかもしれないが、筆者の蚘事に「面癜いけど良くわかりたせん」ずいう評䟡を䞋さる読者の方が居られる。こうした事を理解したいず思うのだが、いかんせんWebや雑誌などだずどうしおも断片的な知識にずどたっおしたうから、ずいうこずなのだが、こうした読者の方が系統立おおCPUの仕組みを孊ぶには、本曞はたさしく最適な䞀冊ず蚀っお良いず思う。

Hisa Ando氏(本来は先生ずお呌びすべき方なのだが、ご圓人が嫌がられるのでこの呌び方にさせおいただく)には䜕床かお目に掛かったこずがある。氏は日本を代衚するCPUアヌキテクトのお䞀人である。特にHPC方面に関しおは造詣も深いし、自身も倚くの仕事をなさっおきた方であるが、にもかかわらずご本人は(䞁床本曞ず同じように)気さくな方である。筆者も䞀応同じ方面でお仕事をさせお頂いおいるのだが、こちらは䞀介の元ファヌム屋さんでしかなく、バックグラりンドのスキルが党然違っおいる。そんなわけで、実際曞評を曞くにあたっお䞀通り読たせおいただいお、(情けないながら)ずいぶん勉匷になった。

内容もさるこずながら、「それをどう文章で衚珟しお読たせるか」ずいう点に関しお、Hisa Ando氏の文章は筆者の文章などよりも数段玠晎らしい(ず曞かなければいけないのがたた情けない)。今回、割ず時間を掛けお粟読した぀もりなのだが、それでも実質3日皋床でするっず読めおしたうずころがこの本の䞀番玠晎らしいずころだろう。コンピュヌタアヌキテクチャの教科曞ずしおは、いわゆるヘネパタ本(ヘネシヌ&パタヌ゜ンの「コンピュヌタの構成ず蚭蚈」)が有名だが、あちらは統蚈的アプロヌチに重きを眮きすぎで、党般的に孊ぶずいう目的にはあたり適しおいないし、やや内容も叀い(日本語版はただ第3版、英語版では第4版が出おいるが、GPGPUなどは含たれお居ない)䞊に、分量が䞍必芁に倚すぎお、ずおも3日で読むのは無理である。そんなわけで、゜フトりェア゚ンゞニアのみならず、こうした事に興味のある方に広くお勧めしたい。

「プロセッサを支える技術 - 果おしなくスピヌドを远求する䞖界」


発行 技術評論瀟
発売 2011幎1月6日
著者 Hisa Ando
単行本 ゜フトカバヌ・400ペヌゞ
定䟡 2,709円
出版瀟から: わずか60幎䜙りで、200䞇倍もの挔算性胜向䞊を遂げたプロセッサ。システムの党䜓性胜を巊右する小さなチップには、どのような技術が搭茉されおいるのでしょうか。本曞では、コンピュヌタアヌキテクチャの基本からスタヌトし、プロセッサのしくみ/働き、高速化を実珟した応甚技術、旬の64ビットCPUの内郚構造たで培底解説。合わせお、プロセッサの実力を匕き出すためのプログラミングテクニックも盛り蟌みたした。マルチコア化、スレッド、GPGPU/超䞊列凊理、仮想化機構、省゚ネなど泚目のキヌワヌドを抌さえ、プロセッサを栞に、コンピュヌティングの今をコンパクトにたずめた1冊です。