[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dennou-ruby:000815] Re: AdvancedDCL



堀之内です。

> 内部でNArray を使うことになっているようですけど,結局 NumArray は
> 不採用になったのですか?
> 
> そのあたりの議論もしくは報告が(少なくともML上では)なかったように
> 思うのですが。

北大の高橋さんのメールもメールもありましたし、その辺きちんとアナ
ウンスしないでいて申し訳なかったと思ってたところでした。

神代さんのテスト結果及びその他の事情(後述)を勘案し、堀之内、川
那辺、塩谷でひと月ほど前に話し合った結論として、NumArray の利用
はやめ、今後は NArray を使っていこうということになりました。神代
さん、テストしてくださり有難うございました。高橋さん、御連絡が遅
くなって本当に申し訳ありませんでした。もしよろしければ NArray を
使う方向に軌道修正していただけたらと思います。同じ多次元配列です
から処理は基本的に同じですので、今までの経験はほぼそのまま活きま
すし、NArray 対応への変更の労力は、ないとは決して言いませんが、
既に例もありますしそれほど大きなものではないと思います。

NumArray をやめる理由ですが、

  * NArray のほうがほとんどの場合に速い
  * 同じことをする異るクラスが並立するのは ruby コミュニティーに
    とっては嬉しくないが、NArray には既にユーザーがちらほらおり、
    NumArray はまだ我々ぐらいであるので、NumArray が NArray に統
    合される方が逆よりスムーズである。機能も NArray のほう
    は順調に発展していっている
  * NArray のほうが完成度が高い (NumArray はバグだらけである)
  * しかし、川那辺君には他にもやることが多いので今後
    NumArray に労力を割くのは危険である(共倒れになる)。
    --> 自前で作るメリットである機動性は期待できない

といったところです。現在我々の NArray への対応は以下のようになり
つつあります。

  * DCLのrubyへの直接のインターフェース rbdcl

    黒井さんが作業してくださったものです。配列とポインター間の変
    更を行う関数の中身を書き換えました。川那辺君が作業してくれま
    したが、あまり時間はかからなかったようです。

  * rbdcl の rubyフレンドリーなラッパー(今回アナウンスのあった 
    AdvancedDCL)

  * NetCDF の ruby インターフェース。

    榊間君(@xxxxxx)に NArray 対応で始めて貰いました。

2-3日前から dennou ruby project のホームページを作り始めましたが、
以上の資源はそこに置き始めています(NetCDFはまだです)。現在のアド
レスは http://www.gfd-dennou.org/arch/davis/ruby/ ですが、変更予
定ですのでまだリンクは貼らないでください。

なお、NumArray にあって NArray にない機能も少ないですがあり、そ
のうち部分配列に関する2つの機能は、将来的には是非 NArray に取り
入れたいと思っています。2つというのはマスキングとステップの指定
できる範囲指定です。前者は NArray 作者の田中さんも欲しいと言って
おり、後者もきっと欲しいでしょうから、誰かがきちんと組み込んでパッ
チにしたら田中さんは取り入れてくれることと思います。

以上、御連絡が遅くなりまして誠に申し訳ありませんでした。


堀之内 武                    horinout@xxxxxx
京都大学宙空電波科学研究センター     611-0011 宇治市五ヶ庄