円周率計算の記録更新、使われたのはなんとデスクトップPC 91
ストーリー by hylom
116日間フル稼働というのもすごい 部門より
116日間フル稼働というのもすごい 部門より
円周率π計算の桁数の記録が更新された。計算機の進歩とともに記録は更新されるものだが、今回の記録更新で使われたのはスーパーコンピュータではなく、なんと1台のデスクトップPCなのだそうだ(本家記事:New Pi Computation Record Using a Desktop PC、元ネタ:Pi Computation Record)。
今回の計算で達成した桁数は、約2兆6999億桁。前回の記録は昨年、筑波大・計算科学研究センターで達成された約2兆5769億桁なので、1200億桁ほどの記録更新となる。
元ネタのPress Releaseによると、計算に使われたマシンの主なスペックは以下の通り。
- CPU:Core i7(2.93GHz)
- メモリ:6GB
- HDD:7.5TB(1.5TB×5)
PC自体は2000ユーロ(25~26万円程度)のもので、OSにはLinux、π計算プログラムは独自に作られたもの。
どのように計算したのか、どれくらいの時間がかかったのか、いろいろと疑問に思う点があるが、そのあたりはFAQに詳しい情報がある。それによると、円周率計算で直接かかった時間は116日間で、もちろんスーパーコンピュータよりも時間は長い。また、計算式自体も、前回の筑波大の記録で使われた公式よりも収束が遅いものを使ったという。しかし、CPUキャッシュを効率よく利用する、といった「1台のPCならでは」の工夫によって、計算効率自体は非常に高いものになっているとのこと。
なお、計算が正しく行われたかの検証は、全桁についてチェックしたわけではなく、πの16進表記で最終50桁についてのみ行われたようだ(10進や16進表記で、πのある桁以降についてのみ直接計算できる公式がある)。
計算公式 (スコア:5, 参考になる)
上記のソース読んでみましたが、80年代~90年代に頻繁に記録更新に使われた
> http://xn--w6q13e505b.jp/history/computer.html [xn--w6q13e505b.jp]
Chudnovskyの公式のようですね。級数をテイラー級数ですなおに計算すると時間がかかりすぎ
高精度計算できませんがBinary Splitting法を使った加速により短時間で計算できたようです。
この手法は、2002年時点の世界記録である、高野喜久雄の公式を使った計算でも使われました。
いやしかし家庭用PCでも100日間以上も高負荷運転して、よく安定して動くもんですね。
ちょっとびっくり。それもRAID0で計算したと書いてあったりするし…
何がすごいって (スコア:3, 興味深い)
計算そのものは 103日
ベリファイに 13日
10進変換に 12日
変換のチェックに 3日
トータル 131日
って、計算自体は3ヶ月ちょっとで終わっているのね。 すごいなあ。
Re:何がすごいって (スコア:5, 参考になる)
本家に書かれていますが、これを達成したFabrice BellardさんはLZEXEやffmpegやQEMUの原作者で、1997年にも円周率の世界記録を打ち立ててる人です。
本当にすごい。
Re: (スコア:0)
凄いとしか言えないな・・・。
世の中にはこんな人もいるんだよな。温い事言ってないで精進しなきゃ。
Re: (スコア:0)
なんと、ファブリーズたんでしたか(数年前の一時期に2chのOS板を見てた一部の人ぐらいにしか通じない)
相変わらずブッ飛びすぎです、あの人は。
仕分けされそうです (スコア:2, すばらしい洞察)
Re:仕分けされそうです (スコア:3, すばらしい洞察)
「時間をかければ確実に一発で正しい答えが出る」
のであれば、スパコンの意味を疑うのも仕方がないですが、
「時間がかかる計算を利用してトライ&エラーする」
ような研究であれば、半年もの間結果を待つ行為の方が無駄じゃないですかね。
Re:仕分けされそうです (スコア:1)
新車開発の期間短縮に役立ってると、自動車メーカーは自慢してたと思うけど(略)それに一体どれだけの意味があることやら。
コストダウンなら別。
意味不明。
開発期間は開発コストと密接に結びついているのになぜそうなる。
うじゃうじゃ
Re:仕分けされそうです (スコア:2)
シミュレーションのため計算機を回すのと、
試作品を作っては壊すのを繰り返すのと、
どっちが金かかるのかなって話ではないかな。
試作品は量産品と違って、1品1品が高くつきますが、
それでも昔は作っては壊し、作っては没にし、
テストを繰り返しながら部品の開発が行われていました。
今ならシミュレーションであらかじめダメそうな案をふるい落としてから
有望株を幾つか実際の試作とテストに回すほうが安いのでしょう。
Re:仕分けされそうです (スコア:1)
いやその…その点については説明してもらわなくても理解できているし、聞いてるのはそこじゃないんですが…
うじゃうじゃ
Re: (スコア:0)
いや、世界一のスパコンで行った訳じゃないので実績は得られない筈。
実績が出せるのは唯一世界最速のコンピューターのみの筈だからねー。
Re: (スコア:0)
仕分けられるべきはパソコンによる計算に負けちゃう
東大の金田先生ではないかと
Re:仕分けされそうです (スコア:2)
信頼性といえば、最近はやりのGPGPUは信頼性がイマイチのようですね。
> http://www.slideshare.net/pfi/20091210-gpu [slideshare.net]
26ページあたり。不良品が多いらしい。
Re:仕分けされそうです (スコア:3, 興味深い)
日経エレクトロニクス 2009-12-28 号に長崎大の事が出てましたけど、
GPU の為に演算エラーが出まくり。
実行演算速度は 1/10。それを加味すると 1000万円/TFLOPS に近づき、
一般的なスパコンと同レベルの価格性能比だそうです。
TomOne
Re:仕分けされそうです (スコア:2)
長崎大で使われている世代のグラボにはECCが搭載されていませんしねぇ。
グラボにECCが乗ったのはAMD Radeon HD5xxxシリーズからで、NVIDIAの方もFermiが出るまではECCは無いはずです。
#グラボという灼熱環境下でECC無しにギガヘルツオーダでDRAM動かせば相当エラー出るでしょうね。
Re:仕分けされそうです (スコア:2, 参考になる)
ええと、いろいろ事実誤認があるのですが、とりあえず事実についてのみ。
> あの時はセレラジェノミックス社のグレックベンターが当時のコンパックからせしめたアルファサーバーをフル回転させてぶっちぎったんですよね。
日本語に直すなら クレイグ・ベンター [wikipedia.org]です。
Alphaは当時は既にコストパフォーマンス的に見合わなかったので(初期のNCBIのBlastサーバーの話と混同?)Celeraの主力ではなかったと思いますし、
ショットガン法を使ったことがスループットを大きく上げたのであってボトルネックはコンピューターパワーのところではありませんでした。
kaho
Re:仕分けされそうです (スコア:1)
> 仕分け直後の反発の中に「PCいっぱい並べてもどうなるものでもない」って言ってる人がいたような気がするけど。
計算時間とか信頼性とかいろいろ考えるとやっぱりPCをいっぱい並べるだけじゃだめだと思うんですけど…
今回の成果はこれはこれで凄いけど。3ヶ月以上ちゃんと動き続けたんだなぁとか。
ちょっと調べてみたんですが、Core i7 (Nehalem)はオレゴンの設計チームで、
旧DECのハドソンの設計チームが関わっているのは、次のXeon (Nehalem-EX)じゃないですか?
あと、UltraSPARCはSunの製品で、富士通のはSPARC64。
レンズの計算 (スコア:2)
一人の人が。天体望遠鏡のレンズの設計計算に使っているというのがありました。
電源入れたら、半年位、ひたすら計算させて、出力結果に基づいて、レンズ屋さんに
磨いてもらうのだそうです。
そんな使い方があるものかと感動したものです。
Re:レンズの計算 (スコア:2)
是非そのお仲間さんに伺いたいのですが、
20年前に半年かかった計算は、
今どのくらいで終了するんですかね?
Re:レンズの計算 (スコア:1)
20年前のパソコンというと 80386/20MHz 位か。
クロックで 150倍、IPC が 4倍くらい上がってるとして 600倍。
24 * 365 * 0.5 /600 = 7.3時間。
さらにクアッドコアだと……なんかウォーズマン vs バッファローマン思い出した。
20年前だと FPU 付けてないのが一般的だから、
それを加味するとさらにとんでもない倍率に。
もう分単位じゃないかな。
TomOne
Re:レンズの計算 (スコア:2)
さすがにその用途ならコプロつけてるんじゃない?あたりが。CyrixのFasMathとか。
Re:レンズの計算 (スコア:1, 興味深い)
富士写真フイルムのFUJIC [wikipedia.org]の目的そのものですね。
家庭用が代替になったという点でも今回のネタと共通してて面白いです。
ほー (スコア:1)
外野としては検算が楽しみ。どんな計算機で検算するかも込みで。
Re:ほー (スコア:2, 興味深い)
単純に時間さえかければ記録を塗り替えられる、
それも何十年とか何百年ではなくて1年弱で達成できるなら、スパコンよりデスク
トップPCの方が有利なこともあるってことですかね。
なにしろスパコンは高価であるがゆえに、円周率計算のような「無駄な」作業に
何日も何週間も割り当てておくことができないから。最後はお金との戦いに
なりそう。
デスクトップPCで一番恐いのはハングアップや停電かな。電源入れっぱなしで
何ヶ月も連続稼働させて、あと一歩の所でブルースクリーンが出たりしたら
目も当てられない。
Re:ほー (スコア:1)
仮想化して、定期的にスナップショットを取ったらどうだろう…1からやり直しよりはかなりましな状態になる気がする。
あとは…この手のプログラムなら、gcore でコアを定期的に吐かせる、と言うのも手かと。
停電等起こったら、gdb でプログラムと core ファイルを使って途中から実行再開。
fjの教祖様
Restartability (スコア:4, 参考になる)
元ネタの本のページの Technical Notes (PDF形式)にちゃんと書いてありますよ。
アプリケーションレベルでチェックポインティングをやっているそうです。
コンタミは発見の母
Re: (スコア:0)
元ACだけど、短時間の停電については普通にUPSくらいは付けてるでしょうね。
ただ、大規模停電にまで対応できるかとなると……。
仮想化やバックアップについては、パフォーマンスの問題もあるから難しいかも。
Re: (スコア:0)
15年近く Linux 使ってますけど、ブルースクリーンなんて見たことがない (グラフィックドライバがタコで、固まるのはあったけど ;-)。
Re:ほー (スコア:1, おもしろおかしい)
青一色じゃありませんが、全体に青っぽくなったことはあります。
#VGA コネクタが抜けかけて、R の信号だけ途絶えてた
Re:ほー (スコア:2, おもしろおかしい)
Re:ほー (スコア:2, おもしろおかしい)
そこまで外す必要はない。
モニターの電源切ったらブルースクリーンは出ないんじゃないの? [livedoor.biz]
不便だけど。
(252のあたり参照)
息子のデスクトップPCで (スコア:1, おもしろおかしい)
スパコンよりたくさん円周率を計算できるというプログラムのソースコードの入れ方をどなたかご存知ですか?私にはさっぱり…。
ただのデスクトップだと思ったら (スコア:1)
なにこのモンスターマシン
#そりゃスパコンとは比べるべくもないですが...
Re:ただのデスクトップだと思ったら (スコア:2, 参考になる)
HDDについては、求めた結果を10進数の文字列で保存するだけで、2.5TB程度いるようです。
1を聞いて0を知れ!
16進表記で、πのある桁以降についてのみ直接計算できる公式 (スコア:1)
π − πの計算 アルキメデスから現代まで− [kyoritsu-pub.co.jp]に”16進表記で、πのある桁以降についてのみ直接計算できる公式”=BBP公式が載ってます。
数学定数のページ (スコア:1)
数学に現れる興味ある定数に関するWEBサイトMathematical Constants and computation [computation.free.fr]に新しい数学定数の多倍長計算記録が出るごとに報告されています。以下のページ:
What's New - What's Changed - What is new or what is changed in the world of Numbers, Constants and Computation. [computation.free.fr]
今回の記録も報告されています。
ご参考まで
ベンチマーク (スコア:0)
スパコンのベンチマーク・動作確認として円周率計算を行うのは
分かるがPCでやることに意味があるのかな?
あと円周率の計算よりもメルセンヌ素数の探索の方が、人類の役
にたつような気がする。
Re:ベンチマーク (スコア:3, すばらしい洞察)
スパコンのベンチマーク・動作確認として円周率計算を行うのは
分かるがPCでやることに意味があるのかな?
あと円周率の計算よりもメルセンヌ素数の探索の方が、人類の役
にたつような気がする。
意味があるならみんながやってるだろ・・・
趣味に決まってるだろ・・・
Re:ベンチマーク (スコア:2, すばらしい洞察)
今回の件で特に意味があるのは、PCでも時間さえかけられるのであれば、スパコン以上の結果を出せることを実証したこと。
あとは、新しいアルゴリズムを開発すれば学術的な価値があるし、そうでなくても自己研鑽にはなる。そのうちの数パーセントでもいいから、世のために役立つことに使えるのなら、なおさら良いこと。
役に立たないならやるなとか言い出すと、学校の勉強は役に立たんから、家業を手伝えと言うのと同じレベルになります。
Re:ベンチマーク (スコア:1)
>PCでも時間さえかけられるのであれば、スパコン以上の結果を出せる
そりゃ 100倍遅いマシンでも 100倍時間を掛ければ良いってのは当たり前。
スパコンってのは時間を金で買ってるわけだから。
TomOne
Re:ベンチマーク (スコア:1)
そりゃ PC でやった成果は凄いと思いますよ。
30分アニメを、アニメスタジオじゃなくて個人で作ったのと同レベルくらいの。
ただ、これは円周率の計算が、ほとんどの人が対象にしない
進みの遅い分野だから、PC でやって成果として現れたんでしょう。
PC で 3ヶ月掛けて計算して、明日発表と言う時に
「スパコンが 1週間で倍の桁を計算しました」
なんて続々発表された日には誰も見向きしない。
アニメと違って(アルゴリズムは色々あるけど)円周率の結果は 1つだし。
TomOne
Re:ベンチマーク (スコア:1)
少なくとも 4bit CPU である 4004 で、
電卓と名乗れるだけの桁数を計算できるくらいは当たり前。
むしろどうして計算できないのか教えて欲しいです。
容量なんてひたすらバンク切り換えれば幾らでも増やせるし。
計算している最中に壊れるとか言うのは無しで。
ちなみにどんなワードでググったんですか?
TomOne
Re:ベンチマーク (スコア:2)
BOINCプロジェクトに参加しているのだが、円周率を計算する
パワーがあるならこっちにくれよと思いますね。
Re:ベンチマーク (スコア:1, おもしろおかしい)
こんなところに書き込みしているパワーがあるなら計算に使えよ
Re:ベンチマーク (スコア:1)
いやいや、むしろコンセントから引き抜いてください。
でんこ
記録更新じゃない (スコア:0)
勝手に新記録と言い張っているか,まわりが勝手に新記録と呼んでいるだけ
検証が無ければ科学的・学術的な価値はまったく無い
Re:記録更新じゃない (スコア:2, 参考になる)
それを言い出すと東大や筑波大の記録更新の検証計算も怪しいですよ(w
東大や筑波大が記録更新および検証に使っている
- ボールウェインの 4 次の収束アルゴリズム
- ガウス・ルジャンドルアルゴリズム
は独立したアルゴリズムではありません。数学的な話はおいておいて、数値計
算すると直感的にわかります。以下Mathematicaで数値計算した結果を挙げて
おきます。
(* ボールウェインの 4 次の収束アルゴリズム。*)
(* 初期値の設定。有効桁は100桁を指定。 *)
y=N[Sqrt[2]-1,100]
a=N[6-4 * Sqrt[2], 100]
(*2回繰り返し計算する*)
y=(1 - (1-y^4) ^ (1/4)) / (1 + (1-y^4) ^ (1/4))
a=((1+y)^4 * a) - (2 ^ 3) * y * ( 1 + y + y^2)
y=(1 - (1-y^4) ^ (1/4)) / (1 + (1-y^4) ^ (1/4))
a=((1+y)^4 * a) - (2 ^ 5) * y * ( 1 + y + y^2)
(*計算終わり。iが円周率の近似値になる *)
i=1/a
(*ガウス・ルジャンドルアルゴリズム*)
(* 初期値の設定。*)
a = N[1,100]
b = N[1 / Sqrt[2],100]
t = N[1 / 4,100]
(* 4回繰り返し計算する *)
an = a; a = (a + b) / 2; b = Sqrt[an * b]; t = t - (an - a) ^ 2
an = a; a = (a + b) / 2; b = Sqrt[an * b]; t = t - 2 * (an - a) ^ 2
an = a; a = (a + b) / 2; b = Sqrt[an * b]; t = t - 4 * (an - a) ^ 2
an = a; a = (a + b) / 2; b = Sqrt[an * b]; t = t - 8 * (an - a) ^ 2
(*計算終わり。jが円周率の近似値になる *)
j=(a+b)^2/(4*t)
(*円周率の正確な値とのエラーを比較 *)
CForm[Pi - i]
(* 出力例: 5.4721091456899418327485331789641785565936917028247615519e-41 *)
CForm[Pi - j]
(* 出力例: 5.4721091456899418327485331789641785565936917028247615519e-41 *)
(* あれ、エラーが同じ値だぞ… *)
CForm[i - j]
(* 出力例: 0.e-98 *)
(*おわり*)
ちなみに、さらに高精度計算したり計算回数を増やしても同じです。
数値計算からわかるように、筑波大の記録更新で本計算および検証に
使われたアルゴリズムは本質的に同じ数列を計算している事になります。
ボールウェインの4次収束アルゴリズムでの一回の繰り返し計算はガウス・ルジャ
ンドルアルゴリズムの二回の繰り返しの計算に相当します。
また別の見方をしますと、これらのアルゴリズムを使った計算では、
円周率への収束判定をミスして、まだ収束しきってないのに計算を打ち切っても、
双方同じ計算結果になります。
# 個人的には東大や筑波大の計算の検証方法の方が信頼性が低いと思っています。
Re:記録?? (スコア:5, おもしろおかしい)
>ていうことは例えば「月刊円周率」なんて本を作って延々と発行していくと
>どんどん著作権侵害で訴えられてしまう……
ご存知かもしれませんが、月刊円周率という本は存在します。
http://www.bk1.jp/product/03224042 [bk1.jp]
http://twitpic.com/ur4hf [twitpic.com]
元々同人誌だったのですが、ISBNを取得して一般の書店でも買うことが出来るそうです。
http://mikaka.org/~kana/d.htm?goods-j.html [mikaka.org]
Re:記録?? (スコア:2)
Re:記録?? (スコア:1, おもしろおかしい)