炉端での話題

折々に反応し揺れる思いを語りたい

エキスコン(4) SIMDの話題

2010-01-29 20:32:09 | Weblog
前回のエキスコン(3)で、スパコンはTFLOPレベルによる演算の能力、エキスコンは1000TFLOPに相当するPFLOPレベルによる演算能力を有するコンピュータと定義した。しかしNielsen氏の「再びスパコン談義」によって、exa (10の18乗)浮動小数点演算/秒の能力、すなわちEFLOPレベルが視野にあることが示唆された。エキスコンはやがてエキサコンと言い換えることになるかもしれない。いずれにしてもこの様な呼び方は、筆者の独断と偏見によるものである。もっと優れてしかも分かり易いスパコンの性能表示があればそれに越したことはない。
スパコンの規模による呼び方の定義のことはさておくとして、しばらくエキスコンの話題を進める。

筆者は脳波の時間周波数解析に興味を抱いている。いま脳波についてはほとんど顧みられていない。理由はわかるような気がするが、見捨てられて顧みられない分野の方が実り多いこともある。脳波解析を時間周波数解析によって行う手法によるプログラムを開発し、これまで知られていたことと反する現象も観測している。従来はアルファ波が消滅し、ベータ波が発生するといわれていた。このことをアルファ波ブロッキングと呼ぶようであるが、時間周波数分析を行ってみるとアルファ波とベータ波が同時に発生する現象も観測できる。これまでは、周波数分析の能力が限定的だったことによると解釈している。しかしながら、アルファ波とベータ波が同時に発生する現象から何がわかるか説明できないから、いまだ検討途上である。
そのアルゴリズムの基本となっているのは高速フーリェ変換である。高速フーリェ変換は、20世紀後半に多くの技術的革新をもたらした。MRIという医療診断機器がある。この機器には欠かすことのできないデータ処理技法として高速フーリェ変換が用いられている。MRIでは、一次元での高速フーリェ変換処理のために別の次元での物理的なスキャン操作を行っている。一次元の高速フーリェ変換を行うプロセッサは、開発されているといわれ、いますでに現存するかも知れない。あるとすれば、高速フーリェ変換専用のSIMDプロセッサである。その専用高速フーリェ変換プロセッサによってMRIの解析処理速度が格段に高速化できる。
いま仮に2次元配列のセンサーがあり、2次元の高速フーリェ変換ができれば、さらに高速処理が可能となる。もしある次元のスキャンが必要でなければMRIの構造も変更できるであろう。
脳波の周波数成分は低く、100ヘルツ以下の周波数成分解析で今のところ充分である。このように低い周波数であっても時間周波数解析を2次元の高速フーリェ変換で行うとすると実時間解析はできないのが現状である。スパコンを使えばできるかも知れないが、とても手が届かない。

先般、NHKの地震予知に関連した番組で、地震の巣の位置を突き止める内容が紹介されていた。二重積分記号が映し出されていたので振動現象を基にして地震の巣を求めるため、二次元高速フーリェ変換を行うのではないかと想像した。もしこの推測が正しければ、ここでも二次元高速フーリェ変換のSIMDが活用できる筈である。
二次元高速フーリェ変換は、トンボの目玉のような複眼処理と見なしうることから、まだまだ応用分野は広い。
二次元高速フーリェ変換のSIMDは、スパコンかエキスコンか。処理能力から計算するとエキサコンに分類されるかもしれない。その能力を持つ特殊目的の二次元高速フーリェ変換SIMDプロセッサは必要とされ、それ故に実現されることを期待したい。
今のところスーパーコンピュータの評価を行うサイト、TOP500にはそのようなスパコンは見あたらない。
(納)

再びスパコン談義

