[前][次][番号順一覧][スレッド一覧][生データ]

yarv-dev:1148

From: SASADA Koichi <ko1 atdot.net>
Date: Sat, 24 Nov 2007 13:10:29 +0900
Subject: [yarv-dev:1148] Re: 考えている案

 ささだです.

miura wrote:
> 単精度の浮動小数点をRVALUEに埋め込むpoor man's versionを作り
> 始めました。
> 今のところp 1.0 + 1.0をすると2.0と表示されます。それ以上難しいことす
> るとうまく動きません。

 おお,すばらしい.

> 作っていって気が付いたのですが、正式な高速化開発に当たって次の
> ような問題があるんじゃないかなと思います。
> 
>  Float関係のテストパターンがいっぱい欲しい
>      開発していて、Floatのテストパターンがいっぱいいるなと思いました。
>   ある値だとうまくいくけど、別の値だとだめになるというのが良くあります。
>   テストパターンのランダム生成も検討した方がいいかもしれないです。
>   poor man's versionを作ったときのテストパターンも積極的に公開したい
>   と思います。
> 
> Floatの標準ベンチマークが欲しい
>      せっかく高速化しても自作のベンチマークだけで効果が出ても悲しい
>   ので標準ベンチマークが欲しいなと思いました。そのベンチマークの候補と
>   して大域環境光レンダラのminilight(http:
> //www.hxa7241.org/minilight/minilight.html)
>   を推したいと思います。

 いいですね.(ライセンス的に可能なら)benchmark/ に入れちゃっても
いいくらい.

>   ただ、多分このプログラムは精度が要求されないと思う(確かめていない
>   ですけど)ので、精度が要求されるプログラムなんかもあるといいのでは
>   ないかなと思いますが、その手の話は全然分からないです。

 誰か持ってません?


> (3)の指数部を削る方式で、fixnumに泣いてもらってfixnumの領域に押し込
> むようにしました。fixnumは30bitを越えるとbignumになってしまいます。
> フォーマットは
>   xxxxxxxxxxxxxxxxxxxxxxxxxxxx11   FIXNUM
>   xxxxxxxxxxxxxxxxxxxxxxxxxxxx01   FIXFLOAT
> となります。FIXFLOATは矛盾に満ちた名前なのですが、個人的に
> しっくり来るので使っています。何かいい名前があったら教えて
> ください。

 ちなみに,対象プロセッサは 32bitですか? 64bit ですか?

 Fixnum に泣いて貰うのは私も考えていました.ビットパターンについて
は,まだもう少し検討する必要があると思います.地味に object_id とか
の考慮とかも必要で,実はめんどくさいです.

> 後は、ほとんどのFLOATはRFLAOT(var)->valueでアクセスしている様ですが、
> これをRFLOAT_VALUE(var)で置き換えます。RFLOAT_VALUE(var)は次のような
> 定義です。
> #define RFLOAT_VALUE(obj)  \
>   ((FIXFLOAT_P(obj)) ? rb_value2float(obj) : (RFLOAT(obj)->value))

 あれ,最近私,1.9 に RFLOAT_VALUE を追加したんですが.

-- 
// 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]