2007/06/09

PS3で並列プログラミングやるぞ

なんの迷いも無くPS3を導入しました。並列プログラミングの道へ一歩進んだ。

Linuxインストールの為には、ブートローダーをインストールして、それからLinux本体をインストールすれば終わりみたい。意外と簡単。

一つミスったことは、FedoraというLinuxの無料ディストリビューションがあるのに、わざわざYellow Dog Linuxを購入してしまったこと。悔しい、悔しすぎる。なぜ購入前に気づかないのか・・・。まあ、購入版の方がサポートがしっかりしてるであろう(?)というのを期待します。それくらいしか、自分の行いを正当化できない。

並列プログラミングでは、僕の長年のテーマである「世界最大の素数発見」に取り組んでみたいと思ってます。

世界最大の素数を発見した人には、賞金がでるので学生の頃は貪欲に取り組んでいました。一個だけですが、僕は以前素数ランキング上位に入る素数を見つけたことがあります。実際の数は「903 · 2^200018+1」(60,215桁)です。この素数を発見した当時は、確か世界で260番目くらいに大きい素数だったと思います。最近はランキングがどんどん落ちて、10,281番目になってしまいましたが、学生時代の良き思い出です。

素数発見プログラムはいくつかあるのですが、僕はProthという素数発見プログラムを使っていました。Prothを半年間くらいずーっとPC98上で動かしてて、ある朝目覚めるとログ画面に「903 · 2^200018+1 is a Prime Number」というメッセージがでていました。信じられませんでした、自分の目を疑いました。最高に嬉しくて、急いで素数協会にメールしたのを覚えています。確か1999年の終わり頃です。僕にとっては、世紀末の大発見でしたが、この時の嬉しさをいまだ誰とも分かち合うことができません。まあみんな興味ないよね〜、素数なんて。合コンで話題が枯れ果てた時にたまに話しますが、どこでも反応薄です。

ちなみに現在の世界最大の素数は「2^32582657-1」で、なんと9,808,358桁あります。桁違いとはこの事です。

Cellの力を発揮すれば、これを抜く数字を発見できるのではないかと思っています。素数発見プログラムのソースコードは公開されているので、Cellに移植する作業から入って行く予定です。

<関連記事>
PS3で並列プログラミングの勉強ができる
話題のパーソナルロボット「Manoi PF01」

<追伸>
横浜観光の道のりをGoogle My Mapにしてみました。意外と行動範囲狭い。