2010-01-18 15:25:52 | Weblog
 事業仕分けや、納さんの論評によって、次世代スパコン開発プロジェクトが、一層、気になりだした。あと追いながらいろいろな資料を見ているが、いまだ釈然としない。
 (1)事業仕分けは、もちろん技術論と無関係ではないが、科学技術の促進そのものを云々するものではなく、開発プロジェクトに関わる経費(予算)が適性か否かを論議するのが、主な目的ではなかったか。にもかかわらず、どのような根拠で(つまりコストで)開発予算が組まれたかという議論がほとんど見られない。事業仕分けで、「来年度予算の見送りに限りなく近い縮減」と結論されながら、その後の政治的判断とやらで、40億円を圧縮して227億8000万円の平成22年度予算を計上することになったようだが、この40億円削減の根拠はどのようなことであろうか。
 同時に、227億8000万円をどのように使うのであろうか。約228億円と言う金額は一般にはなじみが薄いが、学生数1万人の技術系大学の人件費、研究費を含めた年間総予算が約200億円弱であることを思えば大変な巨費だ。しかも、当初計画した開発期間7年間の総予算1,154億円がほぼそのまま残されるとすれば、この200億円超の金が(今年を含めて)あと3年間、費やされるのである。このほか、年間運営費80億円×6年間=480億円が見込まれている。さらに、次世代スパコン機の縮小版(?)を複数の大学に展開するための予算1,000億円が計上されている。
 開発計画によれば、処理ユニット(並列処理をする場合の1単位でノードとも言われる。実際にはこの中にさらにコアと言われる演算回路が複数含まれる。)、光接続装置などの新しいハードウエアの開発、並列処理を効率よく実行するための数多くのソフトウエアの開発などを行なうそうだが、それらにどのようなコストを見込んでいるのであろうか。
 さらに、システムの基本的な構成が、当初のベクトル(SIMD - Single Instruction Multiple Data)型とスカラー型(MIMD - Multiple Instruction Multiple Data)の複合機からスカラー型だけに変更されたそうだが、そのことに伴うコストの変化はて無視できるものではないのではないか。総開発費1,154億円は縮小されるのであろうか。
 平成19年6月付の科学技術・学術審議会 研究計画・評価分科会 情報科学技術委員会 次世代スーパーコンピュータ概念設計評価作業部会の「次世代スーパーコンピュータ概念設計評価報告書」を見ても、同じく平成20年7月付の「次世代スーパーコンピュータ作業部会報告書―次世代スパコンの共用促進と研究機構の構築に向けて―」を見ても予算、もしくは、開発費に対するブレークダウンした議論が見当たらない(あるいはどこかに議事録でもあるのであろうか、あるのなら教えていただきたいものだ)。
 平成18年度にどのような経緯で開発予算が定められたのか、よく分からない。一度どんと予算の大枠を決めたらあとは誰もお金のことを気にしないのであろうか。プロジェクトの進行に伴って、開発予算も変わると思うのだが。
 (2)次は技術的な問題。まず、開発目標10Pflopsはどのようにして決められたのか。世界のスパコンの開発状況を外挿して、2012年に世界1位になればよいと、単純に設定した訳ではないと思いたい。繰り返すが、世界1位になると言うことにあまり意味はない。事実、計画されている次世代スパコンは、まだ、概念設計の段階なのに、NASAは2012年稼動の、20PflopsのSequioaシステムの開発をIBMと契約したという。また、納さんが示された学会誌(IEEE Computer 2009年11月号)によると、さらに、10年後を目指して、1,000倍、すなわち、exa-scale (10の18乗) ops (operations per second) の、いわゆる、extreme-scale systemの開発が検討され始めている。
 大体、「1位になることに意味がある」などと大見得を切るものだから、議論が横道にそれてしまった。1位云々ではなく、これまでのスパコンでは、これこれのアプリケーションではこのような能力不足があり、これだけの性能アップがあればアプリケーションがこのように改善される、と言う具体的な目標設定を示してもらいたいものだ。そのほうが、現実感があり、説得力もあるのではないか。そして、その目標どおりに稼動するスパコンが実現できたなら、たとえ1位ではなくとも、それはそれで立派な成果と言うべきである。
 性能目標をもう少し細かく見ると、連立1次方程式の解法であるLinpackで10Pflops達成、高速フーリエ変換、その他、などの項目(HPCC主要4項目)で最高性能を達成する、とある。Linpackの具体的内容についてはよく知らないが、連立1次方程式を解くと言うのであれば行列計算が主になろう。この場合にはベクトル型のシステムが適していると思われるが、日電、日立の撤退によって、ベクトル方式は棄てられてしまった。スカラー方式だけでLinpack 10Pflopsの目標を実現できるのであろうか。また、高速フーリエ変換はメモリに飛びとびにアクセスする必要があり、並列処理で性能を発揮するのが難しいと言われている。
 並列処理システムの計算能力をいうのに、単純に、「1単位(コアと言うこともある)の計算能力×並列におく単位の数」とすることが多い。しかし、並列におくコアがそれぞれ独立に動くのではなく、互いにデータをやり取りしながら計算を繰り返すのである。このデータをやりとりする時間のため、実際の計算能力は上の単純な計算ようにはならないと言うことは、誰しも予想するところである。この、データをやりとりのためのオーバーヘッドをどのように算定したのであろうか。通信オーバーヘッドを加味したシミュレーションによって、アプリケーションによっては、並列度を増加しても、上のように単純に性能が向上するとは限らないと、先の学会誌は論じている。
 これで、言われているような性能が発揮できるのか、少々、心配だ。内情が詳しく分からないので的外れかもしれないが、性能実現の自信となる基盤技術やデータの蓄積はどうなっているのであろうか。先の「次世代スーパーコンピュータ概念設計評価報告書」でも、若干の懸念が示されているが、開発担当機関の説明を追認する記述が多く、具体的な議論が示されていないので技術論的に納得させるものが少ない。あるいはどこかに、もっと詳細な技術論文があるのであろうか。
 要素数が極めて多いことから、dependable computing技術の援用が云々されているのには(当然なのだが)、少々、驚いた。しかしそこで言われている技術は、キャッシュのECC、内臓RAMのパリティ検査、パスの2重化、ノード間のネットワーク障害対策(具体的に何のことか分からない)と言った、従来の単一大型機のRAS機能をベースにしたもので、あまり先端的ではない。演算部分の誤り対策として、一般的にはECCは適用できない(出来ないことはないが回路が複雑になり、動作速度が低下する)ので、その正常性をどう保証する(あるいはモニターする)のであろうか。一つのコアの誤りが検出できたとしても、その誤りが超並列の各コアに伝播してしまう後始末をどうするのであろうか。超並列システムのチェックポインティングの問題は簡単ではなく(性能低下に結び付く)、今でも、dependable computing communityにおける、格好の研究課題としてもよい。
 全般的に、「次世代」と言っても、計画は従来からの技術の延長のような印象を受ける。産経省ならいざ知らず、せっかく文科省が取り組むのであるから、もっとブレークスルーをもたらすような技術的挑戦を期待したい(与えられたアルゴリズムを自動並列処理化するプログラムの開発などにどのような進展があったのであろうか)と言いたいとろだが、このようなことをいまさら述べても仕方がないと言う気もする。
 (3)事業仕分けの議論の中で気になった点をもう一つ付け加えておきたい。それは「専門家でもない者は黙っていろ」という論調である。専門家集団が、自分たちで資金を集めてプロジェクトを遂行するのであれば何も言うことはない。しかし、今回は、専門家ではない私たちのお金を使うのである。誰でも、訳がわからないまま、お金を他人に渡すことはしないであろう。訳を知りたいといろいろ聞いたり、用途に関して意見を言うのは当然ではないだろうか。
 専門家は、資金提供者に理解してもらうために誠実に(論理の飛躍や、すり替えをしてはいけない)、科学者的・技術者的良心にしたがって説明するのが本当ではないか。「百年後の歴史に責任が持てるか」などと、居丈高に言うのはどうかと思う(人の不安に付け込んで宗教者が恫喝するのと似ている)。「百年後の歴史に責任が持てる」人など、誰もいないのだから。もう少しまともな技術論議を期待したいものだ。
 おやおや、大論文になってしまった。(Robert Nielsen)


