2009年2月25日水曜日

OLPC

なにか大発見をすることは偉大だ。

なにか大発明をすることも偉大だ。

発見して権威を得てもいい。大発明をしてお金をしこたま儲けるのもいい。

しかし、そういう直接の成果はなくても、人々を育てるというのもまた、かけがえのないことである。その影響力は、もちろん計り知れない。

http://japanese.engadget.com/2009/02/24/olpc-wifi/

OLPCは、ネットブックのせいでかすんでしまったかのようにみえたけれど、ただノート安くするだけが目的じゃない。こんな光景がみられるなら、自分も買ってみようかな。

地球規模で問題が起きているならば、やはり、地球のなるべく多くの人と情報を共有して、解決するのが、一番強力で、地球の問題のコモディティ化による解決となるだろうかという夢をみるな。

2009年2月20日金曜日

冬のおわり

世の中知らないことって結構あるね~。

キキキリンの夫は内田裕也なんだって。そうだったような気もするけど、そうだっけ?

キキキリンは昔違う名前だったんだって。内田裕也と別居で30年くらいなんだって。

でも、がんをきっかけに、お互いすこし逢うようになったんだって。

どうしてとか、どういう気持ちでとか、薄っぺらい感じならわかるような気もするけど、きっと、そんなの超越しているよな、絶対わかってない、自分。きっと、年をとったらわかるんだろう。

なんか、適当にいい話だなって思いたくないんだけど、いい話だと思っちゃうな。

椎名林檎の「メロウ」って昔の曲なんだって。

この曲好きだったから、また、林檎名義でいっぱだすのかなって、昔の感じで出すのかなって勘違いしてたから悲しいな。

その流れで、カプチーノって言う曲を聴いた。相当昔の曲で、テレキャス?かなんかバックで語りひきみたい。昔、これをバイトしながら聴いてたから、なんともいえない気持ちになるな。

テレキャスを弾こう。東京行って、まずテレキャスを買おう。そしたらなんか、はじまる気がする。

2009年2月11日水曜日

larrabee in PS4?

今、ネットではPS4にLarrabeeが載るかもなんてうわさがでて、結構ホットに。ソースはあやすぃ感じだけど。

自分は、昔考えたんだけども、PS4にLarrabeeは、ないこたないけど、CellがCPUでLarrabeeがGPUなんてそんなバカな構成はあり得ないんじゃないかと思って、Xboxのほうがありえるんじゃないかという結論に達した。core込みで。

そりゃ、面白い変態ハードっていう意味で言ったら、Cell+Larrabeeなんて、面白くて鼻血が出そうだけど、それを責任を持って使う立場の人間のことを考えたら、かわいそすぎる。自分は全然ゲーム開発者ではないので、いらぬお世話とは思うけど。

次の世代のゲーム機の大きな問題の一つは、どうやって製作コストを増大させないかだ。今世代ですら、PS3のほうがピーク性能は上のはずなのに、製作しやすいけどピーク性能は低いxbox360のほうが性能をよく発揮していて、総合的な仕上がりはPS3で微妙に悪いことが結構多いみたいだ。

次でも、なんか得体のしれない実験的なものを開発者にただ放り投げるようなことを、またやったら、もう終わりだろう。

逆に、多少性能が落ちるようなことがあっても、まったく新しいことができるとか、とっても使いやすいっていうのは、Xboxみてもwiiみても正しいといえるんじゃないか?

だから、たとえば、Larrabeeだけ2個のせたゲーム機で、グラフィックもCPU部分も共通にかける、使えるみたいなシンプル構成とかのほうが、Cellと混ぜるより、まだましなんじゃないだろうか。もしくは、思い切ってCPU、GPU、SSD、コンパイラ、各種ライブラリ、などなどを全部Intelから調達して、All Intelしか入ってない状態でやるというのも、いいんじゃないだろうか。節操がなさすぎるけど、そこまでやるなら逆に面白いじゃね?

あと、これはありえないことかもしれんが、CellとLarrabeeを乗せるんだったら、Cell、Larrabeeのどっちを開発するときでも、2つの違いを勝手に隠蔽してくれる仕組みがあれば、これまでのCell資産がLarrabeeでも使え、Cellも引き続き使えるとかってことになって、よいなんてことがありえるかもしれない。いやないかな?妄想レベルかな?アーキテクチャがすごく似てるから、できそうな気がするけど、たぶん無理だな。Intelの身になってみても、そういうことに協力してくれるかというと、難しそうだな。

いや~、でもおもしろすぎる話ではある。どうなることやら。

2009年2月7日土曜日

ローカリティ

今局所性が熱いらしい。

局所的なメモリの重要性は、自分もいろいろマルチコアプロセッサを使ってきて、実感してきた。局所メモリって言うのは、ある程度の演算器リソースの集中するところに、高速なメモリを置くという形で、CellとかGPUでも実装されているし、Powerでは、キャッシュをそうやって使うモードがあるらしい。

思ったのが、そういうローカルメモリがあるってことは、ブロードキャストを高速にできることと一緒なんだということ。ローカルメモリに転送した内容を、ばっと演算器でいっせいに使えば、そのデータの流れはまさにブロードキャストになる。なんで、ローカルメモリで転送データ量が節約できるかわからず、考えていたらふとそれに気づいた。間違ってる?あたりまえ?だから、脳のような階層構造型のネットワークは、ローカルメモリがあれば擬似的に実装できる。

そうして考えていくと、プロセッサのネットワークの結合様式は、ローカルメモリへの転送が十分にできるようなものであれば、一応、脳的には十分ということになる。全結合の必要はないが、それなりの帯域は必要。だから、Cellのリングバスっていうのは、なかなか良い妥協点なのかもしれないな。

しかし、しかし、データの局所性というのは、現行のプログラムの容易さとは相容れない。どうやって局所性を生かすか、そういうのは、普通のCPUだと、キャッシュで確率的にうまくいくことを願う、気を使うということであって、人間は直接触れない。逆に人間が触れるようにするとどうなるかといえば、多くのゲーム開発者が死の行進をしているのを見ればわかるぞな。

それは、学習後のバックプロパゲーションの結合の内容見たって、その結合強度にどういう意味があるのかわからないとか、脳の中の個々の神経細胞がどういう役割にあるか理解しにくいとかって言う理由も、そのローカリティの難しさと関係するような気がする。よくわからんが。

とにかく、今の感じだとローカリティを、グローバルな視点から簡単に扱えるようにできるようにする、もしくは、プログラムで自動的に変換してくれるって言うのは、難しそうだ。

よく知らんが、ローカリティを考慮したプログラミング言語ってあるんだろうか?なんか、明示的に指示や指定を入れることで、ある程度の自動化とかできなくもないだろうか?でも、ローカルメモリ量とかによって、全然変わりそうだ。そういえば、演算量あたりのデータ供給量みたいな指標があったと思うが、ローカルメモリの量と帯域と、演算量の比のような指標を作って、それを設定すれば、よいなんてのはありえるかな?