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

yarv-dev:1140

From: NISHIMATSU Takeshi <t_nissie yahoo.co.jp>
Date: Wed, 21 Nov 2007 03:52:49 +0900 (JST)
Subject: [yarv-dev:1140] 富豪的 VALUE 型( Re: 考えている案)

西松と申します。複素数を多用する数値計算をしています。

--- in [yarv-dev:1122] SASADA Koichi wrote:
>  Float の高速化ですが,いくつか案があり,それぞれ得失があります.
> で,とりあえず 64bit 前提に考えています.
> 
>  高速化は,主に Float の「埋め込み」によって行おうと考えています.
> 要するに,Fixnum と Bignum の関係です.Fixnum はヒープ上にメモリをア
> ロケートしていません.Float はヒープ上にメモリをアロケートしているの
> で,たくさん数値計算をすると GC が発生します.

複素数の高速計算のことも忘れてもらっちゃ困るのです。C99とFortranでは
複素数は2個つづきの実数です。

で、ぼくがつねづね夢想しているのが「富豪的VALUE型」です。たとえば、
5x64=320bitの富豪的VALUE型は[0][1][2][3][4]の形をしていて、[0]には
オブジェクトの種類、すなわち[1]以降に何が入っているのか、または、true,
false, nilくらいの即値が格納されます。[1]以降は倍精度実数だったら[1]
だけにそれが、倍精度複素数だったら[1][2]に、さらには倍精度のハミルトン
の四元数まで表すことができて[1][2][3][4]をすべて使います。それぞれが
64bit整数ってのもありです。これなら各数値演算にCPUの機能をそのまま使え
ます。[0]が俺は文字列だと言っているなら、[1]にはポインタが[2]には
サイズが入ります。CやFortranの整数、実数、複素数の配列も同様に[1]には
ポインタが[2]にはサイズが入ります。[3][4]も使えば3次元配列まで表せ
ます。基本的なオブジェクトはデータ以外の属性を余裕のある[1][2][3][4]
に格納するわけです。

シロウトが夢を語って申し訳ありませんでした。

参考リンク:
富豪的プログラミング http://pitecan.com/articles/Bit/Fugo/fugo.html
ハミルトンの四元数 http://ja.wikipedia.org/wiki/%E5%9B%9B%E5%85%83%E6%95%B0
-- 
love && peace && free_software
西松タケシ



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