子どものこころの発達と教育

2010-01-10 16:00:43 | Weblog
この表題のもとに開催されたシンポジュウムに出席して聴講した。グローバルCOEによるプロジェクトの一環として研究を進めている成果報告である。COEとはCenter Of Excellence programのことで、2002年から開始した文部科学省の研究拠点形成等補助金事業であり、様々な分野にまたがる。政権交代した政府において平成21年11月に行われた事業仕分けでも取り上げられている。
このシンポジュウムでは、胎児の頃から小学校高学年に至るまでの発達と教育に関する研究成果が報告されている。その中から、京都大学大学院教育研究科の松下佳代教授の研究「学びを評価する -パフォーマンス評価の試み-」は、現在の学校教育のあり方について一石を投じる様に思われたので、コメントとして書きとめておきたい。
パフォーマンス(performance)とは行動とか演技のことであり、大道芸人が街頭で演じる芸などのことをパフォーマンスともいう。松下教授が例として示した自動車運転免許の実地試験はパフォーマンス評価によって行われる。実技評価という日本語約を与えるといささか意味が狭くなるが、その延長線上にあるといえる。
学習することによって知識・技能などの能力を高めることは、スタティック、すなわち静的にポテンシャルを高めることと解釈してみる。物理的には重力場とか電界、磁界はスタティックなポテンシャル界である。そのスタティックな知識・技能ポテンシャルを評価することが入学試験などの学力試験であると見なすことができる。
物理的にはスタティックなポテンシァルだけでは、それがいかに高くとも仕事はしない。仕事をするためにはポテンシァル界の中での「動」が必要である。スタティックに対してダイナミックである。ダイナミックとは動的事象を表す。知識・技能を活動させることをパフォ-マンスと捉えることで、私は納得することができた。スタティックな知識・技能だけでは、宝の持ち腐れであり、それらをダイナミックに活用することでその価値が発揮できる。繰り返しになるようであるが、パフォーマンス評価とは、知識・技能のダイナミックな能力評価といえる。
そのように解釈すると、いまの学校教育は知識・技能のダイナミックな能力を評価することはない。それはスタティックな知識・技能を高めることだけが評価されるからである。極端な言い方をすれば知識・技能のパフォーマンスは必要ないからといえるかもしれない。
しかし人として社会の中で生活するにあたり、はたしてそうであろうか。社会にあって、人は知識・技能のパフォーマンスが要求される。そこに人としての価値がある。

 学校教育の過程では、知識・技能の養成は必要であるが、その活用の仕方も養成しなければならない。活用する能力を評価することがパフォーマンス評価である。しかし知識・技能のパフォーマンス評価は容易ではなく時間と手間がかかることは松下教授が「試み」の成果報告の中でも指摘している。参加した聴衆からも多くの質問が寄せられていた。
