Gauche > Archives > 2013/11/12

2013/11/12 01:10:40 UTCenami
#
NetBSD が default の 387 のモードを 63bit precision にしようとしているのですが, http://blog.practical-scheme.net/gauche/20130128-ratnum-bignum の話って,53bit precision の値同士の割り算を 63bit precision で計算した結果を 53bit に戻すこと自体が問題という理解であってますよね?
#
だから volatile double r = x; r /= y; とかは効かなくて,387 のモードを変えて割り算命令を 53bit precsion でするしか対策はない,ですよね.
2013/11/12 01:51:28 UTCshiro
#
二重丸めが発生する状況が問題なので、その式でも r /= y の中間結果がFPUレジスタに拡張精度で載って、それを変数にストアする時点で倍精度に丸められたら、問題が発生します。
2013/11/12 08:39:13 UTCとおる。
#
時間がたっちゃいましたが、CentOS の環境で上の OpenSSL のコマンドをためしてみました。
#
$ openssl s_server -tls1 -accept 19002 -quiet -cert ../.././axTLS/ssl/test/axTLS.x509_512.pem -key ../.././axTLS/ssl/test/axTLS.key_512.pem
getaddrinfo: Name or service not known
#
野良ビルドした openssl だと、上のコマンドで入力待ち状態になったので、yum がなんかおかしいんでしょうねぇ。
2013/11/12 12:02:23 UTCshiro
#
yumで入ってるopensslのバージョンはいくつですか。 (openssl version で表示)
2013/11/12 14:42:25 UTCshiro
#
>enami ああ、これですね http://mail-index.netbsd.org/port-amd64/2013/11/12/msg001977.html Joergさんに通じてないのかな? 二重丸めが原因なので、メモリへの53bit precision storeを強制するだけではだめです。-mfpmath=sse ならいけますがSSE必須になっちゃうので (今時心配の必要はないかもしれないけど一応…)、FPUレジスタモードをいじる手段は提供されてて欲しい