そだ,これはメモっておかなきゃいかんと思ったことを書いておく。
奥村先生のblogで知ったのだが,カシオに高精度計算サイトというものが正式オープンしたそうな。で,ちらっと触ってみたら,確かに高精度計算している模様。で,内部計算はこれを使っているのではないかとご指摘があった。なーるほど,高性能の電卓みたいなモンか(システム全体の詳細はこれ)。10進演算だから変換誤差も入らない,と。確かにTry MPFRでこの辺の計算は大体対応しているんだが,2進<->10進の変換誤差が入らない分,ここに載っている計算結果には都合がいいよね。
しかし,どーも世間の誤解を招きそうな解説が多くて首を傾げてしまう。確かにFPGAで高速化なハードウェア計算を実現してるのは認めるんだけど,歴史を紐解くと10進回路ってのは大規模計算向きには使われなかった,それなりの理由があるんだけど,このシステムでそれが改善されているかどうかはちと疑問だなぁ。何より,所詮は有効桁計算なので10進だろうが2進だろうが,内部演算で発生する丸め・打ち切り誤差を消すことはどっちみち出来ないので,同じ内部桁数ならこのハードウェアだろうと,ソフトウェアで実現しようと,得られる精度が劇的に良くなる訳でもない。人間に取って都合がいい10進数を使っているのが実用上のメリットであるのは確かだけど,それは視覚的なモノに限られる。精度がよく見えるのは,桁数がIEEE倍精度よか多いからであって,10進にしたからじゃないのよ。その辺,誤解を与えそうなプレゼンシートは,ビジネス用に脚色し過ぎという気がする。
まあしかしこれからはCPUの単純なclock upも制限されそうな感じだし,ハードウェア計算が主流になる流れに乗ったモノであるのは確か。誇大広告っぽい所はあるけれど,2進数は気持ち悪いと思っている向きには使いでのあるシロモノかもしれない。
さてもう寝ましょうか。
Posted by tkouya at October 7, 2008 12:18 AM