夜行録 - 酔歩.net

日暮れて道遠し さらに夜道を行く もって夜行録と名付く

実数の足し算

" 足し算の答えが一意に決まるなんて昔話になるかも、というお話。  確認した範囲では、MATLAB 7.8 (2009a, 64bit) に足し算をさせる(たとえばサイズが500,000x1の行列の各要素を全部足す)と、その答えは一意に決まらない。全く同一のデータについて同じPC・環境で繰り返し計算させて、ほぼ毎回違う答えが返ってくる。  これについてMathWorks社(の少なくとも一社員)の見解が書かれているページを見つけた。"
2010-01-08 - potasiumchの日記

実数の足し算か。ずっと気になってたけど、やっぱり問題あるんだな。安全な順序で足すライブラリでもあるかと思ったんだが

ってゆーか、並列条件か。そりゃ、さらに悪条件だな。

てゆーか、最新版では解決してるんなら問題ないじゃん…

やっぱり、安全な加算のコードを一度自分用に書いておくか…と思ったが、ふと手元のを見ると、 Kahanの補償付き総和法、というまさにそのものが載っていたのだった。随分前に読んだはずなのに、なんで完全に抜け落ちてたんだろ。

次にコード書く時は、忘れずにこれで積算しよう。

この手のは、古い本見るといろいろ載ってそうな予感…。しかし、どれがいいのかはちっとも判らなそうな悪い予感……。

あ、こんなのもあった。

wikipediaには、optimize に注意とまであった。親切だなぁ。

2010年01月21日 (Thu) - 14:00:00 - その他雑記 - 3245x - permalink
Karma points: 5. Do you like this article? [yes/no]