算数とか理科などでは可能かも知れないし、体育・図工・音楽・生活・家庭などはパフォーマンスそのもの評価とみなすことができるが、国語・社会などについては困難である。どのようにすればよいか、今後の課題でもある。いま試みが始まったばかりである。
 パフォーマンス評価は、学校教育において養成された知識・能力をいかに活用できるかという能力を評価することである。ここに教育環境の価値を高める意義がある。 
(応)

エキスコン(3)

2010-01-04 16:04:38 | Weblog
2010年の新しい年になった。
昨年の事業仕分けで凍結されていたスパコンの開発予算が認められたという報道が1月4日の朝のNHKニュースにあった。
総額約1200億円ほどで、平成22年度は約200億円が計上されたという。年代こそ違うが前回のエキスコン(2)の話題として取り上げたIlliac IVの累積開発額のおよそ12倍である。これほどの経費を要するから、この「炉端での話題」でロバート・ニールセンが指摘したように、その投資額に見合うだけの成果がもたらされなければならない。今回の事業仕分けで明らかになったように、スパコン能力の単なるトップ争いではなく、研究分野での世界的な貢献が期待される。どのような成果がもたらされたか税金を払う人々に報告する義務がある。
NHKのニュース報道の中で、現在の日本のスパコン事情として地球シミュレータにふれていた。この地球シミュレータは、1998年から科学技術庁が600億円をかけて開始し、2002年に稼働、2004年までスパコンのトップの座にあった。現在は20位であるという。
運用のための所要費用は年間約50億円、消費電力は約6メガワットという。1年365日、日に24時間運転するとしても一時間あたり57万円になる。Illiac IVの一時間あたりの運用費は2500ドルと記録に残されている。さらにIlliac IVの所要電力は約3メガワットであったといわれている。Illiac IVは消費電力が多かったとか、運用費が高くついたということで「史上もっとも悪名高い」と揶揄された理由はない。
演算速度だけで性能を見ると、Illiac IVは約100 MFLOPS (メガ浮動小数点演算回数/秒)であったのに対して、地球シミュレータの最大理論性能は40TFLOPとされているので、単純計算すると約40万倍の演算速度向上となる。実際には、スパコンの性能を演算速度だけで評価することはできない。現在市販されているサーバー用のCPUとして高性能とされるAMD社製品のOpteronは単体で5.6 MFLOPSの性能があるので、これを10万個用いれば、560TFLOPのスパコンが構成できることになる。
スパコンの上位として位置づけようとしているエキスコンも演算能力により性能を誇示している。例えば、このシリーズのエキスコン(1)で、引用したイリノイ大学のエキスコンBlue Watersは、8個のcore(かってのCPU主演算機構のことを指す)を持つPower7というチップを20万個以上使用して、10 PFLOPの演算速度の性能を持つといわれている。スパコンとエキスコンの違いとして、スパコンはTFLOPによる演算の能力で表し、エキスコンは1000 TFLOPに相当するPFLOP(ペタフロップスとよぶ)による演算能力を有するものと言えそうである。数値のみにとらわれれば、パソコンのCPUを1000万個並べ、これらを何らかの方法で結合させれば、ギネスブックに掲載されるような名目的な世界一のエキスコンは容易に実現できるであろう。しかし、これはほとんど意味のないことであることはわかる。エキスコンが世界のトップの性能かどうか、数値の魔術にとらわれてはならない。
またパソコン用のCPUチップを多数個用いることは、応用目的に沿ってこれらを接続・結合するとしても別の課題が生じる。イリノイ大学のかってのIlliac IVは、実稼働に入ってから信頼性が問題になった。前回に記したように多大な保守時間を必要とした。1000万個のように多数のCPUを並べるとしたら、1000万個すべてが正常に動作することは、まずあり得ないであろう。エキスコンで得られた結果が信頼できるかどうかは、エキスコン自体の信頼性にかかわる。最近では、このような信頼性のことをデペンダビリティ(dependability)といっている。イリノイ大学が現在開発にかかっているエキスコンBlue Watersに関する記事には、このデペンダビリティのことをresiliency(直訳すると弾力性)としている。そのためにハードウェア・レベルでは、メモリ・システムに誤り訂正符号を用い、データ転送にはパリティ検査、さらにテスト回路を付設する。もし誤りを検出した場合は設定したチェック・ポイントに遡ってロールバック回復とか、誤りの発生した処理単位の切り離しをするなどと記述されている。これらは専門的な内容であるが、まさに世界的な学会レベルで扱っているデペンダビリティの向上策である。エキスコンはデペンダビリティという旗のもとで培われた様々な学術的・技術的な成果をもとに構築することが必要である。このことはBlue Watersのことが掲載されている学会雑誌の他の記事にも見られる。

1月4日のNHKニュースでは、新幹線車両の発生するノイズの解析、地球の海流シミュレーション解析などスパコンが使われていると報道していた。
将来のエキスコンがどのように利用されるかということについては別の機会にゆずることにする。
(納)