yarv-dev:1122
From: SASADA Koichi <ko1 atdot.net>
Date: Tue, 20 Nov 2007 19:08:10 +0900
Subject: [yarv-dev:1122] 考えている案
ささだです. Float の高速化ですが,いくつか案があり,それぞれ得失があります. で,とりあえず 64bit 前提に考えています. 高速化は,主に Float の「埋め込み」によって行おうと考えています. 要するに,Fixnum と Bignum の関係です.Fixnum はヒープ上にメモリをア ロケートしていません.Float はヒープ上にメモリをアロケートしているの で,たくさん数値計算をすると GC が発生します. (1) 単精度にする 一番安易な解決方法です.64bit CPU なら 32 bit まるまる使っても安心. (2) 1bit,精度を犠牲にする 一番現実的かな,と思っています.数値計算にどれくらい影響を与える か,わかりません.この辺の評価ってどうすればいいんでしょうか. (3) 頑張って精度を保証する IEEE754 の規格に則って,exp をやりくりして,1 bit 〜 3 bit 捻出す る方法です.細々とした計算が必要になるため,オーバヘッドは大きいです が,精度が保証できるため難しい検証やらは不要です(今まで通り,で終わ り). 例えば,(2) ってどれくらい「やばい」んでしょうか. -- // SASADA Koichi at atdot dot net -- ML: yarv-dev quickml.atdot.net Info: http://www.atdot.net/~ko1/quickml
-> 1122 2007-11-20 19:08 [ko1 atdot.net ] 考えている案 1123 2007-11-20 19:25 ┣[horinout rish.kyoto-] 1124 2007-11-20 19:33 ┃┣[ko1 atdot.net ] 1127 2007-11-20 19:52 ┃┣[horinout rish.kyoto-] 1129 2007-11-20 20:05 ┃┃┗[ko1 atdot.net ] 1130 2007-11-20 20:21 ┃┃ ┗[horinout rish.kyoto-] 1131 2007-11-20 20:24 ┃┃ ┗[ko1 atdot.net ] 1132 2007-11-20 20:32 ┃┗[2008 shudo.net ] 1133 2007-11-20 20:53 ┃ ┗[horinout rish.kyoto-] 1137 2007-11-20 21:15 ┃ ┗[2008 shudo.net ] 1125 2007-11-20 19:39 ┣[m-72 tf6.so-net.ne.j] 1126 2007-11-20 19:46 ┃┗[ko1 atdot.net ] 1128 2007-11-20 19:58 ┃ ┣[m-72 tf6.so-net.ne.j] 1135 2007-11-20 20:59 ┃ ┗[m-72 tf6.so-net.ne.j] 1145 2007-11-21 19:44 ┃ ┗[ko1 atdot.net ] 1146 2007-11-21 20:34 ┃ ┗[m-72 tf6.so-net.ne.j] 1134 2007-11-20 20:54 ┣[2008 shudo.net ] 1144 2007-11-21 08:39 ┃┗[ko1 atdot.net ] 1140 2007-11-21 03:52 ┣[t_nissie yahoo.co.jp] 富豪的 VALUE 型( Re: 考えている案) 1141 2007-11-21 04:57 ┃┗[ko1 atdot.net ] 1142 2007-11-21 05:29 ┃ ┗[t_nissie yahoo.co.jp] 1143 2007-11-21 06:02 ┃ ┗[ko1 atdot.net ] 1147 2007-11-24 12:56 ┗[m-72 tf6.so-net.ne.j] 1148 2007-11-24 13:10 ┣[ko1 atdot.net ] 1152 2007-11-25 08:51 ┃┗[m-72 tf6.so-net.ne.j] 1149 2007-11-24 13:18 ┣[ko1 atdot.net ] 1150 2007-11-24 13:21 ┗[ko1 atdot.net ] 1151 2007-11-24 13:39 ┗[m-72 tf6.so-net.ne.j]